плохо знакомы с программированием, пожалуйста, потерпите меня .......
У меня есть игра «камень / бумага / ножницы», которая отлично работает. Я знаю, что, вероятно, мог бы сделать это с 10% кода, который я фактически использовал, но, пожалуйста, используйте мой код, чтобы объяснить мне, это то, как я понимаю это в данный момент.
Я хочу добавить кнопку (GPIO03) где-нибудь в коде, чтобы полностью выйти из игры. Я за 2 дня все перепробовал. but.is_pressed, but.wait_for_press и т. д. Я просто не могу заставить его работать. Может быть, есть кое-что, о чем я еще не знаю, или я просто неправильно это использую.
Может ли кто-нибудь добавить или изменить код, чтобы полностью выйти из игры при нажатии кнопки в любом месте игры? Я в своем уме ...
from gpiozero import LED, Buzzer, Button
from time import sleep
buz = Buzzer(2)
but = Button(3)
def rps():
ledg = LED(15)
ledr = LED(14)
ledw = LED(18)
if p1 == 'r' and p2 == 'r':
print("Draw!!")
ledw.on()
sleep(3)
ledw.off()
elif p1 == 'p' and p2 == 'p':
print("Draw!!")
ledw.on()
sleep(3)
ledw.off()
elif p1 == 's' and p2 == 's':
print("Draw!!")
ledw.on()
sleep(3)
ledw.off()
elif p1 == 'r' and p2 == 'p':
print("P2 wins!!")
ledr.on()
sleep(3)
ledr.off()
elif p1 == 'r' and p2 == 's':
print("P1 wins!!")
ledg.on()
sleep(3)
ledg.off
elif p1 == 'p' and p2 == 'r':
print("P1 wins!!")
ledg.on()
sleep(3)
ledg.off
elif p1 == 'p' and p2 == 's':
print("P2 wins!!")
ledr.on()
sleep(3)
ledr.off()
elif p1 == 's' and p2 == 'r':
print("P2 wins!!")
ledr.on()
sleep(3)
ledg.off
elif p1 == 's' and p2 == 'p':
print("P1 wins!!")
ledg.on()
sleep(3)
ledr.off()
while True:
p1 = input("Choose r/p/s P1: (Type 'quit' to exit) ")
if p1 == 'r' or p1 == 'p' or p1 == 's':
pass
elif p1 == 'quit':
print("Bye!!")
break
else:
print("Invalid choice P1. Try again")
buz.on()
sleep(1)
buz.off()
continue
while True:
p2 = input("Choose r/p/s P2: (Type 'quit' to exit) ")
if p2 == 'r' or p2 == 'p' or p2 == 's':
pass
elif p2 == 'quit':
print("Chow!!")
return
else:
print("Invalid choice P2. Try again")
buz.on()
sleep(1)
buz.off()
continue
rps()
break
Спасибо