Xaeruz
@Xaeruz
Программный Змей

В чём ошибка скрипта?

Делаю скрипт который позволяет пользователю делать ставку, но возникла проблема, что иногда пользователю то добавляется больше его ставки, то убирается больше его ставки, то уходит вообще в минус.
Вот сам скрипт:
msg = event.obj["text"].lower()
			text = msg.split(' ', maxsplit=1)
			if text[0] == "!ставка":
			    get_msg = text[1].split(" ")
			    get_side = get_msg[0]
			    get_rate = get_msg[1:]
			    text_rate = ' '.join(get_rate)
			    value_rate = re.sub(r'[^0-9.]+', r'', text_rate)
			    user_id = event.obj["from_id"]
			    sides = ["орел", "решка"]
			    if value_rate in "":
			        send("❗ | Неправильно указан формат!\n✔ | Правильный формат: !ставка [орел/решка] [сумма]")
			    if user_id not in money_bag:
			        send("❗ | Вы ещё не завели себе кошелёк.\n✔ | Кошелёк можно завести командой: !кошелёк")
			    if money_bag[user_id] < int(value_rate):
			        send("❗ | Вам не хватает средств чтобы сделать ставку на эту сумму.")
			    if money_bag[user_id] == int(value_rate):
			        send("❗ | Нельзя ставить весь кошелёк как ставку.")
			    if value_rate:
			        if get_side in sides:
			        	if user_id in money_bag:
				            if money_bag[user_id] >= int(value_rate):
				                if money_bag[user_id] != int(value_rate):
				                    coin_side = random.randint(1,100)
				                    if coin_side <= 40:
				                        money_bag[user_id] = money = money + int(value_rate)
				                        with open('money_bag.txt','w') as f:
				                            for key,val in money_bag.items():
				                                f.write('{}:{}\n'.format(key,val))
				                        send("✔ | Вы победили!\n | Вам зачислено " + str(value_rate) + " руб.")
				                    else:
				                        money_bag[user_id] = money = money - int(value_rate)
				                        with open('money_bag.txt','w') as f:
				                            for key,val in money_bag.items():
				                                f.write('{}:{}\n'.format(key,val))
				                        send("❌ | Вы проиграли!\n | С вашего счёта списано " + str(value_rate) + " руб.")
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
Что это?
money_bag[user_id] = money = money + int(value_rate)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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