Hra - Chytanie

Rastrová grafika

Príprava súborov

Uložíme prázdny program, aby sme vytvorili priečinok. @

V Prieskumníku súborov otvoríme nový priečinok, vidíme v ňom súbor .pde (zdrojový kód). @

Do priečinka vložíme grafiku postava a koláč. @

Načítanie grafiky

Definujeme obrázkové premenné a načítame do nich hodnoty:

PImage postava, kolac;                                  // deklarácia dvoch obrázkových premenných

void setup() {
  size(500, 500);
  postava = loadImage("kuchar.png");            // do premennej postava vložíme výsledok funkcie, ktorá číta obrázok
  kolac = loadImage("kolac.png");
}

vykreslenie postáv

...

void draw() {
  background(0);
  image(postava, mouseX, 400);                          // vykreslíme obrázok z premennej postava na súradnice  
  image(kolac, 100, 0);                                         // koláč
}

Skóre a životy na obrazovke

Definujeme premenné

int skore, zivoty;

Inicializujeme začiatočné životy

  skore = 0;
  zivoty = 3;

Vypíšeme texty na oobrazovku:

  text("skore: " + skore, 400, 30);
  text("zivoty: " + zivoty, 10, 30);  

Na začiatku ešte nastavíme veľkosť textu:

  textSize(30);

Celý program vyzerá takto. Postava reaguje na ovládanie myšou:

PImage postava, kolac;
int skore, zivoty;

void setup() {
  size(500, 500);
  textSize(30);
  postava = loadImage("kuchar.png");
  kolac = loadImage("kolac.png");
  skore = 0;
  zivoty = 3;
}

void draw() {
  background(0);
  image(postava, mouseX, 400);                  // postava sa kreslí na  x súradnicu myši.
  image(kolac, 200, 0);
  text("skore: " + skore, 400, 30);
  text("zivoty: " + zivoty, 10, 30);  
}

Padanie predmetu

Úloha: Pridajte číselnú premennú kolacY, ktorá na začiatku pádu bude 0 a zakaždým po vykreslení zväčšíme o 1. Nájdi správne miesta v programe, kam treba vložiť nasledujúce príkazy.

float kolacY;
kolacY = 0;
kolacY = kolacY + 3;

Výsledný program vyzerá takto:

PImage postava, kolac;
int skore, zivoty;
float kolacY;    

void setup() {
  size(500, 500);
  textSize(30);
  postava = loadImage("kuchar.png");
  kolac = loadImage("kolac.png");
  skore = 0;
  zivoty = 3;
  kolacY = 0;   
}

void draw() {
  background(0);
  image(postava, mouseX, 400);                  // postava sa kreslí na  x súradnicu myši.
  image(kolac, 200, 0);
  text("skore: " + skore, 400, 30);
  text("zivoty: " + zivoty, 10, 30);  

  kolacY = kolacY + 3;    
}

Keď skicu spustíš, uvidíš koláč, ako sa pohybuje smerom nadol a spodným okrajom opustí obrazovku.

Aby sa koláč po oustení obrazovy objavil znova na hornom okraji, vložíme do programu príkaz if (poznáš zo Scratch).

if (kolacY > 500) kolacY = 0;

Tento príkaz najprv

Detekcia, že koláč nebol chytený:

Použijeme podmienený príkaz if (poznáš už zo Scratch):

  if (kolacY > height)  kolacY = 0;         // ak suradnica je vacsia ako vyska obrazovky, tak ju nastav opat na 0.