homework commit
This commit is contained in:
+71
@@ -0,0 +1,71 @@
|
||||
import random
|
||||
import math
|
||||
|
||||
import game_data as gd
|
||||
|
||||
from core import Trainer
|
||||
|
||||
def Main():
|
||||
setup_complete = False
|
||||
trainer_name = input("Enter your trainer name: ")
|
||||
while not setup_complete:
|
||||
try:
|
||||
print("Available starter Pokemon: ", gd.available_starter_names)
|
||||
starter_name = input("Choose your starter Pokemon: ")
|
||||
trainer = Trainer(name=trainer_name, starter_name=starter_name)
|
||||
print(f"{trainer.name} has chosen {trainer.get_active_pokemon().name} as their starter Pokemon!")
|
||||
setup_complete = True
|
||||
except ValueError as e:
|
||||
print(e)
|
||||
print("Please try again...")
|
||||
continue
|
||||
trainer.print_trainer_info()
|
||||
|
||||
cpu_trainer = Trainer(name="CPU", starter_name=random.choice(gd.available_starter_names))
|
||||
print(f"CPU has chosen {cpu_trainer.get_active_pokemon().name} as their starter Pokemon!")
|
||||
cpu_trainer.print_trainer_info()
|
||||
continue_playing = True
|
||||
while continue_playing:
|
||||
selected_pokemon_combat_flag = False
|
||||
while not selected_pokemon_combat_flag:
|
||||
print("Choose a Pokemon from your list to battle with:\n", trainer.get_pokemon_list())
|
||||
player_pokemon = input("Choose:")
|
||||
try:
|
||||
player_pokemon = trainer.get_pokemon(player_pokemon)
|
||||
selected_pokemon_combat_flag = True
|
||||
except ValueError as e:
|
||||
print(e)
|
||||
print("Please try again...")
|
||||
|
||||
selected_combat_move_flag = False
|
||||
while not selected_combat_move_flag:
|
||||
print(f"Choose a move for {player_pokemon.name} to use against {cpu_trainer.get_active_pokemon().name}:\n", player_pokemon.get_moves())
|
||||
player_move_name = input("Choose:")
|
||||
try:
|
||||
#print the move selected by the player
|
||||
print("Your selected move: ")
|
||||
player_pokemon.checkout_move(player_move_name)
|
||||
selected_combat_move_flag = True
|
||||
except ValueError as e:
|
||||
print(e)
|
||||
print("Please try again...")
|
||||
|
||||
#make a combat
|
||||
print('='*30)
|
||||
print("BATTLE RESULTS:")
|
||||
print("Your move:")
|
||||
player_pokemon.useMove(player_move_name, cpu_trainer.get_active_pokemon())
|
||||
player_pokemon.checkout_move(player_move_name)
|
||||
print('-'*30)
|
||||
print("CPU's pokemon")
|
||||
cpu_trainer.get_active_pokemon().print_pokemon_info()
|
||||
print('='*30)
|
||||
|
||||
print("Continue playing? (yes/no)")
|
||||
response = input().strip().lower()
|
||||
if response != "yes":
|
||||
continue_playing = False
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
Main()
|
||||
Reference in New Issue
Block a user