Allegro-ban kezdtem el írni egy Snake játékot, hogy tudom megoldani, hogy a kígyó teste kövesse a fejet?
Allegro 5-ben írom, még kezdő vagyok, lehet, hogy már az elején elrontottam.
Így struktúráltam a kígyót:
struct Snake_block
{
int x;
int y;
bool exist;
};
struct Snake
{
int direction;
Snake_block blocks[10];
float speed;
int score;
};
Minden blokknak, van koordinátája, ill egy logikai változója, hogy létezik-e vagy nem. A kígyónak van haladási iránya, 10 db blokkja (a 10 db nem végleges), sebesség és pont. Viszont azt nem tudom megcsinálni, hogy a blokkok kövessék a kígyó fejének vonalát. Esetleg tudnátok adni egy kis segítséget?
"(a 10 db nem végleges)"
hmm... inkább kezdd újra, a kígyó teste legyen egy láncolt lista, és amikor mozog, akkor legvégétől indulva minden blokk koordinátáját változtasd meg az előző blokkéra, a legutoljára (ami a fej), pedig írd be az új irányt
Az egyik típusú megoldás a kígyót tárolja, ide nem árt a láncolt lista, vagy nagyonhosszú tömb.
Másik lehetőség a pályát tárolni fix tömbben, majd ebben mozgatni a kígyót. (fej, test, üres, kaja, fal, akármi szimbólumokkal.)
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!