Пример #1
0
 async def faction_invite(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     if not ctx.invoked_subcommand or ctx.invoked_subcommand.name == "invite":
         invite = sql.guild_get_by_id(ctx.guild.id).faction_invite
         if invite:
             await ctx.send(invite)
         else:
             await ctx.send(ctx.s("faction.no_invite"))
Пример #2
0
 async def faction_alias(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     if not ctx.invoked_subcommand or ctx.invoked_subcommand.name == "alias":
         alias = sql.guild_get_by_id(ctx.guild.id).faction_alias
         if alias:
             await ctx.send(alias)
         else:
             await ctx.send(ctx.s("faction.no_alias"))
Пример #3
0
 async def faction_emblem(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     if not ctx.invoked_subcommand or ctx.invoked_subcommand.name == "emblem":
         emblem = sql.guild_get_by_id(ctx.guild.id).faction_emblem
         if emblem:
             await ctx.send(emblem)
         else:
             await ctx.send(ctx.s("faction.no_emblem"))
Пример #4
0
 async def faction_desc(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     if not ctx.invoked_subcommand or ctx.invoked_subcommand.name == "desc":
         desc = sql.guild_get_by_id(ctx.guild.id).faction_desc
         if desc:
             await ctx.send(desc)
         else:
             await ctx.send(ctx.s("faction.no_description"))
Пример #5
0
 async def faction_color(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     if not ctx.invoked_subcommand or ctx.invoked_subcommand.name == "color":
         color = sql.guild_get_by_id(ctx.guild.id).faction_color
         img = Image.new('RGB', (32, 32), color)
         with io.BytesIO() as bio:
             img.save(bio, format="PNG")
             bio.seek(0)
             f = discord.File(bio, "color.png")
             await ctx.send('0x{0:06X}'.format(color), file=f)
Пример #6
0
    async def assemble(self, ctx, name, alias=""):
        if sql.guild_is_faction(ctx.guild.id):
            await ctx.send(ctx.s("faction.already_faction"))
            return
        name = re.sub("[^\S ]+", "", name)
        if not (6 <= len(name) <= 32):
            raise BadArgumentErrorWithMessage(ctx.s("faction.err.name_length"))
        if sql.guild_get_by_faction_name(name):
            await ctx.send(ctx.s("faction.name_already_exists"))
            return
        alias = re.sub("[^A-Za-z]+", "", alias).lower()
        if alias and not (1 <= len(alias) <= 5):
            raise BadArgumentErrorWithMessage(ctx.s("faction.err.alias_length"))
        if sql.guild_get_by_faction_alias(alias):
            await ctx.send(ctx.s("faction.alias_already_exists"))
            return

        sql.guild_faction_set(ctx.guild.id, name=name, alias=alias)
        await ctx.send(ctx.s("faction.assembled").format(name))
Пример #7
0
 async def disband(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     sql.guild_faction_disband(ctx.guild.id)
     await ctx.send(ctx.s("faction.disbanded"))
Пример #8
0
 async def faction_name(self, ctx):
     if not sql.guild_is_faction(ctx.guild.id):
         await ctx.send(ctx.s("faction.must_be_a_faction"))
         return
     if not ctx.invoked_subcommand or ctx.invoked_subcommand.name == "name":
         await ctx.send(sql.guild_get_by_id(ctx.guild.id).faction_name)