einheit_attackable hinzugefügt. Angriffe gehen nur aus angrenzenden Feldern und nicht diagonal
This commit is contained in:
parent
01d0b1acfc
commit
26fcb310be
11
logik.pl
11
logik.pl
@ -43,6 +43,14 @@ betrag(In, Out) :-
|
|||||||
).
|
).
|
||||||
|
|
||||||
|
|
||||||
|
% Prüft ob Einheiten sich in angrenzenden feldern befinden
|
||||||
|
einheit_attackable(X1, Y1, X2, Y2) :-
|
||||||
|
betrag(X1 - X2, Xd),
|
||||||
|
betrag(Y1 - Y2, Yd),
|
||||||
|
Distance is Xd + Yd,
|
||||||
|
Distance < 2.
|
||||||
|
|
||||||
|
|
||||||
% Bewegt die Einheit des aktuellen Spielers an position Xold, Yold
|
% Bewegt die Einheit des aktuellen Spielers an position Xold, Yold
|
||||||
% auf position Xnew, Ynew
|
% auf position Xnew, Ynew
|
||||||
einheit_move(Xold, Yold, Xnew, Ynew) :-
|
einheit_move(Xold, Yold, Xnew, Ynew) :-
|
||||||
@ -76,6 +84,9 @@ einheit_move(Xold, Yold, Xnew, Ynew) :-
|
|||||||
% Die Einheit des aktuellen Spielers auf Xattack, Yattack
|
% Die Einheit des aktuellen Spielers auf Xattack, Yattack
|
||||||
% greift die Einheit des anderen auf Xdefend, Ydefend an
|
% greift die Einheit des anderen auf Xdefend, Ydefend an
|
||||||
einheit_attack(Xattack, Yattack, Xdefend, Ydefend) :-
|
einheit_attack(Xattack, Yattack, Xdefend, Ydefend) :-
|
||||||
|
%Prüfen ob die Einheit angegriffen werden kann
|
||||||
|
einheit_attackable(Xattack, Yattack, Xdefend, Ydefend),
|
||||||
|
|
||||||
% Player token abziehen für den angriff-move
|
% Player token abziehen für den angriff-move
|
||||||
% Falls nix übrig wird der angriff abgebrochen da false
|
% Falls nix übrig wird der angriff abgebrochen da false
|
||||||
change_player_tokens_decrement,
|
change_player_tokens_decrement,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user