Напишите скрипт на Python для телеграмм-бота с помощью библиотеки telebot игра Камень, ножницы, бумага где пользователь выбирает Камень, ножницы или бумагу и после на основе того что выбрал пользователь бот тоже будет выберать или Камень, ножницы или бумагу и если человек выйграл то он получает очки иначе ничего не получает
Ответ
0 (0 оценок)
0
baslykovdaniel 5 месяцев назад
Светило науки - 7 ответов - 0 раз оказано помощи
import telebot
import random

TOKEN = 'YOUR_TELEGRAM_BOT_TOKEN'
bot = telebot.TeleBot(TOKEN)

user_scores = {}

@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
bot.reply_to(message, "Привет! Давай сыграем в Камень, ножницы, бумага. Выбери один из вариантов: /камень, /ножницы, /бумага")

@bot.message_handler(commands=['камень', 'ножницы', 'бумага'])
def play_game(message):
user_choice = message.text[1:] # remove '/' from the command
bot_choice = random.choice(['камень', 'ножницы', 'бумага'])

result = determine_winner(user_choice, bot_choice)

if result == 'win':
user_scores[message.chat.id] = user_scores.get(message.chat.id, 0) + 1
bot.reply_to(message, f"Ты выбрал {user_choice}, я выбрал {bot_choice}. Ты победил! Твои очки: {user_scores[message.chat.id]}")
elif result == 'lose':
bot.reply_to(message, f"Ты выбрал {user_choice}, я выбрал {bot_choice}. Ты проиграл. Твои очки: {user_scores.get(message.chat.id, 0)}")
else:
bot.reply_to(message, f"Ты выбрал {user_choice}, я выбрал {bot_choice}. Ничья! Твои очки: {user_scores.get(message.chat.id, 0)}")

def determine_winner(player_choice, bot_choice):
if player_choice == bot_choice:
return 'draw'
elif (player_choice == 'камень' and bot_choice == 'ножницы') or
(player_choice == 'ножницы' and bot_choice == 'бумага') or
(player_choice == 'бумага' and bot_choice == 'камень'):
return 'win'
else:
return 'lose'

bot.polling()

Не забудьте заменить 'YOUR_TELEGRAM_BOT_TOKEN' на токен вашего бота. Этот скрипт создает телеграм-бота, который реагирует на команды /камень, /ножницы и /бумага, определяет победителя и ведет подсчет очков.