Ejemplo n.º 1
0
def osucmd():
    print("@" + username + ": /osu")
    # Visualizza il punteggio più recente di osu!
    # Informa Telegram che il messaggio è stato ricevuto.
    telegram.sendchataction(sentin)
    # Trova il nome utente specificato
    # Se è stato specificato un nome utente
    if len(cmd) >= 2:
        # Trova la modalità
        # 0 = osu!
        # 1 = osu!taiko
        # 2 = osu!catch
        # 3 = osu!mania
        # Se è stata specificata una modalità
        if len(cmd) >= 3:
            # Modalità specificata
            mode = int(cmd[2])
        else:
            # Imposta la modalità a osu!
            mode = 0
        # Prova a mandare una richiesta ai server di osu per l'ultima canzone giocata
        try:
            r = osu.getuserrecent(cmd[1], mode)
        # Se la funzione restituisce un errore, riferisci su Telegram l'errore e previeni il crash.
        except NameError:
            telegram.sendmessage(chr(9888) + " Errore nella richiesta ai server di Osu!", sentin,
                                 source)
        # Se tutto va bene, continua!
        else:
            # Se ci sono delle mod attive...
            if "enabled_mods" in r:
                mods = osu.listmods(r['enabled_mods'])
            else:
                mods = ""
            # Specifica cosa vuole dire il grado F e il grado X
            if r['rank'] == 'F':
                r['rank'] = 'Failed'
            elif r['rank'] == 'X':
                r['rank'] = 'Unranked'
            if mode == 0:
                # Visualizza le informazioni relative alla modalità osu!
                telegram.sendmessage("*osu!*\n"
                                     "[Beatmap {0}](https://osu.ppy.sh/b/{0})\n"
                                     "*{1}*\n"
                                     "{2}\n"
                                     "*Punti*: {3}\n"
                                     "*Combo* x{4}\n"
                                     "*300*: {5}\n"
                                     "*100*: {6}\n"
                                     "*50*: {7}\n"
                                     "*Awesome*: {8}\n"
                                     "*Good*: {9}\n"
                                     "*Miss*: {10}"
                                     .format(r['beatmap_id'],
                                             r['rank'],
                                             mods,
                                             r['score'],
                                             r['maxcombo'],
                                             r['count300'],
                                             r['count100'],
                                             r['count50'],
                                             r['countgeki'],
                                             r['countkatu'],
                                             r['countmiss']), sentin, source)
            elif mode == 1:
                # Visualizza le informazioni relative alla modalità osu!taiko
                telegram.sendmessage("*osu!taiko*\n"
                                     "[Beatmap {0}](https://osu.ppy.sh/b/{0})\n"
                                     "*{1}*\n"
                                     "{2}\n"
                                     "*Punti*: {3}\n"
                                     "*Combo* x{4}\n"
                                     "*Great*: {5}\n"
                                     "*Good*: {6}\n"
                                     "_Large_ *Great*: {7}\n"
                                     "_Large_ *Good*: {8}\n"
                                     "*Miss*: {9}"
                                     .format(r['beatmap_id'],
                                             r['rank'],
                                             mods,
                                             r['score'],
                                             r['maxcombo'],
                                             r['count300'],
                                             r['count100'],
                                             r['countgeki'],
                                             r['countkatu'],
                                             r['countmiss']), sentin, source)
            elif mode == 2:
                # TODO: Cos'è successo qui?
                # Visualizza le informazioni relative alla modalità osu!catch
                telegram.sendmessage("*osu!catch*\n"
                                     "[Beatmap " + r['beatmap_id'] + "](" + 'https://osu.ppy.sh/b/' + r[
                                         'beatmap_id'] +
                                     ")\n*" + r['rank'] + "*\n" + mods +
                                     "\n*Punti*: " + r['score'] + "\n"
                                                                  "*Combo* x" + r['maxcombo'] + "\n"
                                                                                                "*Fruit*: " +
                                     r['count300'] + "\n"
                                                     "*Droplet* _tick_: " + r['count100'] + "\n"
                                                                                            "*Droplet* _trail_: " +
                                     r['count50'] + "\n"
                                                    "*Miss*: " + r['countmiss'], sentin, source)
            elif mode == 3:
                # TODO: Cos'è successo qui?
                # Visualizza le informazioni relative alla modalità osu!mania
                telegram.sendmessage("*osu!mania*\n" +
                                     "[Beatmap " + r['beatmap_id'] + "](" + 'https://osu.ppy.sh/b/' + r[
                                         'beatmap_id'] + ")\n*" + r['rank'] + "*\n" + mods +
                                     "\n*Punti*: " + r['score'] + "\n"
                                                                  "*Combo* x" + r['maxcombo'] + "\n"
                                                                                                "_Rainbow_ *300*: " +
                                     r['countgeki'] + "\n"
                                                      "*300*: " + r['count300'] + "\n"
                                                                                  "*100*: " + r[
                                         'count100'] + "\n"
                                                       "*200*: " + r['countkatu'] + "\n"
                                                                                    "*50*: " + r[
                                         'count50'] + "\n"
                                                      "*Miss*: " + r['countmiss'], sentin, source)
    else:
        # TODO: Mettere a posto sto schifo.
        if "osu" in royalgames[username.lower()]:
            r = osu.getuserrecent(royalgames[username.lower()]['osu'], 0)
            if "enabled_mods" in r:
                mods = osu.listmods(r['enabled_mods'])
            else:
                mods = ""
            telegram.sendmessage("*osu!*\n"
                                 "[Beatmap {0}](https://osu.ppy.sh/b/{0})\n"
                                 "*{1}*\n"
                                 "{2}\n"
                                 "*Punti*: {3}\n"
                                 "*Combo* x{4}\n"
                                 "*300*: {5}\n"
                                 "*100*: {6}\n"
                                 "*50*: {7}\n"
                                 "*Awesome*: {8}\n"
                                 "*Good*: {9}\n"
                                 "*Miss*: {10}"
                                 .format(r['beatmap_id'],
                                         r['rank'],
                                         mods,
                                         r['score'],
                                         r['maxcombo'],
                                         r['count300'],
                                         r['count100'],
                                         r['count50'],
                                         r['countgeki'],
                                         r['countkatu'],
                                         r['countmiss']), sentin, source)
Ejemplo n.º 2
0
def osucmd():
    print("@" + username + ": /osu")
    # Visualizza il punteggio più recente di osu!
    # Informa Telegram che il messaggio è stato ricevuto.
    telegram.sendchataction(sentin)
    # Trova il nome utente specificato
    # Se è stato specificato un nome utente
    if len(cmd) >= 2:
        # Trova la modalità
        # 0 = osu!
        # 1 = osu!taiko
        # 2 = osu!catch
        # 3 = osu!mania
        # Se è stata specificata una modalità
        if len(cmd) >= 3:
            # Modalità specificata
            mode = int(cmd[2])
        else:
            # Imposta la modalità a osu!
            mode = 0
        # Prova a mandare una richiesta ai server di osu per l'ultima canzone giocata
        try:
            r = osu.getuserrecent(cmd[1], mode)
        # Se la funzione restituisce un errore, riferisci su Telegram l'errore e previeni il crash.
        except NameError:
            telegram.sendmessage(
                chr(9888) + " Errore nella richiesta ai server di Osu!",
                sentin, source)
        # Se tutto va bene, continua!
        else:
            # Se ci sono delle mod attive...
            if "enabled_mods" in r:
                mods = osu.listmods(r['enabled_mods'])
            else:
                mods = ""
            # Specifica cosa vuole dire il grado F e il grado X
            if r['rank'] == 'F':
                r['rank'] = 'Failed'
            elif r['rank'] == 'X':
                r['rank'] = 'Unranked'
            if mode == 0:
                # Visualizza le informazioni relative alla modalità osu!
                telegram.sendmessage(
                    "*osu!*\n"
                    "[Beatmap {0}](https://osu.ppy.sh/b/{0})\n"
                    "*{1}*\n"
                    "{2}\n"
                    "*Punti*: {3}\n"
                    "*Combo* x{4}\n"
                    "*300*: {5}\n"
                    "*100*: {6}\n"
                    "*50*: {7}\n"
                    "*Awesome*: {8}\n"
                    "*Good*: {9}\n"
                    "*Miss*: {10}".format(r['beatmap_id'], r['rank'], mods,
                                          r['score'], r['maxcombo'],
                                          r['count300'], r['count100'],
                                          r['count50'], r['countgeki'],
                                          r['countkatu'], r['countmiss']),
                    sentin, source)
            elif mode == 1:
                # Visualizza le informazioni relative alla modalità osu!taiko
                telegram.sendmessage(
                    "*osu!taiko*\n"
                    "[Beatmap {0}](https://osu.ppy.sh/b/{0})\n"
                    "*{1}*\n"
                    "{2}\n"
                    "*Punti*: {3}\n"
                    "*Combo* x{4}\n"
                    "*Great*: {5}\n"
                    "*Good*: {6}\n"
                    "_Large_ *Great*: {7}\n"
                    "_Large_ *Good*: {8}\n"
                    "*Miss*: {9}".format(r['beatmap_id'], r['rank'], mods,
                                         r['score'], r['maxcombo'],
                                         r['count300'], r['count100'],
                                         r['countgeki'], r['countkatu'],
                                         r['countmiss']), sentin, source)
            elif mode == 2:
                # TODO: Cos'è successo qui?
                # Visualizza le informazioni relative alla modalità osu!catch
                telegram.sendmessage(
                    "*osu!catch*\n"
                    "[Beatmap " + r['beatmap_id'] + "](" +
                    'https://osu.ppy.sh/b/' + r['beatmap_id'] + ")\n*" +
                    r['rank'] + "*\n" + mods + "\n*Punti*: " + r['score'] +
                    "\n"
                    "*Combo* x" + r['maxcombo'] + "\n"
                    "*Fruit*: " + r['count300'] + "\n"
                    "*Droplet* _tick_: " + r['count100'] + "\n"
                    "*Droplet* _trail_: " + r['count50'] + "\n"
                    "*Miss*: " + r['countmiss'], sentin, source)
            elif mode == 3:
                # TODO: Cos'è successo qui?
                # Visualizza le informazioni relative alla modalità osu!mania
                telegram.sendmessage(
                    "*osu!mania*\n" + "[Beatmap " + r['beatmap_id'] + "](" +
                    'https://osu.ppy.sh/b/' + r['beatmap_id'] + ")\n*" +
                    r['rank'] + "*\n" + mods + "\n*Punti*: " + r['score'] +
                    "\n"
                    "*Combo* x" + r['maxcombo'] + "\n"
                    "_Rainbow_ *300*: " + r['countgeki'] + "\n"
                    "*300*: " + r['count300'] + "\n"
                    "*100*: " + r['count100'] + "\n"
                    "*200*: " + r['countkatu'] + "\n"
                    "*50*: " + r['count50'] + "\n"
                    "*Miss*: " + r['countmiss'], sentin, source)
    else:
        # TODO: Mettere a posto sto schifo.
        if "osu" in royalgames[username.lower()]:
            r = osu.getuserrecent(royalgames[username.lower()]['osu'], 0)
            if "enabled_mods" in r:
                mods = osu.listmods(r['enabled_mods'])
            else:
                mods = ""
            telegram.sendmessage(
                "*osu!*\n"
                "[Beatmap {0}](https://osu.ppy.sh/b/{0})\n"
                "*{1}*\n"
                "{2}\n"
                "*Punti*: {3}\n"
                "*Combo* x{4}\n"
                "*300*: {5}\n"
                "*100*: {6}\n"
                "*50*: {7}\n"
                "*Awesome*: {8}\n"
                "*Good*: {9}\n"
                "*Miss*: {10}".format(r['beatmap_id'], r['rank'], mods,
                                      r['score'], r['maxcombo'], r['count300'],
                                      r['count100'], r['count50'],
                                      r['countgeki'], r['countkatu'],
                                      r['countmiss']), sentin, source)
Ejemplo n.º 3
0
 # Trova la modalità
 # 0 = osu!
 # 1 = osu!taiko
 # 2 = osu!catch
 # 3 = osu!mania
 cmd = text.split(' ', 2)
 # Se è stata specificata una modalità
 if len(cmd) >= 3:
     # Modalità specificata
     mode = int(cmd[2])
 else:
     # Imposta la modalità a osu!
     mode = 0
 # Prova a mandare una richiesta ai server di osu per l'ultima canzone giocata
 try:
     r = osu.getuserrecent(cmd[1], mode)
 # Se la funzione restituisce un errore, riferisci su Telegram l'errore e previeni il crash.
 except NameError:
     telegram.sendmessage(chr(9888) + " Errore nella richiesta ai server di Osu!", sentin,
                          source)
 # Se tutto va bene, continua!
 else:
     # Se ci sono delle mod attive...
     if "enabled_mods" in r:
         mods = osu.listmods(r['enabled_mods'])
     else:
         mods = ""
     # Specifica cosa vuole dire il grado F e il grado X
     if r['rank'] == 'F':
         r['rank'] = 'Failed'
     elif r['rank'] == 'X':
Ejemplo n.º 4
0
     telegram.senddocument('BQADAgADTQIAAh8GgAGj0jKIrpTgvQI', sby)
 elif cmd[0].startswith('/wololo'):
     print(unm + ": /wololo")
     if len(cmd) >= 2:
         telegram.senddocument(wololo[int(cmd[1]) - 1], sby)
     else:
         telegram.senddocument('BQADAgADZwIAAh8GgAF3etjqkzFDxAI', sby)
 elif cmd[0].startswith('/osu'):
     print(unm + ": /osu")
     if len(cmd) >= 2:
         cmd = msg['text'].split(' ', 2)
         if len(cmd) >= 3:
             mode = int(cmd[2])
         else:
             mode = 0
         r = osu.getuserrecent(cmd[1], mode)
         if mode == 0:
             telegram.sendmessage(
                 "*Osu!*\n" + "[Beatmap " + r['beatmap_id'] + "](" +
                 'https://osu.ppy.sh/b/' + r['beatmap_id'] + ")\n*" +
                 r['rank'] + "*\n*Punti*: " + r['score'] + "\n" +
                 "*Combo* x" + r['maxcombo'] + "\n" + "*300*: " +
                 r['count300'] + "\n" + "*100*: " + r['count100'] +
                 "\n" + "*50*: " + r['count50'] + "\n" + "*Awesome*: " +
                 r['countkatu'] + "\n" + "*Good*: " + r['countgeki'] +
                 "\n" + "*Miss*: " + r['countmiss'], sby)
         elif mode == 1:
             telegram.sendmessage(
                 "*Taiko*\n" + "[Beatmap " + r['beatmap_id'] + "](" +
                 'https://osu.ppy.sh/b/' + r['beatmap_id'] + ")\n*" +
                 r['rank'] + "*\n*Punti*: " + r['score'] + "\n" +
Ejemplo n.º 5
0
     telegram.senddocument('BQADAgADTQIAAh8GgAGj0jKIrpTgvQI', sby)
 elif cmd[0].startswith('/wololo'):
     print(unm + ": /wololo")
     if len(cmd) >= 2:
         telegram.senddocument(wololo[int(cmd[1]) - 1], sby)
     else:
         telegram.senddocument('BQADAgADZwIAAh8GgAF3etjqkzFDxAI', sby)
 elif cmd[0].startswith('/osu'):
     print(unm + ": /osu")
     if len(cmd) >= 2:
         cmd = msg['text'].split(' ', 2)
         if len(cmd) >= 3:
             mode = int(cmd[2])
         else:
             mode = 0
         r = osu.getuserrecent(cmd[1], mode)
         if mode == 0:
             telegram.sendmessage("*Osu!*\n" +
                                  "[Beatmap " + r['beatmap_id'] + "](" + 'https://osu.ppy.sh/b/' + r[
                                      'beatmap_id'] +
                                  ")\n*" + r['rank'] + "*\n*Punti*: " + r['score'] + "\n" +
                                  "*Combo* x" + r['maxcombo'] + "\n" +
                                  "*300*: " + r['count300'] + "\n" +
                                  "*100*: " + r['count100'] + "\n" +
                                  "*50*: " + r['count50'] + "\n" +
                                  "*Awesome*: " + r['countkatu'] + "\n" +
                                  "*Good*: " + r['countgeki'] + "\n" +
                                  "*Miss*: " + r['countmiss'], sby)
         elif mode == 1:
             telegram.sendmessage("*Taiko*\n" +
                                  "[Beatmap " + r['beatmap_id'] + "](" + 'https://osu.ppy.sh/b/' + r[
Ejemplo n.º 6
0
 # Trova la modalità
 # 0 = osu!
 # 1 = osu!taiko
 # 2 = osu!catch
 # 3 = osu!mania
 cmd = text.split(' ', 2)
 # Se è stata specificata una modalità
 if len(cmd) >= 3:
     # Modalità specificata
     mode = int(cmd[2])
 else:
     # Imposta la modalità a osu!
     mode = 0
 # Prova a mandare una richiesta ai server di osu per l'ultima canzone giocata
 try:
     r = osu.getuserrecent(cmd[1], mode)
 # Se la funzione restituisce un errore, riferisci su Telegram l'errore e previeni il crash.
 except NameError:
     telegram.sendmessage(
         chr(9888) +
         " Errore nella richiesta ai server di Osu!",
         sentin, source)
 # Se tutto va bene, continua!
 else:
     # Se ci sono delle mod attive...
     if "enabled_mods" in r:
         mods = osu.listmods(r['enabled_mods'])
     else:
         mods = ""
     # Specifica cosa vuole dire il grado F e il grado X
     if r['rank'] == 'F':