@rustam__2006

Как сделать чтобы переменная money обновлялась?

Т.е. При выигрыше 500 монет будет 3000, при повторном выигрыше снова 3000 вместо 3500

ballans = 2500;
MoneyUp = 500;
MoneyDown = -500;

@bot.message_handler(commands=['old'])
def casino(m):
    cid = m.chat.id
    keyboard = types.InlineKeyboardMarkup()
    item = types.InlineKeyboardButton('Орел', callback_data='Orel')
    item2 = types.InlineKeyboardButton('Решка', callback_data='Reshka')
    keyboard.add(item, item2)
    msg = bot.send_message(cid, "Выбери Орел или Решка?", reply_markup=keyboard)

@bot.callback_query_handler(func=lambda call:True)
def ans(call):
    keyboard = types.InlineKeyboardMarkup()
    if call.message:
        if call.data == "Orel":
            list = [f"Выиграл\n+500\n{MoneyUp + ballans}", f"Проиграл\n-500\n{MoneyDown + ballans}"]
            gif = open('coin-flip-15.gif', 'rb')
            bot.send_animation(call.message.chat.id, gif)
            time.sleep(4.5)
            bot.send_message(call.message.chat.id, (random.choice(list)), reply_markup=keyboard)
        elif call.data == "Reshka":
            list = [f"Выиграл\n+500\n{MoneyUp + ballans}", f"Проиграл\n-500\n{MoneyDown + ballans}"]
            gif1 = open('coin-flip-15.gif', 'rb')
            bot.send_animation(call.message.chat.id, gif1)
            time.sleep(4.5)
            bot.send_message(call.message.chat.id, (random.choice(list)), reply_markup=keyboard)
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 2
Переменной ballans не присваивается новое значение, поэтому при повторном запуске результат тот же.
Как вариант, можно c помощью random определять что "выпало", а уже исходя из этого (и выбора пользователя) сделать необходимые расчёты и вывести текст о выигрыше/проигрыше.
Чтобы изменить ballans надо будет объявить его в функции, как global.
А дальше появится проблема, если одновременно начнёт играть несколько пользователей (баланс-то общий) и придётся запоминать его для каждого игрока по отдельности (например, с помощью словаря).
Ответ написан
Комментировать
@RelixAgent
надо учится работать с sqlite3 или MongoDB (и ещё большое множество альтернатив)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы