Der Weg ist richtig, ist aber doch ganz einfach:
Zitat:
if(ziel.achse < räuber.achse)
{räuber.achse--;}
if(ziel.achse > räuber.achse)
{räuber.achse++;}
|
will also heissen:
i10 -> c11 -> 7 schritte
i>c -> spalte-- schritte-- // 6
h>c -> spalte-- schritte-- //5
g>c -> spalte-- schritte-- //4
f>c -> spalte-- schritte-- //3
e>c -> spalte-- schritte-- //2
d>c -> spalte-- schritte-- //1
c==c -> 10<11 zahl++ schritte-- //0
Ergebnis: Räuber c11, Beute c11-> beute löschen.
du musst in einer schleife die solange läuft wie züge da sind immer prüfen ob die spalte passt -> wenn ja ob die zeile passt. ansonsten eben die spalte soolange anpassen wie züga da sind oder bis die spalte io ist. dann das gleiche mit der zeile. wenn beide gleich beute gefangen.