einheit_move agepasst
This commit is contained in:
parent
2d1547d458
commit
af87235c01
9
logik.pl
9
logik.pl
@ -19,18 +19,15 @@ player_turn(Player) :-
|
||||
|
||||
% Bewegt die Einheit des Spielers an position Xold, Yold
|
||||
% um Xmove, Ymove in die jeweilige Richtung
|
||||
einheit_move(Player, Xold, Yold, Xmove, Ymove) :-
|
||||
einheit_move(Player, Xold, Yold, Xnew, Ynew) :-
|
||||
% Die Einheit entfernen
|
||||
retract( einheit_active(Player, Type, Xold, Yold) ),
|
||||
|
||||
% Neue position berechnen
|
||||
Xnew is Xold + Xmove,
|
||||
Ynew is Yold + Ymove,
|
||||
|
||||
% Die Einheit an die neue Position setzen
|
||||
assert( einheit_active(Player, Type, Xnew, Ynew) ),
|
||||
|
||||
% Errechnen der verbleibenden Tokens
|
||||
retract( player_tokens(Player, Tokens) ),
|
||||
TokensNew is Tokens - Xmove - Ymove,
|
||||
% die berechnung muss noch mal angeschaut werden
|
||||
TokensNew is Tokens - (Xold - Xnew) - (Xold - Ynew),
|
||||
assert( player_tokens(Player, TokensNew) ).
|
Loading…
x
Reference in New Issue
Block a user