async def success(self, ctx):
        """View your success list"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID

        ge.socket.send_string(gg.std_send_command("success", ID, ge.name_pl, param))
        desc = GF.msg_recv()
        if desc[0] == "OK":
            lang = desc[1]
            msg = discord.Embed(title = lang_P.forge_msg(lang, "success", None, False, 0), color= 6824352, description = "", timestamp=dt.datetime.now())
            descS = desc[2]
            i = 0
            while i < len(descS):
                # print("Success >> {0} a obtenu le succes {1}".format(ctx.author.name, descS[i]))
                titre = descS[i]
                desc = descS[i+1]
                if i % 40 == 0 and i != 0:
                    msg.set_author(name=ctx.author.name, icon_url=ctx.author.avatar_url)
                    await ctx.channel.send(embed = msg)
                    msg = discord.Embed(title = lang_P.forge_msg(lang, "success", None, False, 0), color= 6824352, description = "", timestamp=dt.datetime.now())
                msg.add_field(name=titre, value=desc, inline=False)
                i += 2
            # msg.set_thumbnail(url=ctx.author.avatar_url)
            msg.set_author(name=ctx.author.name, icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed = msg)
        elif desc[0] == "Error":
            await ctx.channel.send(desc[2])
        else:
            await ctx.channel.send(desc[1])
示例#2
0
 async def admin(self,
                 ctx,
                 fct=None,
                 ID=None,
                 arg2=None,
                 arg3=None,
                 arg4=None):
     if ID == None:
         ID = ctx.author.id
     else:
         try:
             ID = int(ID)
         except:
             ID = ge.nom_ID(ID)
     param = dict()
     param["ID"] = ID
     param["fct"] = fct
     param["arg2"] = arg2
     param["arg3"] = arg3
     param["arg4"] = arg4
     if ge.permission(ctx, ge.admin):
         ge.socket.send_string(
             gg.std_send_command("admin", ID, ge.name_pl, param))
         msg = GF.msg_recv()
         await ctx.channel.send(msg[2])
     else:
         await ctx.channel.send(
             "[Admin Command] Tu n'est pas autorisé à utiliser cette commande!"
         )
示例#3
0
    async def give(self, ctx, nom, item, nb=None):
        """**[name] [item] [number]** | Give items to your friends!"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        # param["IDGuild"] = ctx.guild.id
        param["nom"] = ctx.author.name
        param["ID_recu"] = ge.nom_ID(nom)
        param["Nom_recu"] = ctx.guild.get_member(param["ID_recu"]).name
        param["item"] = item
        param["nb"] = nb

        ge.socket.send_string(
            gg.std_send_command("give", ID, ge.name_pl, param))
        desc = GF.msg_recv()
        lang = desc[1]
        if desc[0] == "OK":
            msg = discord.Embed(title=lang_P.forge_msg(lang, "stats", None,
                                                       False, 3),
                                color=13752280,
                                description=desc[2])
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=msg)
        else:
            await ctx.channel.send(desc[2])
示例#4
0
    async def forge(self, ctx, item=None, nb=1):
        """**{item} {number}** | Allows you to design specific items"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        # param["IDGuild"] = ctx.guild.id
        param["item"] = item
        param["nb"] = nb

        ge.socket.send_string(
            gg.std_send_command("forge", ID, ge.name_pl, param))
        desc = GF.msg_recv()
        lang = desc[1]
        if desc[0] == "OK":
            if item == None:
                msg = discord.Embed(title=lang_P.forge_msg(lang, "recette"),
                                    color=15778560,
                                    description=desc[2])
                await ctx.channel.send(embed=msg)
            else:
                msg = discord.Embed(title=lang_P.forge_msg(
                    lang, "stats", None, False, 4),
                                    color=13752280,
                                    description=desc[2])
                msg.set_author(name=ctx.author.name,
                               icon_url=ctx.author.avatar_url)
                await ctx.channel.send(embed=msg)
        else:
            await ctx.channel.send(desc[2])
示例#5
0
    async def bal(self, ctx, nom=None):
        """**{name}** | Are you rich or poor?"""
        ID = ctx.author.id
        param = dict()
        if nom is None:
            nom = ctx.author.name
            param["ID"] = ID
        else:
            IDname = ge.nom_ID(nom)
            param["ID"] = IDname
            nom = ctx.guild.get_member(IDname)
            nom = nom.name
        ge.socket.send_string(gg.std_send_command("bal", ID, ge.name_pl,
                                                  param))
        desc = GF.msg_recv()
        if desc[0] == "OK":
            lang = desc[1]
            title = lang_P.forge_msg(lang, "bal", [nom], False)
            msg = discord.Embed(title=title,
                                color=13752280,
                                description="",
                                timestamp=dt.datetime.now())
            msg.add_field(name="**_Balance_**", value=desc[2], inline=False)

            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=msg)
            # Message de réussite dans la console
            print("Gems >> Balance de {} affichée".format(nom))
            return
        else:
            await ctx.channel.send(desc[2])
def ZMQ():
    context = zmq.Context(1)
    nb_saison = -1

    #  Socket to talk to server
    print("Connecting to Get Gems server…")
    socket = context.socket(zmq.REQ)
    socket.connect(SERVER_ENDPOINT)
    # TIMEOUT
    poll = zmq.Poller()
    poll.register(socket, zmq.POLLIN)

    socket.send_string(gg.std_send_command("GGconnect", "__client", name_pl))
    time.sleep(1)
    socks = dict(poll.poll(REQUEST_TIMEOUT))
    if socks.get(socket) == zmq.POLLIN:
        msg = socket.recv()
        msg_DEC = msg.decode().replace(']', '').replace('[', '').split(",")
        print(msg_DEC)
        if msg_DEC[0] == '1':
            print(
                "Connected to Get Gems server and we are in season {}".format(
                    msg_DEC[1]))
            nb_saison = msg_DEC[1]
            date_saison = msg_DEC[2]
    else:
        print("No reply from the server")
        # Socket is confused. Close and remove it.
        socket.setsockopt(zmq.LINGER, 0)
        socket.close()
        poll.unregister(socket)
        nb_saison = -1
        date_saison = "01-01-3000"
        return False, nb_saison, date_saison
    return True, nb_saison, date_saison
示例#7
0
    async def baltop(self, ctx, n=None, m=None):
        """**{filter} {number}** | Player rankings"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        try:
            if n == None:
                n = 10
            else:
                n = int(n)
            filtre = "gems"
        except:
            if m == None:
                filtre = n
                n = 10
            else:
                filtre = n
                n = int(m)
        filtre = filtre.lower()
        param["nb"] = n
        param["filtre"] = filtre
        ge.socket.send_string(
            gg.std_send_command("baltop", ID, ge.name_pl, param))
        desc = GF.msg_recv()

        if desc[0] == "OK":
            lang = desc[1]
            if filtre == "gems" or filtre == "gem" or filtre == "spinelles" or filtre == "spinelle":
                Titre = lang_P.forge_msg(lang, "baltop", None, False, 0)
                if filtre == "spinelles" or filtre == "spinelle":
                    Titre = lang_P.forge_msg(lang, "baltop",
                                             [GF.get_idmoji("spinelle")],
                                             False, 1)

                msg = discord.Embed(title=Titre,
                                    color=13752280,
                                    description=desc[2])
                # Message de réussite dans la console
                print(
                    "Gems >> {} a afficher le classement des {} premiers joueurs | Filtre: {}"
                    .format(ctx.author.name, n, filtre))

            elif filtre == "guild" or filtre == "guilde":
                Titre = lang_P.forge_msg(lang, "baltop", None, False, 2)
                msg = discord.Embed(title=Titre,
                                    color=13752280,
                                    description=desc[2])
                # Message de réussite dans la console
                print(
                    "Gems >> {} a afficher le classement des {} premières guildes"
                    .format(ctx.author.name, n))

            else:
                msg = discord.Embed(title="Classement",
                                    color=13752280,
                                    description="Erreur! Commande incorrect")
            await ctx.channel.send(embed=msg)
        else:
            await ctx.channel.send(desc[2])
示例#8
0
 async def begin(self, ctx):
     """To create your player account and get your starter kit!"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     param["name"] = ctx.author.name
     ge.socket.send_string(
         gg.std_send_command("begin", ID, ge.name_pl, param))
     msg = GF.msg_recv()
     await ctx.channel.send(msg[2])
示例#9
0
async def on_guild_join(guild):
    if guild.system_channel != None:
        systemchannel = guild.system_channel
    else:
        systemchannel = 0
    param = dict()
    param["IDGuild"] = guild.id
    param["name"] = guild.name
    ge.socket.send_string(gg.std_send_command("NewServer", guild.id, ge.name_pl, param))
    GF.msg_recv()
    await systemchannel.send('Bonjour **{0}**!'.format(guild.name))
示例#10
0
    async def lang(self, ctx, langue=None):
        """**{language}** | Allows you to change the language for a player."""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        param["langue"] = langue

        ge.socket.send_string(
            gg.std_send_command("lang", ID, ge.name_pl, param))
        desc = GF.msg_recv()

        await ctx.channel.send(desc[1])
示例#11
0
 async def connect(self, ctx, PlayerID):
     """**[PlayerID]** | WIP | Connecting a player account from another platform"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     param["PlayerID"] = PlayerID
     ge.socket.send_string(
         gg.std_send_command("connect", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     # if desc[0] == "OK":
     #     # A faire
     await ctx.channel.send(desc[2])
示例#12
0
 async def godparent(self, ctx, nom):
     """**[name]** | Allows you to add a player as a godparent."""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     param["GPID"] = ge.nom_ID(nom)
     ge.socket.send_string(
         gg.std_send_command("godparent", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if ID == ge.nom_ID(nom):
         await ctx.channel.send(lang_P.forge_msg(lang, "godparent"))
     else:
         await ctx.channel.send(desc[2])
示例#13
0
async def request_date_end_season():
    ge.socket.send_string(gg.std_send_command('req_date', '__client', 'discord'))
    socks = dict(ge.poll.poll(ge.REQUEST_TIMEOUT))
    if socks.get(ge.socket) == ge.zmq.POLLIN:
        msg = ge.socket.recv()
        msg_DEC = msg.decode()
        utils.nb_saisons = utils.nb_saisons + 1
        utils.date_saison = msg_DEC
        D = msg_DEC.split("-")
        scheduler = AsyncIOScheduler()
        scheduler.reschedule_job('REQUEST_SEASON', trigger='date', run_date=date(int(D[2]), int(D[1]), int(D[0])))
        scheduler.start()
        scheduler.print_jobs()
        activity = discord.Activity(type=discord.ActivityType.playing, name="{0}help | Season {1}".format(PREFIX, utils.nb_saisons))
        await client.change_presence(status=discord.Status.online, activity=activity)
    async def hothouse(self, ctx, item=None):
        """**{seed/pumpkin}** | Let's plant mates!"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        param["item"] = item
        ge.socket.send_string(
            gg.std_send_command("hothouse", ID, ge.name_pl, param))
        msg = GF.msg_recv()

        if msg[0] == "OK":
            lang = msg[1]
            nbplanting = msg[2]
            desc = lang_P.forge_msg(lang, "hothouse", [GF.get_idmoji("seed")],
                                    False, 0)
            titre = lang_P.forge_msg(lang, "hothouse", None, False, 1)
            MsgEmbed = discord.Embed(title=titre,
                                     color=6466585,
                                     description=desc)
            k = len(msg)
            i = 3
            while i < k:
                j = (i - 3) / 2
                if j % 10 == 0 and j != nbplanting and j != 0:
                    if j // 10 == 1:
                        await ctx.channel.send(embed=MsgEmbed)
                    else:
                        await ctx.channel.send(embed=MsgEmbed, delete_after=90)
                    MsgEmbed = discord.Embed(
                        title=lang_P.forge_msg(lang, "hothouse",
                                               [int((j // 10) + 1)], False, 2),
                        color=6466585,
                        description="Voici tes plantation.")
                    MsgEmbed.add_field(name=lang_P.forge_msg(
                        lang, "hothouse", [msg[i]], False, 3),
                                       value=msg[i + 1],
                                       inline=False)
                else:
                    MsgEmbed.add_field(name=lang_P.forge_msg(
                        lang, "hothouse", [msg[i]], False, 3),
                                       value=msg[i + 1],
                                       inline=False)
                i += 2
            await ctx.channel.send(embed=MsgEmbed)
        else:
            await ctx.channel.send(msg[1])
    async def ferment(self, ctx, item=None):
        """**{grapes/wheat}** | Fermentation winery. Unlimited alcohol!"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        param["item"] = item
        ge.socket.send_string(
            gg.std_send_command("ferment", ID, ge.name_pl, param))
        msg = GF.msg_recv()

        if msg[0] == "OK":
            lang = msg[1]
            nbplanting = msg[2]
            desc = lang_P.forge_msg(lang, "ferment", None, False, 0)
            titre = lang_P.forge_msg(lang, "ferment", None, False, 1)
            MsgEmbed = discord.Embed(title=titre,
                                     color=9633863,
                                     description=desc)
            k = len(msg)
            i = 3
            while i < k:
                j = (i - 3) / 2
                if j % 10 == 0 and j != nbplanting and j != 0:
                    if j // 10 == 1:
                        await ctx.channel.send(embed=MsgEmbed)
                    else:
                        await ctx.channel.send(embed=MsgEmbed, delete_after=90)
                    MsgEmbed = discord.Embed(title=lang_P.forge_msg(
                        lang, "ferment", [int((j // 10) + 1)], False, 2),
                                             color=9633863,
                                             description="Voici vos barrils.")
                    MsgEmbed.add_field(name=lang_P.forge_msg(
                        lang, "ferment", [msg[i]], False, 3),
                                       value=msg[i + 1],
                                       inline=False)
                else:
                    MsgEmbed.add_field(name=lang_P.forge_msg(
                        lang, "ferment", [msg[i]], False, 3),
                                       value=msg[i + 1],
                                       inline=False)
                i += 2
            await ctx.channel.send(embed=MsgEmbed)
        else:
            await ctx.channel.send(msg[1])
 async def crime(self, ctx):
     """Commit a crime and earn :gem:`gems` Beware of DiscordCop!"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     ge.socket.send_string(
         gg.std_send_command("crime", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if desc[0] == "OK":
         msg = discord.Embed(title=lang_P.forge_msg(lang, "titres", None,
                                                    False, 2),
                             color=13752280,
                             description=desc[2])
         msg.set_author(name=ctx.author.name,
                        icon_url=ctx.author.avatar_url)
         await ctx.channel.send(embed=msg)
     else:
         await ctx.channel.send(desc[2])
 async def fish(self, ctx):
     """Let us sin mates!"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     ge.socket.send_string(
         gg.std_send_command("fish", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if desc[0] == "OK":
         msg = discord.Embed(title=lang_P.forge_msg(lang, "stats", None,
                                                    False, 7),
                             color=13752280,
                             description=desc[2])
         msg.set_author(name=ctx.author.name,
                        icon_url=ctx.author.avatar_url)
         await ctx.channel.send(embed=msg)
     else:
         await ctx.channel.send(desc[2])
 async def slots(self, ctx, imise=None):
     """**{bet}** | Slot machine, minimum bet is 10 :gem:`gems`"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     param["imise"] = imise
     ge.socket.send_string(
         gg.std_send_command("slots", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if desc[0] == "OK":
         msg = discord.Embed(title=lang_P.forge_msg(lang, "stats", None,
                                                    False, 9),
                             color=13752280,
                             description=desc[2])
         msg.set_author(name=ctx.author.name,
                        icon_url=ctx.author.avatar_url)
         await ctx.channel.send(embed=msg)
     else:
         await ctx.channel.send(desc[2])
 async def gamble(self, ctx, valeur):
     """**[bet]** | Are you a gambler's man?"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     param["valeur"] = valeur
     ge.socket.send_string(
         gg.std_send_command("gamble", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if desc[0] == "OK":
         msg = discord.Embed(title=lang_P.forge_msg(lang, "titres", None,
                                                    False, 3),
                             color=13752280,
                             description=desc[2])
         msg.set_author(name=ctx.author.name,
                        icon_url=ctx.author.avatar_url)
         await ctx.channel.send(embed=msg)
     else:
         await ctx.channel.send(desc[2])
 async def stealing(self, ctx, name=None):
     """**{name}** | Steal :gem:`gems` from other players!"""
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     param["name"] = name
     ge.socket.send_string(
         gg.std_send_command("stealing", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if desc[0] == "OK":
         msg = discord.Embed(title=lang_P.forge_msg(lang, "titres", None,
                                                    False, 1),
                             color=13752280,
                             description=desc[2])
         msg.set_author(name=ctx.author.name,
                        icon_url=ctx.author.avatar_url)
         await ctx.channel.send(embed=msg)
     else:
         await ctx.channel.send(desc[2])
    async def open(self, ctx, name=None):
        """**[name]** | Loot Box Opening"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        param["name"] = name
        ge.socket.send_string(
            gg.std_send_command("open", ID, ge.name_pl, param))
        msg = GF.msg_recv()

        if msg[0] == "OK":
            titre = msg[2]
            desc = msg[1]
            MsgEmbed = discord.Embed(title="Loot Box | {}".format(titre),
                                     color=13752280,
                                     description=desc)
            MsgEmbed.set_author(name=ctx.author.name,
                                icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=MsgEmbed)
        else:
            await ctx.channel.send(msg[1])
 async def daily(self, ctx):
     """Get your daily reward!"""
     # =======================================================================
     # Initialisation des variables générales de la fonction
     # =======================================================================
     ID = ctx.author.id
     param = dict()
     param["ID"] = ID
     ge.socket.send_string(
         gg.std_send_command("daily", ID, ge.name_pl, param))
     desc = GF.msg_recv()
     lang = desc[1]
     if desc[0] == "OK":
         msg = discord.Embed(title=lang_P.forge_msg(lang, "titres", None,
                                                    False, 0),
                             color=13752280,
                             description=desc[2])
         msg.set_author(name=ctx.author.name,
                        icon_url=ctx.author.avatar_url)
         await ctx.channel.send(embed=msg)
     else:
         await ctx.channel.send(desc[2])
示例#23
0
    async def sell(self, ctx, item, nb=1):
        """**[item] {number}** | Allows you to sell your items!"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        # param["IDGuild"] = ctx.guild.id
        param["nb"] = nb
        param["item"] = item

        ge.socket.send_string(
            gg.std_send_command("sell", ID, ge.name_pl, param))
        desc = GF.msg_recv()
        lang = desc[1]
        if desc[0] == "OK":
            msg = discord.Embed(title=lang_P.forge_msg(lang, "stats", None,
                                                       False, 2),
                                color=13752280,
                                description=desc[2])
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=msg)
        else:
            await ctx.channel.send(desc[2])
示例#24
0
async def checklevel(message):
    ID = message.author.id
    nom = message.author.name
    ge.socket.send_string(gg.std_send_command("level", ID, ge.name_pl))
    desc = GF.msg_recv()
    if desc[0] == "Level UP":
        print("Level UP >> {0}".format(nom))
        title = "Level UP | Get Gems"
        lvl_desc = ":tada: {0} {1}".format(nom, desc[1])
        msg = discord.Embed(title = title, color= 6466585, description = lvl_desc, timestamp=dt.datetime.now())
        msg.set_thumbnail(url=message.author.avatar_url)
        msg.set_footer(text=message.author.name)
        await message.channel.send(embed = msg)
    if len(desc) > 2:
        if desc[0] != "Error":
            title = "Success"
            descS = ""
            for i in range(1, len(desc[2])):
                descS += "{0}\n".format(desc[2][i])
            msg = discord.Embed(title = title, color= 6824352, description = descS, timestamp=dt.datetime.now())
            msg.set_thumbnail(url=message.author.avatar_url)
            msg.set_footer(text=message.author.name)
            await message.channel.send(embed = msg)
    return False
示例#25
0
    async def market(self, ctx, fct=None):
        """**{stand}** | Allows you to see all the items you can buy or sell!"""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        # param["IDGuild"] = ctx.guild.id
        if fct is not None:
            fct = fct.lower()
        param["fct"] = fct

        ge.socket.send_string(
            gg.std_send_command("market", ID, ge.name_pl, param))
        desc = GF.msg_recv()

        if desc[0] == "OK":
            lang = desc[1]
            if fct != None:
                msg = discord.Embed(title=lang_P.forge_msg(
                    lang, "market", [fct], False, 1),
                                    color=2461129,
                                    description=desc[2],
                                    timestamp=dt.datetime.now())
            else:
                msg = discord.Embed(title=lang_P.forge_msg(
                    lang, "market", None, False, 0),
                                    color=2461129,
                                    description=desc[2],
                                    timestamp=dt.datetime.now())
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            if fct == "mobile":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 0),
                              value=desc[3],
                              inline=False)
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 1),
                              value=desc[4],
                              inline=False)
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 3),
                              value=desc[5],
                              inline=False)
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 4),
                              value=desc[6],
                              inline=False)
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 5),
                              value=desc[7],
                              inline=False)
                if desc[7] != "None":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 2),
                                  value=desc[8],
                                  inline=False)
                if desc[8] != "None":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 6),
                                  value=desc[9],
                                  inline=False)
                if desc[9] != "None":
                    msg.add_field(name="Spinelles <:spinelle:{}>".format(
                        GF.get_idmoji("spinelle")),
                                  value=desc[10],
                                  inline=False)

                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 7),
                              value=desc[11],
                              inline=False)
                await ctx.channel.send(embed=msg)

            else:
                if fct == None or fct == "outil" or fct == "outils":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 0),
                                  value=desc[4],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 2),
                                  value=desc[5],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 4),
                                  value=desc[6],
                                  inline=True)

                if fct == None or fct == "outils" or fct == "outil" or fct == "item" or fct == "items" or fct == "minerai" or fct == "minerais" or fct == "poissons" or fct == "fish" or fct == "plantes" or fct == "plants" or fct == "event" or fct == "événements":
                    if desc[6] != "None":
                        msg.add_field(name=lang_P.forge_msg(
                            lang, "categorie", None, False, 1),
                                      value=desc[7],
                                      inline=True)
                        msg.add_field(name=lang_P.forge_msg(
                            lang, "market", None, False, 2),
                                      value=desc[8],
                                      inline=True)
                        msg.add_field(name=lang_P.forge_msg(
                            lang, "market", None, False, 4),
                                      value=desc[9],
                                      inline=True)

                if fct == None or fct == "minerai" or fct == "minerais":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 3),
                                  value=desc[10],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 2),
                                  value=desc[11],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 4),
                                  value=desc[12],
                                  inline=True)

                if fct == None or fct == "fish" or fct == "poissons":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 4),
                                  value=desc[13],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 2),
                                  value=desc[14],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 4),
                                  value=desc[15],
                                  inline=True)

                if fct == None or fct == "plants" or fct == "plantes":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 5),
                                  value=desc[16],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 2),
                                  value=desc[17],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 4),
                                  value=desc[18],
                                  inline=True)

                if fct == None or fct == "item" or fct == "items":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 2),
                                  value=desc[19],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 2),
                                  value=desc[20],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 4),
                                  value=desc[21],
                                  inline=True)

                if fct == None or fct == "event" or fct == "événements":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 6),
                                  value=desc[22],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 2),
                                  value=desc[23],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 4),
                                  value=desc[24],
                                  inline=True)

                if fct == None or fct == "lootbox":
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "categorie", None, False, 7),
                                  value=desc[25],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 3),
                                  value=desc[26],
                                  inline=True)
                    msg.add_field(name=lang_P.forge_msg(
                        lang, "market", None, False, 5),
                                  value=desc[27],
                                  inline=True)
                await ctx.channel.send(embed=msg)

        else:
            await ctx.channel.send(desc[2])
    async def stats(self, ctx, Nom = None):
        """Player stats display."""
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        if ge.permission(ctx, ge.Inquisiteur):
            param["nom"] = Nom
            if Nom == None:
                Nom = ctx.author.name
            else:
                Nom = ctx.guild.get_member(ge.nom_ID(Nom)).name
        else:
            param["nom"] = "None"
            Nom = ctx.author.name

        ge.socket.send_string(gg.std_send_command("stats", ID, ge.name_pl, param))
        tab = GF.msg_recv()
        lang = tab[1]
        if tab[0] == "NOK":
            await ctx.channel.send(lang_P.forge_msg(lang, "WarningMsg", None, False, 0))
            return False
        elif tab[0] == "WarningMsg":
            await ctx.channel.send(tab[1])
            return False
        ltab = len(tab)
        StatList = []
        for i in range(2, ltab):
            tab[i] = tab[i].replace("(", "")
            tab[i] = tab[i].replace(")", "")
            tab[i] = tab[i].replace("'", "")
            tab[i] = tab[i].split(", ")
            StatList.append((tab[i][0], tab[i][1], tab[i][2]))
        StatList = sorted(StatList, key=itemgetter(2))
        StatList = sorted(StatList, key=itemgetter(1))
        desc = ""           # Statistique non pris en charge
        descGeneral = ""     # bal, baltop, inv, market, divers
        descBuy = ""        # buy
        descSell = ""       # sell
        descDon = ""        # pay, give
        descForge = ""      # forge
        descBank = ""       # bank, stealing, crime, gamble
        descMine = ""       # mine
        descDig = ""        # dig
        descFish = ""       # fish
        descSlots = ""      # slots
        descBoxes = ""      # boxes
        descHothouse = ""   # hothouse
        descCooking = ""    # cooking
        descFerment = ""    # ferment
        for x in StatList:
            y = x[2].split(" | ")
            if x[1] == "bal" or x[1] == "inv" or x[1] == "market" or x[1] == "baltop":
                if x[2] == x[1]:
                    descGeneral += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))

            elif x[1] == "buy":
                if x[2] == x[1]:
                    descBuy += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "item":
                            descBuy += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 1))
                        elif y[i] == "dépense":
                            descBuy += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 16))
                        else:
                            descBuy += y[i] + " "
                        if i == len(y)-1:
                            descBuy += ": `{0}`\n\n".format(x[0])

            elif x[1] == "sell":
                if x[2] == x[1]:
                    descSell += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "item":
                            descSell += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 2))
                        elif y[i] == "gain":
                            descSell += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 17))
                        else:
                            descSell += y[i] + " "
                        if i == len(y)-1:
                            descSell += ": `{0}`\n\n".format(x[0])

            elif x[1] == "pay" or x[1] == "give":
                if x[2] == x[1]:
                    descDon += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(0, len(y)):
                        if x[1] == "give" and y[i] == "item":
                            descDon += "{0} {1} ".format(lang_P.forge_msg(lang, "stats", None, False, 3), y[i+1])
                        elif y[i] == "nb items" or y[i] == "nb gems":
                            descDon += "{0} {1} ".format(lang_P.forge_msg(lang, "stats", None, False, 3), lang_P.forge_msg(lang, "stats", None, False, 21))
                            if y[i] == "nb items":
                                descDon += "items "
                            else:
                                descDon += "gems "
                        elif y[i] != "pay" and y[i] != "give":
                            descDon += y[i] + " "
                        if i == len(y)-1:
                            descDon += ": `{0}`\n\n".format(x[0])

            elif x[1] == "forge":
                if x[2] == x[1]:
                    descForge += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "item":
                            descForge += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 4))
                        elif y[i] == "nb items":
                            descForge += "{0} {1} items ".format(lang_P.forge_msg(lang, "stats", None, False, 4), lang_P.forge_msg(lang, "stats", None, False, 21))
                        else:
                            descForge += y[i] + " "
                        if i == len(y)-1:
                            descForge += ": `{0}`\n\n".format(x[0])

            elif x[1] == "bank" or x[1] == "stealing" or x[1] == "crime" or x[1] == "gamble":
                if x[2] == x[1] or x[2] == "bank saving":
                    descBank += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(0, len(y)):
                        if x[1] == "bank" and y[i] == "gain":
                            descBank += "{0} {1} ".format(lang_P.forge_msg(lang, "stats", None, False, 17), lang_P.forge_msg(lang, "stats", None, False, 22))
                        elif x[1] == "stealing" and y[i] == "gain":
                            descBank += "{0} {1} ".format(lang_P.forge_msg(lang, "stats", None, False, 17), lang_P.forge_msg(lang, "stats", None, False, 24))
                        elif x[1] == "gamble":
                            if y[i] == "win":
                                descBank += "Gamble {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 23))
                            elif y[i] == "max":
                                descBank += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 29))
                            elif y[i] == "gain" or y[i] == "perte":
                                if y[i] == "gain":
                                    descBank += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 17))
                                elif y[i] == "perte":
                                    descBank += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 18))
                                descBank += "_gamble_ "
                        elif x[1] == "crime" and y[i] == "gain":
                            descBank += "{0} _crime_ ".format(lang_P.forge_msg(lang, "stats", None, False, 17))
                        elif x[1] != "bank" and x[1] != "crime" and x[1] != "stealing":
                            descBank += y[i] + " "
                        if i == len(y)-1:
                            descBank += ": `{0}`\n\n".format(x[0])

            elif x[1] == "mine":
                if x[2] == x[1]:
                    descMine += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "item":
                            descMine += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 6))
                        elif y[i] == "broken":
                            descMine += "{0} ".format(lang_P.forge_msg(lang, "stats", [y[i+1]], False, 19))
                        elif y[1] != "broken":
                            descMine += y[i] + " "
                        if i == len(y)-1:
                            descMine += ": `{0}`\n\n".format(x[0])

            elif x[1] == "fish":
                if x[2] == x[1]:
                    descFish += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "item":
                            descFish += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 7))
                        elif y[i] == "broken":
                            descFish += "{0} ".format(lang_P.forge_msg(lang, "stats", [y[i+1]], False, 19))
                        elif y[1] != "broken":
                            descFish += y[i] + " "
                        if i == len(y)-1:
                            descFish += ": `{0}`\n\n".format(x[0])

            elif x[1] == "dig":
                if x[2] == x[1]:
                    descDig += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "item":
                            descDig += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 8))
                        elif y[i] == "broken":
                            descDig += "{0} ".format(lang_P.forge_msg(lang, "stats", [y[i+1]], False, 19))
                        elif y[1] != "broken":
                            descDig += y[i] + " "
                        if i == len(y)-1:
                            descDig += ": `{0}`\n\n".format(x[0])

            elif x[1] == "slots":
                if x[2] == x[1]:
                    descSlots += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "gain":
                            descSlots += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 17))
                        elif y[i] == "perte":
                            descSlots += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 18))
                        elif y[i] == "win":
                            descSlots += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 30))
                        elif y[i] == "lose":
                            descSlots += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 31))
                        else:
                            descSlots += y[i] + " "
                        if i == len(y)-1:
                            descSlots += ": `{0}`\n\n".format(x[0])

            elif x[1] == "boxes":
                if x[2] == x[1]:
                    descBoxes += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "gain" and y[0] == "boxes":
                            descBoxes += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 17))
                        elif y[i] == "gain" and y[0] == "lootbox":
                            descBoxes += "Lootbox {0}".format(y[1])
                        elif y[i] == "open":
                            descBoxes += "{0} ".format(lang_P.forge_msg(lang, "stats", None, False, 20))
                        elif y[0] != "lootbox":
                            descBoxes += y[i] + " "
                        if i == len(y)-1:
                            descBoxes += ": `{0}`\n\n".format(x[0])

            elif x[1] == "hothouse":
                if x[2] == x[1]:
                    descHothouse += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "harvest":
                            descHothouse += "{1} {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 25), y[3])
                        elif y[i] == "plant":
                            descHothouse += "{1} {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 26), y[3])
                        if i == len(y)-1:
                            descHothouse += ": `{0}`\n\n".format(x[0])

            elif x[1] == "cooking":
                if x[2] == x[1]:
                    descCooking += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "harvest":
                            descCooking += "{1} {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 25), y[3])
                        elif y[i] == "plant":
                            descCooking += "{1} {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 27), y[3])
                        if i == len(y)-1:
                            descCooking += ": `{0}`\n\n".format(x[0])

            elif x[1] == "ferment":
                if x[2] == x[1]:
                    descFerment += "{2} **{1}** `{0}`\n\n".format(x[0], x[2], lang_P.forge_msg(lang, "stats", None, False, 15))
                else:
                    for i in range(1, len(y)):
                        if y[i] == "harvest":
                            descFerment += "{1} {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 25), y[3])
                        elif y[i] == "plant":
                            descFerment += "{1} {0} ".format(lang_P.forge_msg(lang, "stats", None, False, 28), y[3])
                        if i == len(y)-1:
                            descFerment += ": `{0}`\n\n".format(x[0])

            else:
                desc += "\n{1} `{0}`".format(x[0], x[2])

        msg = discord.Embed(title = "Statistiques de {0} | Gems Base".format(Nom), color= 13752280, description = "", timestamp=dt.datetime.now())
        msg.set_author(name=ctx.author.name, icon_url=ctx.author.avatar_url)
        # if descGeneral != "":
        #     msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 0), value=descGeneral)
        if descBuy != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 1), value=descBuy)
        if descSell != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 2), value=descSell)
        if descDon != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 3), value=descDon)
        if descForge != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 4), value=descForge)
        if desc != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 14), value=desc)

        await ctx.channel.send(embed = msg)
        msg = discord.Embed(title = "Statistiques de {0} | Gems Play".format(Nom), color= 13752280, description = "", timestamp=dt.datetime.now())
        msg.set_author(name=ctx.author.name, icon_url=ctx.author.avatar_url)
        if descBank != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 5), value=descBank)
        if descMine != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 6), value=descMine)
        if descFish != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 7), value=descFish)
        if descDig != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 8), value=descDig)
        if descSlots != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 9), value=descSlots)
        if descBoxes != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 10), value=descBoxes)
        if descHothouse != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 11), value=descHothouse)
        if descCooking != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 12), value=descCooking)
        if descFerment != "":
            msg.add_field(name=lang_P.forge_msg(lang, "stats", None, False, 13), value=descFerment)

        await ctx.channel.send(embed = msg)
    async def bank(self, ctx, ARG=None, ARG2=None):
        """**[bal/add/saving] [name/number]** | Savings account"""
        # =======================================================================
        # Initialistation des variables générales de la fonction
        # =======================================================================
        ID = ctx.author.id
        param = dict()
        param["ID"] = ID
        param["ARG"] = ARG
        param["ARG2"] = ARG2

        ge.socket.send_string(
            gg.std_send_command("bank", ID, ge.name_pl, param))
        desc = GF.msg_recv()
        lang = desc[1]
        if ARG == "bal" and ARG2 is not None:
            N = ctx.guild.get_member(ge.nom_ID(ARG2)).name
        else:
            N = ctx.author.name

        if desc[0] == "bal":
            if ARG2 != None:
                ID = ge.nom_ID(ARG2)
                nom = ctx.guild.get_member(ID)
                ARG2 = nom.name
                title = lang_P.forge_msg(lang, "bank", [N], False)
                # title = "Compte épargne de {}".format(ARG2)
            else:
                title = lang_P.forge_msg(lang, "bank", [N], False)
                # title = "Compte épargne de {}".format(ctx.author.name)
            msg = discord.Embed(title=title,
                                color=13752280,
                                description="",
                                timestamp=dt.datetime.now())
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            msg.add_field(name="Balance", value=desc[2], inline=False)
            msg.add_field(name="Commandes", value=desc[3], inline=False)
            await ctx.channel.send(embed=msg)

        elif desc[0] == "add":
            msg = discord.Embed(title=lang_P.forge_msg(lang, "titres", None,
                                                       False, 4),
                                color=13752280,
                                description=desc[2],
                                timestamp=dt.datetime.now())
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=msg)

        elif desc[0] == "saving":
            msg = discord.Embed(title=lang_P.forge_msg(lang, "titres", None,
                                                       False, 5),
                                color=13752280,
                                description=desc[2],
                                timestamp=dt.datetime.now())
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=msg)

        else:
            await ctx.channel.send(desc[2])
示例#28
0
    async def inv(self, ctx, fct=None):
        """**{pocket name}** | Allows you to see what you have in your belly!"""
        ID = ctx.author.id
        nom = ctx.author.name
        param = dict()
        param["ID"] = ID
        # param["IDGuild"] = ctx.guild.id
        if fct is not None:
            fct = fct.lower()
        param["fct"] = fct

        ge.socket.send_string(gg.std_send_command("inv", ID, ge.name_pl,
                                                  param))
        desc = GF.msg_recv()

        if desc[0] == "OK":
            lang = desc[1]
            msg_titre = lang_P.forge_msg(lang, "inv", [nom], False, 0)
            msg = discord.Embed(title=msg_titre,
                                color=6466585,
                                description=desc[2])
            if desc[3] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 0),
                              value=desc[3],
                              inline=False)
            if desc[4] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 1),
                              value=desc[4],
                              inline=False)
            if desc[5] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 2),
                              value=desc[5],
                              inline=False)
            if desc[6] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 3),
                              value=desc[6],
                              inline=False)
            if desc[7] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 4),
                              value=desc[7],
                              inline=False)
            if desc[8] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 5),
                              value=desc[8],
                              inline=False)
            if desc[9] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 6),
                              value=desc[9],
                              inline=False)
            if desc[10] != "None":
                msg.add_field(name=lang_P.forge_msg(lang, "categorie", None,
                                                    False, 7),
                              value=desc[10],
                              inline=False)
            await ctx.channel.send(embed=msg)

        elif desc[0] == "pockets":
            lang = desc[1]
            msg = discord.Embed(title=lang_P.forge_msg(lang, "inv", None,
                                                       False, 1),
                                color=6466585,
                                description=desc[2],
                                timestamp=dt.datetime.now())
            msg.set_author(name=ctx.author.name,
                           icon_url=ctx.author.avatar_url)
            await ctx.channel.send(embed=msg)

        else:
            await ctx.channel.send(desc[2])
示例#29
0
    async def graphbourse(self,
                          ctx,
                          item,
                          moisD=None,
                          anneeD=None,
                          moisF=None,
                          anneeF=None,
                          type=None):
        """**[item] {start month} {start year} {final month} {final year}** | Exchange History by Item"""
        ID = ctx.author.id
        now = dt.datetime.now()

        if item.lower() == "all":
            if anneeF is not None:
                temp = type
            type = moisD.lower()
            if anneeD is None:
                anneeD = str(now.year)
                moisD = str(now.month)
            else:
                moisD = anneeD
                anneeD = moisF
            if anneeF is None:
                moisF = str(now.month)
                anneeF = str(now.year)
            else:
                moisF = anneeF
                anneeF = temp
            param = dict()
            param["ID"] = ID
            param["type"] = type

            ge.socket.send_string(
                gg.std_send_command("listobjet", ID, ge.name_pl, param))
            msg = GF.msg_recv()

            if msg[0] == "NOK":
                await ctx.channel.send(msg[1])
            else:
                for one in msg[1]:
                    graph = GS.create_graphbourse(ctx, one, anneeD, moisD,
                                                  anneeF, moisF)
                    lang = graph[1]
                    if graph[0] == "404":
                        await ctx.send(
                            lang_P.forge_msg(lang, "WarningMsg", None, False,
                                             0))
                    else:
                        await ctx.send(
                            file=discord.File("cache/{}".format(graph[0])))
                        os.remove("cache/{}".format(graph[0]))
        else:
            if moisD == None:
                moisD = str(now.month)
            if anneeD == None:
                anneeD = str(now.year)
            if moisF == None:
                moisF = str(now.month)
            if anneeF == None:
                anneeF = str(now.year)
            graph = GS.create_graphbourse(ctx, item, anneeD, moisD, anneeF,
                                          moisF)
            lang = graph[1]
            if graph[0] == "404":
                await ctx.send(
                    lang_P.forge_msg(lang, "WarningMsg", None, False, 0))
            else:
                await ctx.send(file=discord.File("cache/{}".format(graph[0])))
                os.remove("cache/{}".format(graph[0]))
示例#30
0
REQUEST_TIMEOUT = 2500
REQUEST_RETRIES = 3
SERVER_ENDPOINT = "tcp://localhost:5555"

context = zmq.Context(1)

#  Socket to talk to server
print("Connecting to Get Gems server…")
socket = context.socket(zmq.REQ)
socket.connect(SERVER_ENDPOINT)
# TIMEOUT
poll = zmq.Poller()
poll.register(socket, zmq.POLLIN)

socket.send_string(gg.std_send_command("GGconnect", "__client", name_pl))
time.sleep(1)
socks = dict(poll.poll(REQUEST_TIMEOUT))
if socks.get(socket) == zmq.POLLIN:
    msg = socket.recv()
    if msg.decode() == "1":
        print("Connected to Get Gems server")
else:
    print("Aucune réponse du serveur")
    check = False
    # Socket is confused. Close and remove it.
    socket.setsockopt(zmq.LINGER, 0)
    socket.close()
    poll.unregister(socket)

while check: