-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMain.py
45 lines (35 loc) · 1.56 KB
/
Main.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
#inicia o jogo
import chess
from IPython.display import SVG, clear_output
if __name__ == "__main__":
def main():
chess_board = Chessboard()
try:
jogador_comeca = input("Você deseja começar? (s/n): ").strip().lower() == 's'
while not chess_board.is_game_over():
clear_output(wait=True)
chess_board.display()
if jogador_comeca:
jogador_move = input("Faça seu movimento: ")
if not chess_board.make_move(jogador_move):
print("Movimento inválido, tente novamente.")
continue
else:
print("Stockfish está fazendo um movimento...")
chess_board.play_stockfish_move()
jogador_comeca = not jogador_comeca
# Mostra a real ultima jogada
clear_output(wait=True)
chess_board.display()
# Exibe os dois últimos tabuleiros, alem da ultima jogada, apenas se o jogo terminou
print("\nÚltimos dois tabuleiros antes do final:")
for svg_str in chess_board.board_history_svg[-2:]:
display(SVG(svg_str))
# Obtenha um resultado preciso e informativo
game_result, score = chess_board.get_game_result()
print(f"\n{game_result}")
if score is not None:
print(f"A pontuação da posição final é: {score}")
except KeyboardInterrupt:
print("\nJogo interrompido pelo usuário.")
main()