Моя первая игра на Python

Начинающий
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
2
Реакции[?]
0
Поинты[?]
0
Я изучаю python +- неделю.

Изучая тематические форумы наткнулся на статью где новичок как я поделился своей первой игрой. Я очень вдохновился и решил потренироваться на его коде и дописать его.



Python:
import random
from random import randint
import colorama
from colorama import Fore, Back, Style
colorama.init()

class user_data:
    balance = 10000
    history = 0
    total_bet = 0
    lose_sum = 0
    win_sum = 0

running = True

print(Back.BLACK)
print(Fore.GREEN)

print('Добро пожаловать в Python Game!')
random_number = random.randint(1,3)

def start_game():
    user_number = int(input('Введите число от 1 до 3: '))
    try:
        if user_number == random_number:
            user_data.history += 1
            user_data.win_sum += sum_bet
            user_data.total_bet += sum_bet
            user_data.balance += sum_bet
            print(Fore.CYAN,f"Поздравляем, вы выиграли!\nБыло загадано число {random_number}")
        else:
            if user_number < 1:
                print('Неверное число!')
                start_game()
            else:
                if user_number > 3:
                    print('Неверное число!')
                    start_game()
                else:
                    user_data.history += 1
                    user_data.lose_sum += sum_bet
                    user_data.total_bet += sum_bet
                    user_data.balance -= sum_bet
                    print(Fore.RED, f'Извините, вы проиграли!\nБыло загадано число {random_number}')
    except:
        print('Неверное значение!')
        start_game()

while True:
    random_number = random.randint(1, 3)
    print(Fore.GREEN)
    text = ['Что вас интересует?\n', '1. Начать игру', '2. Статистика профиля', '3. Выйти из игры', 'Ваш ответ: ']
    user_source = input('\n'.join(text))

    if user_source == '1':
        sum_bet = int(input('Чтобы победить в игре, вам нужно угадать загаданное число...\nВведите сумму ставки: '))
        if sum_bet < user_data.balance or sum_bet == user_data.balance:
            print('Игра началась!')
            start_game()
        elif sum_bet > user_data.balance:
            print(Fore.RED,f'У вас недостаточно средств!\nВведите сумму не превышающую ваш баланс {user_data.balance}')
    if user_source == '2':
        print(Fore.CYAN,f'\nБаланс: {user_data.balance}\nВсего игр: {user_data.history}\nОбщая сумма ставок: {user_data.total_bet} \nВсего выиграно {user_data.win_sum}', Fore.RED,f' \nВсего проиграно {user_data.lose_sum}')
    if user_source == '3':
        action_game = input('Вы хотите выйти из игры? [да], [нет]: ')
        if action_game == 'да' or action_game == 'Да':
            print('Как скажете!')
            break
        elif action_game == 'нет' or action_game == 'Нет':
            print('Продолжаем')
Заебись? или хуево?
 
Начинающий
Статус
Оффлайн
Регистрация
7 Янв 2019
Сообщения
55
Реакции[?]
5
Поинты[?]
0
Ну если у тебя игра работает так, как ты этого хотел, то это заебись.
 
Пользователь
Статус
Оффлайн
Регистрация
8 Дек 2019
Сообщения
322
Реакции[?]
38
Поинты[?]
0
трай же нужен только для user_number = int(input('Введите число от 1 до 3: ')), а у тебя вообще это туда не входит
 
Сверху Снизу