def carte(_, message):
    if message.chat.id not in chatScommesse:
        message.reply(
            "Gruppo non abilitato, contatta @Anatras02 se credi si tratti di un errore"
        )
        return

    numero = ["A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"]
    seme = ["♣️", "♠️", "♦️", "♥️"]
    flag = True

    while flag:
        numero1 = random.choice(numero)
        numero2 = random.choice(numero)
        seme1 = random.choice(seme)
        seme2 = random.choice(seme)

        if random.randint(1, 100) <= 2:
            if random.randint(1, 2) == 1:
                carta1 = "Jolly 🃏"
                carta2 = f"{numero2} {seme2}"
            else:
                carta1 = f"{numero1} {seme1}"
                carta2 = "Jolly 🃏"
        else:
            carta1 = f"{numero1} {seme1}"
            carta2 = f"{numero2} {seme2}"

        if carta1 != carta2:
            flag = False

    message.reply(
        f"{message.from_user.username}, mischi per bene il mazzo, improvvisamente sfili dall'alto le prime due carte, "
        f"sono: {carta1} e {carta2}!")
    setta_scommessa(message.from_user, f"Carte", f"{carta1} {carta2}")
Exemple #2
0
def freccette(app, message):
    if message.chat.id not in chatScommesse:
        message.reply("Gruppo non abilitato, contatta @Anatras02 se credi si tratti di un errore")
        return

    risultato = app.send_dice(message.chat.id, "🎯", reply_to_message_id=message.message_id)
    setta_scommessa(message.from_user, f"Freccette", risultato.dice.value)
Exemple #3
0
def toc(app, message):
    if message.chat.id not in chatScommesse:
        message.reply("Gruppo non abilitato, contatta @Anatras02 se credi si tratti di un errore")
        return

    testa_o_croce = ["TESTA", "CROCE"]
    risultato = random.choice(testa_o_croce)
    message.reply(
        f"{message.from_user.username}, tiri la moneta per aria, questa fa un paio di giri, torna a terra e... **E' "
        f"USCITO {risultato}**!",
        quote=False)
    setta_scommessa(message.from_user, "Testa o Croce", risultato)
Exemple #4
0
def rune(app, message):
    if message.chat.id not in chatScommesse:
        message.reply("Gruppo non abilitato, contatta @Anatras02 se credi si tratti di un errore")
        return

    simboli = ["🌱", "🔥", "💧", "🌑"]

    simbolo = random.choice(simboli)

    message.reply(
        f"@{message.from_user.username}, invochi il grande mago di Aci Trezza che controvoglia ti fa la rivelazione: "
        f"la tua runa è {simbolo}!"
    )
    setta_scommessa(message.from_user, "Rune", simbolo)
Exemple #5
0
def dado(app, message):
    if message.chat.id not in chatScommesse:
        message.reply("Gruppo non abilitato, contatta @Anatras02 se credi si tratti di un errore")
        return

    rx = r'/dado\s+(\d+)'
    mo = re.match(rx, message.text)
    if mo:
        max_facce = 999999999
        if int(mo.group(1)) > max_facce:
            message.reply(f"Puoi tirare un dato di massimo {aggiungi_punti(max_facce)} di facce!")
            return

        valore_dado = aggiungi_punti(random.randint(1, int(mo.group(1))))

        app.send_message(
            message.chat.id,
            f"@{message.from_user.username} hai appena tirato un dado a **{aggiungi_punti(int(mo.group(1)))}** facce"
            f".\nÈ uscito il numero **{str(valore_dado)}** "
        )
        setta_scommessa(message.from_user, f"Dado {mo.group(1)}", valore_dado)
    else:
        risultato = app.send_dice(message.chat.id, reply_to_message_id=message.message_id)
        setta_scommessa(message.from_user, f"Dado 6", risultato.dice.value)
Exemple #6
0
def tira_query(app, callback_query):
    if "tira" in callback_query.data:
        frasi_effetto = [
            "Hai lanciato una **freccia** che è andata **{punti}** metri lontana",
            "Con una sola **freccia** sei riuscito ad uccidere ben **{punti}** uccellini in volo",
            "**{giocatore}** ti fa incazzare, dalla rabbia gli spari **{punti}** frecce sul petto "
            "lasciandolo a terra stecchito",
            '**Edo ⚡️** viene da te e con aria soddisfatta ti dice __Haha, sono il dio supremo__\nDalla '
            'rabbia gli tiri una freccia che gli leva **{punti}** punti vita!',
            "Non hai tempo di tirare fuori la freccia, prendi l'arco e lo **spacchi in testa** a **{"
            "giocatore}** provocandogli **{punti}** danni",
            "Sbagli a lanciare la freccia e **ti colpisci un piede**, incomici a bestemmiare "
            "**selvaggemente**\nDio scende in terra **incazzato** perché gli hai levato **{punti}** punti "
            "vita",
            "@dod1c1 spara {punti} frecce a @tdjj05 su una di queste è scalfito il messaggio \"DRICER SEI "
            "UN TESTA DI CAZZO\""
        ]

        codice = callback_query.data.split("|")[2]
        utente = int(callback_query.data.split("|")[1])
        tag_utente = f"{utente}{codice}"
        try:
            tiratori_tca[tag_utente]
        except KeyError:
            callback_query.answer(
                "Il bot è stato riavviato mentre giocavi, rilancia il comando /tca"
            )
            return

        if callback_query.from_user.id != utente:
            callback_query.answer("Eh, volevi!")
            return

        numero = random.randint(1, 25)

        giocatore_random_var = giocatore_random(utente,
                                                callback_query.message.chat.id,
                                                app)
        frase = random.choice(frasi_effetto).format(
            punti=numero, giocatore=giocatore_random_var)

        tiratori_tca[tag_utente]["risultati"].append(numero)

        keyboard = InlineKeyboard(row_width=1)
        keyboard.add(
            InlineKeyboardButton("Tira 🏹",
                                 callback_data=f"tira|{utente}|{codice}"))

        counter = 1
        tiri = ""
        for tiro in tiratori_tca[tag_utente]["risultati"]:
            tiri += f"**Tiro {counter}:** __{tiro}__\n"
            counter += 1

        if counter > 3:
            giocatore = app.get_users(utente).first_name
            tot_punti = sum(tiratori_tca[tag_utente]["risultati"])

            if tot_punti < 15:
                commento = "(un po' una merda)"
            elif tot_punti < 40:
                commento = "(meh)"
            elif tot_punti < 50:
                commento = "(incominciamo a ragionare)"
            elif tot_punti < 60:
                commento = "(bella giocata)"
            elif tot_punti < 75:
                commento = "(non vantarti, è solo culo)"
            elif tot_punti == 75:
                commento = "(hai barato ammettilo!)"
            else:
                commento = ""

            callback_query.edit_message_text(
                f"Tiri un' ultima __freccia potentissima__ verso il cielo superando i __confini dell'universo__ che "
                f"ti conferisce **{numero}** punti!\n\nBeh che dire **{giocatore}**, hai distrutto l'universo per "
                f"divertirti un po' ma nel mentre hai totalizzato **{tot_punti}** punti\n\n**__Questi sono stati i "
                f"tuoi tiri__** {commento}\n{tiri}\n**Totale:** {tot_punti} ")

            setta_scommessa(callback_query.from_user, "Tiro con l'arco",
                            tot_punti)

        else:
            if counter > 3:
                callback_query.edit_message_text(
                    f"Contano solo i primi 3 tiri!\nNon cheatare mai più o ban!\n\n**__Questi infatti sono stati i "
                    f"tuoi tiri__**\n{tiri} ")
            else:
                callback_query.edit_message_text(f"{frase}\n\n{tiri}",
                                                 reply_markup=keyboard)

        tiratori_tca[tag_utente]["tiro"] += 1

    elif "Cancella" in callback_query.data:
        utente = callback_query.data.split("|")[1]

        if callback_query.from_user.id != int(utente):
            callback_query.answer("Non si può più, F!")
            return

        callback_query.edit_message_text("Tiro annullato 😢")