diff --git a/immortal/immortal.py b/immortal/immortal.py deleted file mode 100644 index c20908c..0000000 --- a/immortal/immortal.py +++ /dev/null @@ -1,243 +0,0 @@ -import discord -import asyncio -import os -from datetime import datetime -from discord.ext import commands - -from .utils.dataIO import dataIO -from .utils import checks - - -class Immortal: - """Creates a goodbye message when people leave""" - - def __init__(self, bot): - self.bot = bot - self.path = "data/Fox-Cogs/immortal" - self.file_path = "data/Fox-Cogs/immortal/immortal.json" - self.the_data = dataIO.load_json(self.file_path) - - def save_data(self): - """Saves the json""" - dataIO.save_json(self.file_path, self.the_data) - - async def adj_roles(self, server, author, member: discord.Member=None, rrole_names=[], arole_names=[]): - # Thank you SML for the addrole code - # https://github.com/smlbiobot/SML-Cogs/tree/master/mm - - rroles = [r for r in server.roles if r.name in rrole_names] - aroles = [r for r in server.roles if r.name in arole_names] - try: - await self.bot.add_roles(member, *aroles) - await asyncio.sleep(0.5) - await self.bot.remove_roles(member, *rroles) - await asyncio.sleep(0.5) - - except discord.Forbidden: - await self.bot.say( - "{} does not have permission to edit {}’s roles.".format( - author.display_name, member.display_name)) - - except discord.HTTPException: - await self.bot.say( - "Failed to adjust roles.") - except: - await self.bot.say("Unknown Exception") - - - - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def iresort(self, ctx, member: discord.Member=None): - """Sends someone on vacation!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Member", "Immortal", "Eternal", "Phantom", "Ghost", "Undead", "Revenant", "Crypt", "Relocate", "Guest"] - arole_names = ["Resort"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Resort" in [r.name for r in member.roles]: - await self.bot.say("You are being sent on Vacation! :tada:" + - "Please relocate to Immortal Resort (#889L92UQ) when you find the time.") - await self.bot.send_message(member, "You are being sent on Vacation! :tada: Please relocate " + - "to Immortal Resort (#889L92UQ) when you find the time.\n" + - "You'll have limited access to the server until you rejoin a main clan") - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def icrypt(self, ctx, member: discord.Member=None): - """Sends someone to Crypt!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Immortal", "Eternal", "Ghost", "Phantom", "Revenant", "Undead", "Relocate", "Guest", "Resort"] - arole_names = ["Member", "Crypt"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Crypt" in [r.name for r in member.roles]: - await self.bot.say("Success") - await self.send_welcome(member) - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def irevenant(self, ctx, member: discord.Member=None): - """Sends someone to Revenant!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Immortal", "Eternal", "Ghost", "Phantom", "Undead", "Crypt", "Relocate", "Guest", "Resort"] - arole_names = ["Member", "Revenant"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Revenant" in [r.name for r in member.roles]: - await self.bot.say("Success") - await self.send_welcome(member) - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def iundead(self, ctx, member: discord.Member=None): - """Sends someone to Undead!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Immortal", "Eternal", "Ghost", "Phantom", "Revenant", "Crypt", "Relocate", "Guest", "Resort"] - arole_names = ["Member", "Undead"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Undead" in [r.name for r in member.roles]: - await self.bot.say("Success") - await self.send_welcome(member) - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def iphantom(self, ctx, member: discord.Member=None): - """Sends someone to Phantom!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Immortal", "Eternal", "Ghost", "Undead", "Revenant", "Crypt", "Relocate", "Guest", "Resort"] - arole_names = ["Member", "Phantom"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Phantom" in [r.name for r in member.roles]: - await self.bot.say("Success") - await self.send_welcome(member) - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def ieternal(self, ctx, member: discord.Member=None): - """Sends someone to Eternal!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Immortal", "Phantom", "Ghost", "Undead", "Revenant", "Crypt", "Relocate", "Guest", "Resort"] - arole_names = ["Member", "Eternal"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Eternal" in [r.name for r in member.roles]: - await self.bot.say("Success") - await self.send_welcome(member) - - @commands.command(pass_context=True, no_pm=True) - @checks.mod_or_permissions(manage_roles=True) - async def iimmortal(self, ctx, member: discord.Member=None): - """Sends someone to Immortal!""" - - if member is None: - await self.bot.send_cmd_help(ctx) - else: - server = ctx.message.server - author = ctx.message.author - role_names = ["Eternal", "Phantom", "Ghost", "Undead", "Revenant", "Crypt", "Relocate", "Guest", "Resort"] - arole_names = ["Member", "Immortal"] - await self.adj_roles(server, author, member, role_names, arole_names) - if "Immortal" in [r.name for r in member.roles]: - await self.bot.say("Success") - await self.send_welcome(member) - - @commands.group(aliases=['setimmortal'], pass_context=True, no_pm=True) - @checks.mod_or_permissions(administrator=True) - async def immortalset(self, ctx): - """Adjust immortal settings""" - - server = ctx.message.server - if server.id not in self.the_data: - self.the_data[server.id] = {} - self.save_data() - - if ctx.invoked_subcommand is None: - await self.bot.send_cmd_help(ctx) - - @immortalset.command(pass_context=True, no_pm=True) - async def welcomechannel(self, ctx): - server = ctx.message.server - if 'WELCOMECHANNEL' not in self.the_data[server.id]: - self.the_data[server.id]['WELCOMECHANNEL'] = '' - - self.the_data[server.id]['WELCOMECHANNEL'] = ctx.message.channel.id - self.save_data() - await self.bot.say("Welcome Channel set to "+ctx.message.channel.name) - - async def send_welcome(self, member): - server = member.server - if server.id in self.the_data: - await self.bot.send_message(server.get_channel(self.the_data[server.id]['WELCOMECHANNEL']), - "You now have access to the server, " + member.mention + "\n" + - "Check " + server.get_channel("257557008662790145").mention + " & " + - server.get_channel("257560603093106688").mention+" for clan rules etc.\n" + - "We recommend turning all message notifications on for " + server.get_channel("257560603093106688").mention + - " if you want to know when tourneys are posted and other important info.\n" + - "You can also type `!help` for a list of bot commands/features.") - -# @immortalset.command(pass_context=True) -# async def channel(self, ctx): -# server = ctx.message.server -# if 'channel' not in self.the_data[server.id]: -# self.the_data[server.id]['channel'] = '' - -# self.the_data[server.id]['channel'] = ctx.message.channel.id -# self.save_data() - -# async def _when_leave(self, member): -# server = member.server -# if server.id not in self.the_data: -# return - -# await self.bot.say("YOU LEFT ME "+member.mention) -# self.the_data[server.id] - - -def check_folders(): - if not os.path.exists("data/Fox-Cogs"): - print("Creating data/Fox-Cogs folder...") - os.makedirs("data/Fox-Cogs") - - if not os.path.exists("data/Fox-Cogs/immortal"): - print("Creating data/Fox-Cogs/immortal folder...") - os.makedirs("data/Fox-Cogs/immortal") - - -def check_files(): - if not dataIO.is_valid_json("data/Fox-Cogs/immortal/immortal.json"): - dataIO.save_json("data/Fox-Cogs/immortal/immortal.json", {}) - - -def setup(bot): - check_folders() - check_files() - q = Immortal(bot) - bot.add_cog(q) diff --git a/immortal/info.json b/immortal/info.json deleted file mode 100644 index 8668a65..0000000 --- a/immortal/info.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "AUTHOR" : "Bobloy", - "INSTALL_MSG" : "Thank you for installing Immortal Family Cog", - "NAME" : "Immortal", - "SHORT" : "Cog for a specific server, will not work on other servers", - "DESCRIPTION" : "Cog specifically for the Immortal Family discord server. I do not recommend installing it", - "TAGS" : ["fox", "bobloy", "utilities", "tools", "utility", "tool"], - "HIDDEN" : false -} \ No newline at end of file