Miten saan esim. neliön liikkumaan?
Esim. Paqinan vasemmalle, niin se liikkuu vasemmalle.
Voisitteko kirjoittaa esimerkin.
(olen tekemässä ensimmäistä peliäni missä on grafiikkaa)
Vähennät x:ää yhellä ja plänttäät neliön siihen. Vanha neliö tosin kannattaa pyyhkiä pois.
Jotenkin tälleen puolipseudona.
x=160,y=100 piirra_nelio x,y if vasen then x-- piirra_nelio x,y pyyhi_edellinen if alas then y++ piirra_nelio x,y pyyhi_edellinen
ois hyvä laittaa jonku luupin sisään toi ja jonkinnäkönen näppäinhandleri mukaan.
Ja järjenkäyttö ja oppaiden lukeminen on luvallista myös tässä tapauksessa ;)
Tarvitset silmukan, joka jatkuvasti tarkistaa, onko nuolinäppäimiä painettu. Jos on, vanha neliö pyyhitään, neliölle lasketaan uusi paikka, ja uusi neliö piirretään. Silmukan loppuun kannattaa laittaa pieni hidastus, jotta liike ei olisi liian nopea.
Yksinkertainen mutta toimiva esimerkki:
'muuttujien tyyppi kokonaisluku DEFINT A-Z '320x200-resoluutio, 256 väriä SCREEN 13 'aloituskoordinaatit x = 100 y = 100 DO SELECT CASE INKEY$ CASE CHR$(0) + CHR$(75) 'vasemmalle x = x - 1 CASE CHR$(0) + CHR$(77) 'oikealle x = x + 1 CASE CHR$(0) + CHR$(72) 'ylös y = y - 1 CASE CHR$(0) + CHR$(80) 'alas y = y + 1 CASE CHR$(27) 'Esc END END SELECT 'jos x- tai y-koordinaatti on muuttunut, päivitetään näyttö IF x <> vx OR y <> vy THEN 'pyyhitään vanha neliö LINE (vx, vy)-STEP(10, 10), 0, B 'piirretään uusi neliö LINE (x, y)-STEP(10, 10), 1, B 'tallennetaan vanhat koordinaatit vx = x vy = y END IF 'hidaste WAIT &H3DA, 8 LOOP
Täydellinen lista näppäinkoodeista löytyy osoitteesta https://www.ohjelmointiputka.net/oppaat/opas.
Seuraavaksi teet semmoisen mikä tarkastelee kahta nappia samaan aikaan niin että pystyy liikkumaan myös vinosti :)
lainaus:
Seuraavaksi teet semmoisen mikä tarkastelee kahta nappia samaan aikaan niin että pystyy liikkumaan myös vinosti :)
Se on jo tuossa koodiesimerkissä mahdollista. Jos haluat mennä yläviistoon, niin näpytät esim. oikealle-ylös-oikealle-ylös jne.
lainaus:
lainaus:
Seuraavaksi teet semmoisen mikä tarkastelee kahta nappia samaan aikaan niin että pystyy liikkumaan myös vinosti :)
Se on jo tuossa koodiesimerkissä mahdollista. Jos haluat mennä yläviistoon, niin näpytät esim. oikealle-ylös-oikealle-ylös jne.
Siis ehkäpä Jope tarkoitti sellaista, että nimenomaan yhdellä liikahduksella liikutaan yläviistoon, oikea-ylös -yhdistelmällä tulee kaksi liikahdusta.
Juuri sitä tarkotinkin :)
Nuolinäppäimet voi tehdä muutenkin kuin numeroilla:
vasen:
CHR$(0) + "K"
oikea:
CHR$(0) + "M"
ylös:
CHR$(0) + "H"
alas:
CHR$(0) + "P"
niin voi, tota mä käytän yleensä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.