Первая текстовая играPython

Программы на Python
Anonymous
Первая текстовая игра

Сообщение Anonymous »

Я начал работу над своей первой текстовой игрой и хотел бы получить совет, как ее оптимизировать. Я программирую его полностью на Python 3.12. Это всего лишь мой второй личный проект, и я никогда раньше не делал ничего подобного.
Когда я был моложе, я играл в Super Punch Out на SNES со своим отцом, поэтому я сделал игру о боксе. прямо сейчас у меня есть только базовый порядок хода, и я был бы очень признателен за любые ваши советы о том, как я могу его улучшить, прежде чем я начну проект всерьез.
формирование списков игроков и врагов - это сначала HP, затем выносливость, а затем действия
import random
player = [100, 100, ""]
enemy = [100, 100, 0]
hit = [0, 0]
damage = [10, 30]
turn = "player"
while player[0] > 0 and enemy[0] > 0:
hit[0] = random.randint(1,4)
hit[1] = random.randint(1,2)
if turn == "player":
turn = "enemy"
print("----------")
print("enemy health = " + str(enemy[0]))
print("player health = " + str(player[0]))
print("player stamina = " + str(player[1]))
player[2] = input(""" actions:
1. jab (takes 5 stamina)
deals 10 damage
2. uppercut (takes 35 stamina)
deals 30 damage
3. block (gives 10 stamina)
""")
if player[2] == "1":
if player[1] >= 5:
player[1] -= 5
if hit[0] == 4:
print("----------")
print("you miss, now enemy turn")
else:
enemy_hp -= 10
else:
print("----------")
print("you don't have the stamina to do that. You will block with your turn. now enemy turn")
player[2] = "3"
if player[2] == "2":
if player[1] >= 35:
player[1] -= 35
if hit[1] == 2:
print("----------")
print("you miss, now enemy turn")
else:
enemy[0] -= 30
else:
print("----------")
print("you don't have the stamina to do that. You will block with your turn. now enemy turn")
if player[2] == "3":
player[1] += 10

if turn == "enemy":
turn = "player"
enemy[2] = random.randint(1,3)
if enemy[2] == 1:
enemy[1] -= 5
print("----------")
print("the enemy throws a jab")
if hit[0] == 4:
print("the enemy misses now your turn")
else:
if player[2] == "3":
player[0] -= (damage[0] * 0.5)
if enemy[2] == 2:
enemy[1] -= 30
print("The enemy throws an uppercut")
if hit[1] == 2:
print("The enemy misses his uppercut")
elif player[2] == "3":
print("because you blocked, you take half damage")
player[0] -= (damage[0] * 0.5)
else:
player[0] -= 30
print("the enemy lands his uppercut and deals 30 damage")
if enemy[2] == 3:
print("----------")
print("the enemy blocks, + 10 enemy stamina")
enemy[1] += 10

Вернуться в «Python»