Commands split up into single files and included first methods

This commit is contained in:
s-prechtl 2021-10-22 16:30:47 +02:00
parent 5c2ff27656
commit ef19e6659e
9 changed files with 93 additions and 29 deletions

View file

@ -10,6 +10,8 @@ class ChampionMastery(APICommands.Command.Command, ABC):
keywords = ["cm", "CM", "Championmastery", "championmastery"]
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords: list):
if additionalKeywords is None:
additionalKeywords = []
super().__init__(pref, api, additionalKeywords)
async def execute(self, message: discord.Message):

View file

@ -12,8 +12,8 @@ class Command:
api: riotwatcher.LolWatcher
commandName = ""
def __init__(self, pref, api: riotwatcher.LolWatcher, addkeywords: list):
for i in addkeywords:
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords: list):
for i in additionalKeywords:
self.keywords.append(i)
self.pref = pref
self.api = api
@ -37,9 +37,9 @@ class Command:
return False
def log(self, message: discord.Message):
logMSG = (self.commandName + " request sent in Channel " + str(message.channel.name) + "\n\t- at: " + str(
logMSG = (self.commandName + " request sent:\n\t-in: " + str(message.channel.name) + "\n\t- at: " + str(
datetime.now())[:-7] + "\n\t- by: " + str(message.author) + "\n\t- content: '" + str(
message.content) + "'\n")
print(logMSG)
with open("requests.log", "a") as f:
f.write(logMSG)
f.write(logMSG)

24
APICommands/F2PCommand.py Normal file
View file

@ -0,0 +1,24 @@
from abc import ABC
import discord
import riotwatcher
import APICommands.Command
class Free2Play(APICommands.Command.Command, ABC):
keywords = ["f2p", "rotation", "F2P", "ROTATION"]
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords=None):
if additionalKeywords is None:
additionalKeywords = []
super().__init__(pref, api, additionalKeywords)
async def execute(self, message: discord.Message):
pass
async def info(self, message: discord.Message):
pass
async def usage(self, message: discord.Message):
pass

View file

@ -10,6 +10,8 @@ class HighestMastery(APICommands.Command.Command, ABC):
keywords = ["highestmastery", "highestMastery", "HM", "hm", "Hm", "HighestMastery"]
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords: list):
if additionalKeywords is None:
additionalKeywords = []
super().__init__(pref, api, additionalKeywords)
async def execute(self, message: discord.Message):

View file

@ -1,3 +1,4 @@
import pickle
from abc import ABC
import discord
@ -9,14 +10,32 @@ import APICommands.Command
class Prefix(APICommands.Command.Command, ABC):
keywords = ["prefix"]
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords: list):
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords=None):
if additionalKeywords is None:
additionalKeywords = []
super().__init__(pref, api, additionalKeywords)
self.commandName = "Prefix change"
async def execute(self, message: discord.Message):
pass
if message.content == (self.pref + "prefix"):
await self.info(message)
elif message.content.split(" ").length == 2:
self.log(message)
await self.changePrefix(message)
else:
await self.usage(message)
async def info(self, message: discord.Message):
pass
await message.channel.send(
"Your current prefix is: " + self.pref + ". To change it use " + self.pref + "prefix [new Prefix]")
async def usage(self, message: discord.Message):
pass
await message.channel.send("Wrong usage of prefix command! Use " + self.pref + "prefix [new Prefix (optional)]")
async def changePrefix(self, message: discord.Message):
try:
self.pref = message.content.split(" ")[1]
await message.channel.send("Prefix successfully changed to " + self.pref)
pickle.dump(self.pref, open("prefix.data", "wb"))
except:
await self.usage(message)

View file

@ -10,6 +10,8 @@ class SummonerLevel(APICommands.Command.Command, ABC):
keywords = ["level", "Level", "lvl"]
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords: list):
if additionalKeywords is None:
additionalKeywords = []
super().__init__(pref, api, additionalKeywords)
async def execute(self, message: discord.Message):

View file

@ -0,0 +1,24 @@
from abc import ABC
import discord
import riotwatcher
import APICommands.Command
class SummonerRank(APICommands.Command.Command, ABC):
keywords = ["rank", "Rank", "RANK"]
def __init__(self, pref, api: riotwatcher.LolWatcher, additionalKeywords=None):
if additionalKeywords is None:
additionalKeywords = []
super().__init__(pref, api, additionalKeywords)
async def execute(self, message: discord.Message):
pass
async def info(self, message: discord.Message):
pass
async def usage(self, message: discord.Message):
pass