Ejemplo n.º 1
0
    async def conquer_grey(self, ctx):
        conquer = self.get_conquer_data(ctx)
        conquer['bb'] = False if conquer['bb'] else True
        self.config.save()

        state_str = "aktiv" if not conquer['bb'] else "inaktiv"
        msg = f"Der Filter für Barbarendörfer ist nun {state_str}"
        await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 2
0
    async def conquer_clear(self, ctx):
        conquer = self.get_conquer_data(ctx)
        conquer['tribe'].clear()
        conquer['player'].clear()
        self.config.save()

        msg = "Der Filter wurde zurückgesetzt"
        await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 3
0
    async def set_game(self, ctx):
        cur = self.config.get('game', ctx.guild.id)

        if cur == ctx.channel.id:
            msg = "Der aktuelle Channel ist bereits eingespeichert"
            await ctx.send(embed=error_embed(msg))
        else:
            self.config.update('game', ctx.channel.id, ctx.guild.id)
            msg = f"{ctx.channel.mention} ist nun der aktive Game-Channel"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 4
0
    async def game_(self, ctx):
        for game, caches in self.games.items():
            cog = self.bot.get_cog(game)

            for cache_name in caches:
                cache = getattr(cog, cache_name)
                cache.pop(ctx.guild.id, None)

        msg = "Alle Spiele wurden zurückgesetzt"
        await ctx.send(embed=utils.complete_embed(msg))
Ejemplo n.º 5
0
    async def switch_list(self, ctx):
        listed = []

        for key, value in self.converter_title.items():
            state = self.bot.config.get_switch(key, ctx.guild.id)
            represent = "aktiv" if state else "inaktiv"
            listed.append(f"**{value} ({key}):** `{represent}`")

        embed = complete_embed("\n".join(listed))
        await ctx.send(embed=embed)
Ejemplo n.º 6
0
    async def set_world(self, ctx, world: WorldConverter):
        old_world = self.config.get_related_world(ctx.guild)

        if world == old_world:
            msg = f"Der Server ist bereits mit {world} verbunden"
            await ctx.send(embed=error_embed(msg))
        else:
            self.config.update('world', world.server, ctx.guild.id)
            msg = f"Der Server ist nun mit {world} verbunden"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 7
0
    async def set_prefix(self, ctx, prefix):
        current_prefix = self.config.get_prefix(ctx.guild.id)

        if current_prefix == prefix:
            msg = "`{}` ist bereits der aktuelle Prefix dieses Servers"
            await ctx.send(embed=error_embed(msg.format(prefix)))

        else:
            self.config.update('prefix', prefix, ctx.guild.id)
            msg = f"Der Prefix `{prefix}` ist nun aktiv"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 8
0
    async def switch(self, ctx, key):
        key = key.lower()
        name = self.converter_title.get(key)

        if name is None:
            raise MissingRequiredKey(self.converter_title)

        new_value = self.bot.config.update_switch(key, ctx.guild.id)
        state = "aktiv" if new_value else "inaktiv"
        msg = f"Die Konvertierung der `{name}` ist nun **{state}**"
        await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 9
0
    async def conquer_remove(self, ctx, *, dsobj: DSConverter):
        conquer = self.get_conquer_data(ctx)

        if dsobj.id not in conquer[dsobj.type]:
            msg = "Der Stamm ist nicht eingespeichert"
            await ctx.send(embed=error_embed(msg))

        else:
            conquer[dsobj.type].remove(dsobj.id)
            self.config.save()

            msg = f"`{dsobj}` wurde entfernt"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 10
0
    async def conquer_add(self, ctx, *, dsobj: DSConverter):
        conquer = self.get_conquer_data(ctx)

        if dsobj.id in conquer[dsobj.type]:
            msg = "Der Stamm ist bereits eingespeichert"
            await ctx.send(embed=error_embed(msg))

        else:
            conquer[dsobj.type].append(dsobj.id)
            self.config.save()

            msg = f"`{dsobj}` wurde hinzugefügt"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 11
0
    async def remove_conquer(self, ctx):
        channels = self.config.get('conquer', ctx.guild.id)

        if str(ctx.channel.id) in channels:
            channels.pop(str(ctx.channel.id))
            self.config.save()

            msg = f"{ctx.channel.mention} ist kein Eroberungschannel mehr"
            await ctx.send(embed=complete_embed(msg))

        else:
            msg = "Dieser Channel ist nicht eingespeichert"
            await ctx.send(embed=error_embed(msg))
Ejemplo n.º 12
0
    async def remove_(self, ctx, reminder_id: int):
        query = 'DELETE FROM reminder WHERE author_id = $1 AND id = $2'
        async with self.bot.ress.acquire() as conn:
            response = await conn.execute(query, ctx.author.id, reminder_id)

        if response == "DELETE 0":
            msg = "Du hast keinen Reminder mit der angegebenen ID"
            return await ctx.send(embed=utils.error_embed(msg))

        if self.current_reminder and self.current_reminder.id == reminder_id:
            self.restart()

        await ctx.send(
            embed=utils.complete_embed("Der Reminder wurde gelöscht"))
Ejemplo n.º 13
0
    async def remove(self, ctx, entry):
        entry = entry.lower()
        config_entry = self.config_title.get(entry)

        if config_entry is None:
            raise MissingRequiredKey(self.config_title)

        done = self.config.remove(entry.lower(), ctx.guild.id)
        if not done:
            msg = f"Der Server hat keinen zugewiesenen **{config_entry}**"
            await ctx.send(embed=error_embed(msg))

        else:
            msg = f"**{config_entry}** erfolgreich gelöscht"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 14
0
    async def set_conquer(self, ctx):
        channels = self.config.get('conquer', ctx.guild.id, default={})

        if str(ctx.channel.id) in channels:
            msg = "Der aktuelle Channel ist bereits eingespeichert"
            await ctx.send(embed=error_embed(msg))

        elif len(channels) >= 2:
            msg = "Momentan sind nur 2 Eroberungschannel möglich"
            await ctx.send(embed=error_embed(msg))

        else:
            channels[str(ctx.channel.id)] = {'bb': False, 'tribe': [], 'player': []}
            self.config.update('conquer', channels, ctx.guild.id)
            msg = f"{ctx.channel.mention} ist nun ein Eroberungschannel"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 15
0
    async def clear_(self, ctx):
        query = 'DELETE FROM reminder WHERE author_id = $1 RETURNING id'
        async with self.bot.ress.acquire() as conn:
            deleted_rows = await conn.fetch(query, ctx.author.id)

        if not deleted_rows:
            msg = "Du hast keine aktiven Reminder"
            return await ctx.send(embed=utils.error_embed(msg))

        if self.current_reminder:
            old_ids = [rec['id'] for rec in deleted_rows]
            if self.current_reminder.id in old_ids:
                self.restart()

        msg = f"Alle deine Reminder wurden gelöscht ({len(deleted_rows)})"
        await ctx.send(embed=utils.complete_embed(msg))
Ejemplo n.º 16
0
    async def remove_channel_world(self, ctx):
        config = self.config.get('channel', ctx.guild.id)
        if config:
            world = config.get(str(ctx.channel.id))
            state = bool(world)
        else:
            state = False

        if state is False:
            msg = "Dieser Channel hat keine eigene Welt"
            await ctx.send(embed=error_embed(msg))

        else:
            config.pop(str(ctx.channel.id))
            self.config.save()
            msg = "Die Channel-Welt wurde gelöscht"
            await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 17
0
    async def set_channelworld(self, ctx, world: WorldConverter):
        config = self.config.get('channel', ctx.guild.id)

        if config is None:
            config = {str(ctx.channel.id): world.server}
            self.config.update('channel', config, ctx.guild.id)

        else:
            old_world = config.get(str(ctx.channel.id))

            if old_world == world:
                msg = f"Dieser Channel ist bereits mit {world} verbunden"
                await ctx.send(embed=error_embed(msg))
                return

            else:
                config[str(ctx.channel.id)] = world.server
                self.config.save()

        msg = f"Der Channel ist nun mit {world} verbunden"
        await ctx.send(embed=complete_embed(msg))
Ejemplo n.º 18
0
 async def world_(self, ctx):
     world = self.bot.config.get_related_world(ctx.channel)
     relation = "Channel" if world == ctx.server else "Server"
     embed = utils.complete_embed(f"{ctx.world} [{relation}]")
     await ctx.send(embed=embed)
Ejemplo n.º 19
0
 async def config_(self, ctx):
     self.bot.config.remove_config(ctx.guild.id)
     msg = "Die Servereinstellungen wurden zurückgesetzt"
     await ctx.send(embed=utils.complete_embed(msg))
Ejemplo n.º 20
0
 async def conquer_(self, ctx):
     self.bot.config.update('conquer', {}, ctx.guild.id)
     msg = "Die Conquereinstellungen wurden zurückgesetzt"
     await ctx.send(embed=utils.complete_embed(msg))