41 lines
1.4 KiB
Python
41 lines
1.4 KiB
Python
import pickle
|
|
from abc import ABC
|
|
|
|
import discord
|
|
import riotwatcher
|
|
|
|
import APICommands.Command
|
|
|
|
|
|
class Prefix(APICommands.Command.Command, ABC):
|
|
keywords = ["prefix"]
|
|
|
|
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):
|
|
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):
|
|
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):
|
|
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)
|