Plouj
public text v1 · immutable%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Get move for player 1 (human)
% - show state, ask for move, verify if move is valid
% - if move is invalid, recall getmove until a valid move is input
getmove(1,State,Move) :-
showState(State),
write('Please input move followed by a period: '),
read(Proposed),
validmove(1,State,Proposed), !,
Move = Proposed.
getmove(1,State,Move) :-
writeln('Invalid Move Proposed.'),
getmove(1,State,Move).