-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNavalBattle.py
85 lines (69 loc) · 3.19 KB
/
NavalBattle.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
from modules.Escolha import Escolha
from modules.Jogador import Jogador
from modules.Partida import partida
def MenuPrincipal():
""" Menu principal do jogo, a partir dele é possível carregar um jogo salvo ou iniciar um novo jogo. """
#------------------------------------------------ Funçoes do Menu -------------------------------------------------#
def gamemodeSelect():
""" Permite ao jogador escolher, o modo de jogo retorna true para player vs player e false player vs bot """
print("\nEscolha o modo de jogo.\n\n"
"[1] - Player vs Player\n"
"[2] - Player vs Bot\n")
gamemode = input(">> ")
try:
gamemode = int(gamemode)
assert gamemode in [1, 2]
if gamemode == 1:
return True
return False
except ValueError:
print("\nInforme um número inteiro !\n")
except AssertionError:
print("\nOpção indisponível !\nTente novamente.")
except Exception:
raise Exception
def NovoJogo(modo):
""" A função novo jogo é responsável por iniciar uma nova partida, se houverem arquivos de jogos salvos
eles são substituidos por novos arquivos gerados pelo jogo """
n1 = input("\nInforme o nome do Player 1: ")
print("\nEscolha de frota ["+str(n1)+"]" )
player1 = Jogador(Escolha(), n1)
player2 = None
if modo == False:
player2 = Jogador(Escolha(True), "Bot", "bot")
else:
n2 = input("\nInforme o nome do Player 2: ")
print("\nEscolha de frota ["+str(n2)+"]")
player2 = Jogador(Escolha(), n2)
#após a escolha das frotas é possível escolher
partida(player1, player2)
#------------------------------------------------ Menu Principal -------------------------------------------------#
print("\n \n"
" ____| |_____| |___, \n"
" _____/__________________ \\_________.-/ \n"
" \\ NAVAL BATTLE / \n"
"~~~~~\\_________________________________/~~~~~/\\~\n"
"~~/\\ ~~~~~~~~~~~~~~~~/\\ ~~~~~~~~~~~/\\~~~~~~~~~~\n"
"~~~~~~~~~~~~~~~/\\~~~~~~~~~~~~~~~~~~~~~~/\\~~~~~~~\n")
continuar = True
while continuar:
print("\nBem-vindo ao jogo de batalha naval.\n\n"
"[1] - Iniciar uma nova partida\n"
"[2] - Finalizar o jogo\n")
option = input(">> ")
try:
option = int(option)
assert option in [1, 2, 3]
if option == 1:
pvp = gamemodeSelect()
if pvp:
NovoJogo(pvp) #se emviar true os dois jogadores são pessoas
elif pvp == False:
NovoJogo(False) #se enviar false apenas o player1 é uma pessoa
if option == 2:
continuar = False
except ValueError:
print("\nInforme um número inteiro !\n")
except AssertionError:
print("\nOpção indisponível !\nTente novamente.")
MenuPrincipal()