Lépés ellenőrzés táblás játékban? (lent)
Figyelt kérdés
Egy táblás játékot készítek és a lépésnél az a kritérium, hogy csak szomszédos négyzetre szabad lépni, ezt hogyan tudom ellenőrizni, magát a táblát úgy építem föl, hogy a panelra Jbutton objektumokat rakok, és úgy gondoltam, hogy mivel egymásba ágyazott ciklussal csinálom ezért, minden button-t úgy adok hozzá, hogy paraméterként a koordinátáit is hozzá adom, és akkor ennek a segítségével, hogy ismerem minden mezőnek a koordinátáját, hogyan tudom ellenőrizni, hogy amire clickelek, az szomszédja az előzőnek?2017. jan. 7. 11:49
1/4 anonim válasza:
Letárolod az utolsó legál lépés koordinátáit és ellenőrzöd a köv. klikk pozícióját.
2/4 A kérdező kommentje:
Jó ezt értem, de pl. van egy mátrixom ami a táblám
[X(0,0)] [ 0,1 ] [ 0,2 ]
[ 1,0 ] [ 1,1 ] [ 1,2 ]
[ 2,0 ] [ 2,1 ] [ 2,2 ]
Az X jelöli az utolsó legált vagy mondjuk innen indul a játék és innen kell lépkedni, a számok meg persze az adott mezők el mentet koordinátái, na ebben az esetben én léphete az (1,0) (1,1) (0,1) mezőkre, de én nem látom ebben a logikát, hogy hogyan tudnák ere egy "if"-et írni
2017. jan. 7. 12:02
3/4 anonim válasza:
Ezek szerint a mellette azt is jelenti, hogy ha sarkosan érintkezik, íme:
Veszed a koordináták távolságát (a - aktuális, r - korábbi):
Dx = abs(Xa - Xr)
Dy = abs(Ya - Yr)
Ha Dx=0 és Dy==0, akkor nem jó a lépés, hiszen ugyanarra lépett, mint a régi (vagy induló) lépés.
Különben ha Dx<=1 és Dy<=1, akkor jó a lépés.
4/4 A kérdező kommentje:
Értem :) Köszönöm szépen ez teljesen jó
2017. jan. 7. 12:41
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!