try:
#getchatmember и тд. код
except Exception:
bot.sendmessage #Тутя записать сообщение, об ошибке, т.е. прописать код, для случая ,если пользователь не подписан
skill = 0 #Просто добавил счётчик "скилла" правильных и неправильных ответов
@bot.message_handler(content_types=["text"])
def type_game(message):
if message.text == "Мои данные":
bot.send_message(message.chat.id,"Баланс: " + "/n" +
"Игр сыграно: " + "/n" +
"Правильных ответов: ")
if message.text == "Бесплатная игра":
bot.send_message(message.chat.id, "Чтобы начать введите /free_game")
if message.text == "Платная игра":
bot.send_message(message.chat.id,"Баланс: " "/n"
"Игр сыграно: " + "/n" +
"Правильных ответов: ")
if message.text == '/free_game': #Другой варянт создания комманд
bot.send_message(message.chat.id, SQLighter.answer)
bot.register_next_step_handler(message, free_game)#Перенаправил на функцию free_game
def free_game(message):
if message.text == SQLighter.answer:
bot.send_message(message.chat.id, "Good")
skill = skill + 1
bot.send_message(message.chat.id, SQLighter.answer)
bot.register_next_step_handler(message, free_game)#Создаёт некий цикл, после ответа, оно занова запускает эту функцию, а так же пишет вопрос из базы данных
elif message.text == 'Прекратить игру':
bot.send_message(message.chat.id, 'Игра приостановлена.')#Так как тут нету register next step и тд., то оно автоматически переадресовывает на type_game
else:
skill = skill - 1
bot.send_message(message.chat.id, "Bad")
bot.send_message(message.chat.id, SQLighter.answer)
bot.register_next_step_handler(message, free_game)