V oblasti Deklarácia premenných deklarujeme premenné typu PImage (obrázok):
PImage hrac, kolac;
Hru uložíme na disk a do priečinka so skicou skopírujeme obrázkové súbory hrac.png (60 x 60 px) a kolac.png (30 x 30 px). Tieto súbory si môžeme vytvoriť v nejakom rastrovom editore, napríklad Skicár alebo Piskel.
Vo funkcii setup()
načitame grafiku zo súboru do obrázkových premenných:
hrac = loadImage("hrac.png");
kolac = loadImage("kolac.png");
Vo funkcii draw()
budeme odteraz kresliť na súradnice namiesto obdĺžnikov obrázky:
(Všimni si, že si najprv vypočítame súradnice objektov do samostatných premenných hracX, hracY, kolacX, kolacY
- zjednodušenie vykreslovacích príkazov).
// hrac
hracX = mouseX;
hracY = height - 60;
image(hrac, hracX, hracY);
// kolac
image(kolac, kolacX, kolacY);
Kolízia je prekryvanie dvoch pohyblivých objektov - sprajtov na obrazovke.
Dá sa zistiť viacerými spósobmi. Najjednoduchší je zistiť vzdialenosť dvoch bodov na obrazovke. My budeme zisťovať vzdialenosť stredov objektov.
Na koniec draw()
vložíme nový kód:
// kolizia
if (dist(kolacX+15, kolacY+15, hracX+30, hracY+30) < 30) {
kolacX = random(width);
kolacY = 0;
}
Funkcia `dist(x1, y1, x2, y2) vráti číslo -> vzdialenosť dvoch bodov v pixeloch.
Deklarujeme novú premennú skore
:
int skore;
Na začiatku (v setup()
vynulujeme:
skore = 0;
Zobrazenie skóre bode v draw()
:
// skore
textSize(40);
text("Skóre: " + skore, 0, height);
}
Funkcia textSize()
nastavuje veľkosť písma.
Funkcia text()
vypíše text na súradnice. Súradnice udávajú ľavý dolný roh textu (t.j. začiatok čiary, na ktorej písmená "sedia").
Otázka na čitateľa. Máme príkaz na zväčšenie skóre. Kam do programu ho pridáme?
skore = skore + 1;