Robię kalkulator Damage'a i po każdych obliczeniach, statystyki muszą wrócić do stanu początkowego podanego prze gracza, jednak tego nie robią, mogę prosić o pomoc? (Skrypt nie jest skończony gdyż najpierw chcę wyeliminować problem) Kod:
Gracz1Staty = [0, 0, 0, 0]
Gracz2Staty = [0, 0, 0, 0]
Gracz1pokemon = str(input("Gracz 1, podaj nazwę pokemona: "))
Gracz1Staty[0] = int(input("Podaj atak: "))
Gracz1Staty[1] = int(input("Podaj życie: "))
Gracz1Staty[2] = int(input("Podaj tarczę: "))
Gracz1Staty[3] = int(input("Podaj speed: "))
Gracz2pokemon = str(input("Gracz 2, podaj nazwę pokemona: "))
Gracz2Staty[0] = int(input("Podaj atak: "))
Gracz2Staty[1] = int(input("Podaj życie: "))
Gracz2Staty[2] = int(input("Podaj tarczę: "))
Gracz2Staty[3] = int(input("Podaj speed: "))
Gracz1Statyw = Gracz1Staty
Gracz2Statyw = Gracz2Staty
while True:
if Gracz1Statyw[3] > Gracz2Statyw[3]:
print(Gracz1pokemon, " atakuje!")
Gracz2Statyw[2] /= 2
Gracz1Statyw[0] = Gracz1Statyw[0] - Gracz2Statyw[2]
Efektywnosc = float(input("Podaj efektywność ataku: "))
if Efektywnosc == 0:
Gracz1Statyw[0] = 0
elif Efektywnosc == 0.5:
Gracz1Statyw[0] *= 0.5
elif Efektywnosc == 2:
Gracz1Statyw[0] *= 2
Gracz2Statyw[1] -= Gracz1Statyw[0]
print(Gracz1pokemon, " zadał ", str(Gracz1Statyw[0].__round__()), " życia")
if Gracz2Statyw[1] <= 0:
print(Gracz2pokemon, " wyeliminowany!")
Gracz2Staty.clear()
exit(0)
else:
print(Gracz2pokemon, " ma ", str(Gracz2Statyw[1].__round__()), " życia")
Gracz1Statyw = Gracz1Staty
Gracz2Statyw = Gracz2Staty