2018-02-13 13:38:49 +00:00
|
|
|
from board import Board
|
|
|
|
|
2018-02-07 15:27:03 +00:00
|
|
|
class Human:
|
2018-02-13 13:38:49 +00:00
|
|
|
def __init__(self, sym):
|
2018-02-05 21:31:34 +00:00
|
|
|
self.sym = sym
|
|
|
|
|
|
|
|
def switch(self,cur):
|
2018-02-06 22:29:51 +00:00
|
|
|
return -1 if cur == 1 else 1
|
2018-02-05 21:31:34 +00:00
|
|
|
|
2018-02-06 22:29:51 +00:00
|
|
|
def get_sym(self):
|
|
|
|
return self.sym
|
|
|
|
|
2018-02-22 13:01:28 +00:00
|
|
|
def make_move(self, board, roll):
|
2018-02-13 13:38:49 +00:00
|
|
|
print(Board.pretty(board))
|
|
|
|
print("Human: ",roll,"-"*20)
|
|
|
|
print(Board.find_legal_moves(board,self.sym,roll[0]))
|
2018-02-05 21:31:34 +00:00
|
|
|
|
|
|
|
print("What to do with the first roll?")
|
|
|
|
cmds_1 = input().split(",")
|
2018-02-13 13:38:49 +00:00
|
|
|
|
|
|
|
while not Board.is_move_valid(board, roll[0], self.sym, cmds_1):
|
2018-02-05 21:31:34 +00:00
|
|
|
print("Invalid move, try again.")
|
|
|
|
cmds_1 = input().split(",")
|
|
|
|
|
2018-02-13 13:38:49 +00:00
|
|
|
new_board = Board.move_thing(board, self.sym, int(cmds_1[0]), int(cmds_1[1]))
|
2018-02-05 22:50:31 +00:00
|
|
|
|
2018-02-05 21:31:34 +00:00
|
|
|
|
2018-02-13 13:38:49 +00:00
|
|
|
print(Board.pretty(board))
|
|
|
|
print(Board.find_legal_moves(new_board, self.sym,roll[1]))
|
2018-02-05 21:31:34 +00:00
|
|
|
print("What to do with the second roll?")
|
|
|
|
cmds_2 = input().split(",")
|
2018-02-13 13:38:49 +00:00
|
|
|
while not Board.is_move_valid(new_board, roll[1], self.sym, cmds_2):
|
2018-02-05 21:31:34 +00:00
|
|
|
print("Invalid move")
|
|
|
|
cmds_2 = input().split(",")
|
|
|
|
|
|
|
|
|
2018-02-13 13:38:49 +00:00
|
|
|
return Board.move_thing(new_board, self.sym, int(cmds_2[0]), int(cmds_2[1]))
|
2018-02-05 21:31:34 +00:00
|
|
|
|
|
|
|
|