Herní mapa
Herní mapa je tvořena plochou políček, na které se umisťují libovolné povrchy (dlaždice). Obsahuje také jiné nezbytné údaje pro její obsluhu.
Struktura herní mapy
Herní mapa se skládá z několika částí:
List dlaždic
Obsahuje seznam všech existujích typů dlaždic.
Mapa
Je reprezentována dvojrozměrným dynamickým polem. Pole obsahuje tzv. dlaždice mapy.
Uživatelské okno
Uživatelské okno je obdelník, který definuje pozici a velikost vykreslované části mapy na reálné obrazovce.
Pozice
Pozice mapy určuje relativní pozici levého horního rohu uživatelského okna nad mapou. Změnou pozice se tedy uživatel přesouvá nad mapou.
Mřížka
Součástí mapy je částečně transparentní mřížka, která viditelně odděluje jednotlivé dlaždice na mapě. Vykreslování mřížky lze povolit i vypnout.
Dlaždice
Dlaždice je prvek pro mapu, který se ukládá do listu dlaždic. Obsahuje základní informace o daném typu povrchu a udává typ dlaždice. Typ dlaždice udává, zda-li jde o dlaždici podkladovou (primární) nebo druhotnou (sekundární), tato vlastnost určuje pořadí vykreslování dlaždic (je využívána u nových typů dlaždic, používajících transparentní barvy).
Struktura Dlaždice
- resId (int) ..id bitmapy ve Správci obrázků.
- penaltyLand (int) ..pozemní penalizace za pohyb po terénu.
- penaltyAir (int) .. vzdušná penalizace za pohyb po terénu.
- type (int) ..typ dlaždice (primární, sekundární).
- crossableLand (bool) ..průchodnost dlaždice po zemi.
- crossableAir (bool) ..průchodnost dlaždice vzduchem.
Dlaždice mapy
Dlaždice mapy je objekt vytvářený a uložený ve vlastní mapě. Obsahuje ukazatele pro primární a sekundární dlaždici, které se odkazují do Listu dlaždic.
Struktura Dlaždice mapy
- primaryTilePtr (CTile*) ..ukazatel na primární dlaždici.
- secondaryTilePtr (CTile*) ..ukazatel na sekundární dlaždici.
- mapTileIndices (CVector2D<unsigned int>) ..pozice v indexech na mapě.