Evo programicica TileLoader koji pravi TLR fajlove za Stojadina. Nije nesto mnogo funkcionalan, ali radi...
Tajlovi se unose tako sto se izbere bitmapa tajla (levo) i freemapa tajla (desno). Boja $FF00FF (255, 0, 255) je prazan prostor i u bitmapi (ti pikseli se nece iscrtavati) i u bmp za freemapu (ti bytovi oznacavaju prazan prostor). Freemapa je matrica istih dimenzija kao i bitmapa s tim sto su itemi byte vrednosti gde je 0 prazan prostor, 1 je voda (da, moci ce da pliva) a 2 je popunjen prostor). Sobzirom da se freemapa cita u TileLoaderu iz bmp fajla, vecinom slucaja se isti bmp fajl ucitava i u levu i u desnu kucicu, ali bice i nekih 'egzoticnih' tajlova, npr. zidovi kroz koje moze da se prodje. Jako bitna stvar je da prilikom ucitavanja tileova u loaderu PRVI tile bude bmp koji je ceo $FF00FF, tj pink jer tile[0] je prazan prostor.
Pri crtanju bmp-a za freemap pink pikseli su prazan prostor plavi ($0000FF) su voda, a svi ostali su pun prostor. Kad se taj bmp ucita u loader on prevodi piksele u bytove (0 za prazno, 1 za vodu i 2 za pun prostor). Ostaje mesta za jos 253 sredine...
I jos nesto, da ne bude zbuna, tile se unosi tako sto se izabere bitmap i freemap, pa ONDA stisne dugme [N] za unos (a ne prvo [N]). I ne zaboravi da snimis TLR kad ga ucitas!
Za sada LevelMap je tekst fajl gde se unose karakteri rasporedjeni ko tileovi u nivou, npr.
Code:
[Tlr fajl]
Tile 0 - Prazan prostor
Tile 1 - Zemlja
Tile 2 - Voda
[Lvm (levelmap) fajl]
1111111111111111
1000000000000001
1000000000000001
1000000000000001
1000010000000001
1000012222222221
1000012222222221
1000012222222221
1111111111111111
Byte = [Char - Ord('0')] posto TLevelMap je matrica byte vrednosti a iz tekstfajla se citaju karakteri '0' = 0, '1' = 1... ':' = 10, itd...
Sledece na redu je graficki LevelEditor (samo da rasporedjuje fajlove ucitane iz TLR fajla), ali trenutno nemam vremena jer doradjujem samu igru, ako neko hoce da se lati tog posla ne bih imao nista protiv...
[Ovu poruku je menjao _v!rus_ dana 19.01.2005. u 01:55 GMT+1]