Sfml lecție, lucrul cu o hartă, descărcarea unei hărți, kychka-pc, sfml

Există mai multe modalități de a adăuga o carte în jocul nostru. Astăzi vom analiza cele mai simple pentru a înțelege. Deci, harta este un set

Deci - în acest caz, trei pătrate (dreptunghi), dar o imagine, bine, ca întotdeauna. Fundalul alb pe partea dreaptă am plecat doar pentru imaginația ta și pentru imaginația ta, că poți să te hrănești (pictează în dreapta) și să experimentezi. Fiecare pătrat are o dimensiune de 32 * 32. Așadar, trebuie să selectăm caseta dorită din program, în funcție de condiție. Să încercăm:







Creați un fișier antet separat pentru hartă. În partea stângă, în Solution Explorer, faceți clic dreapta pe elementul „fișierele sursă“, selectați „add“, „a crea un element“, „fayl.h antet“, suna-l map.h faceți clic pe OK. Acum, în acest fișier vom scrie:

dacă (TileMap [i] [j] == '') s_map. setTextureRect (IntRect (0. 0. 32. 32)); // dacă întâlniți un caracter spațial, trageți apoi primul pătrat

dacă (TileMap [i] [j] == 's') s_map. setTextureRect (IntRect (32. 0. 32. 32)); // dacă ați întâlnit simbolul s, apoi desenați pătratul 2

dacă ((TileMap [i] [j] == '0')) s_map. setTextureRect (IntRect (64. 0. 32. 32)); // dacă ați întâlnit simbolul 0, trageți apoi pătratul 3d

s_map. setPoziția (j * 32. i * 32); // De fapt, se răspândește pătratele, transformându-l într-o hartă. adică dă fiecăruia o poziție. dacă este eliminată, întreaga hartă va fi desenată într-un pătrat 32 * 32 și vom vedea un pătrat







fereastră. trage (s_map); // desenați pătratele de pe ecran

Harta a atras. Puteți rula aplicația. camera noastră este staționară și în lecția următoare vom lucra cu aparatul de fotografiat, și apoi forța eroul pentru a interacționa cu elementele hărții (de exemplu, o piatră) și cărămidă (nu-l dau afară, să facă o coliziune).

După cum puteți vedea, toate spritele sunt suprapuse unul pe celălalt și există transparență. Uită-te la modul în care leul și piatra interacționează grafic:

Sfml lecție, lucrul cu o hartă, descărcarea unei hărți, kychka-pc, sfml

Sfml lecție, lucrul cu o hartă, descărcarea unei hărți, kychka-pc, sfml

Slyunki curgea, nu?

dacă (TileMap [i] [j] == '') s_map. setTextureRect (IntRect (0. 0. 32. 32)); // dacă întâlniți un caracter spațial, trageți apoi primul pătrat

dacă (TileMap [i] [j] == 's') s_map. setTextureRect (IntRect (32. 0. 32. 32)); // dacă ați întâlnit simbolul s, apoi desenați pătratul 2

dacă ((TileMap [i] [j] == '0')) s_map. setTextureRect (IntRect (64. 0. 32. 32)); // dacă ați întâlnit simbolul 0, apoi desenați pătratul 3d

s_map. setPoziția (j * 32. i * 32); // De fapt, se răspândește pătratele, transformându-l într-o hartă. adică dă fiecăruia o poziție. dacă este eliminată, întreaga hartă va fi desenată într-un pătrat 32 * 32 și vom vedea un pătrat

fereastră. trage (s_map); // desenați pătratele de pe ecran







Articole similare

Trimiteți-le prietenilor: