Kto este vie Pascal? :)

Programovacie jazyky, rady, poradňa...
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Kto este vie Pascal? :)

Príspevok od používateľa BX »

zdravim, robim hru v pascale a neviem si rady... urcite kazdy pozna hru arkanoid :D
Mam prostredie, ovladanie a taq, ale neviem urobit tu gulicku co beha...
Mal som v plane urobit to taq aby sa ta gula spustila vzdy na inom mieste a bolo ju treba len zachytit a tak to opakovat niekolko krat a potom ze kolko krat to hrac zachytil. No zasekol som sa na tom ze neviem tie 2 veci spojit (beh gulicky a ovladanie toho "odrazaca")
Tu mate ten prgm, kto by sa mohol na to kuknut
// podotykam, trz je v tom programe dost CHAOS , lebo som uz skusal veci a blbosti. Tagze ak by ste mi vedeli pomoct :)

Najlepsie by bolo keby ste to vedeli urobit taq aby sa ta gula aj odrazala (to uz vobec neviem, preto som chcel to spustanie... sak uvidite)
Prílohy
ARKANOID_BX.rar
(603 Bajtov) 42 stiahnutí
programator
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 475
Registrovaný: 18 apr 2005, 8:31
Bydlisko: Papua new Guinea
Kontaktovať používateľa:

Príspevok od používateľa programator »

Myslim ze najjednoduchsie riesenie by bolo umiestnit kod vykonavania padu gulicky a akciu klavesnice do nekonecneho cyklu, nejako takto (nevsimam si syntax, ale podstatu) :

Kód: Vybrať všetko

for ( ; ; ) {
   akcia_klavesnice();
   pohyb_plosiny();
   pohyb_gulicky();
   prepis_skore();
   ...
}
A tak teda sa kazdym behom cyklu skontroluje scancode klavesnice, posunie sa gulicka, upravi skore a pod...

Existuje viac rieseni, dalsie moze byt vyuzitie SW prerusenia procesora... teda by si si vyhradil 1 prerusenie pre klavesnicu, kde by si ju obsluhoval a pod, no myslim ze riesenie je dost zlozite a nie velmi flexibilne...
Ale na druhej strane, nejaka akcia sa predsalen moze vykonavat v preruseni :)
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Príspevok od používateľa BX »

No toto mi moc nepomohlo :?
Ale diki (K+)
Napísať odpoveď