Sprites & grafik på den Micromite kamrat (11 / 13 steg)
Steg 11: Arbeta med typsnitt och plattor
Fram till denna punkt, har vi gjort en hel del arbete med sprites. Låt oss växla och titta på teckensnitt och kakel.
Du kanske frågar dig själv, vad är skillnaden?
- Sprites är 16 x 16 pixlar objekt som kan placeras på varje pixel position (X & Y) på skärmen.
- Plattor är 8 x 8 pixel objekt som kan placeras på en 8 x 8 position på skärmen.
Med andra ord, du kan använda plattor som små sprites och flytta runt på skärmen, men rörelsen animeringen inte skulle vara som nästan lika smidig som faktiska sprites som de kan bara flytta över skärmen 8 bildpunkter per rörelse. Kom ihåg plattor får släppas från positioner 0 = 27 över skärmen, och 0-31 ner skärmen.
Plattor mest användbara för att Visa textinformation till spelaren, resultattavlor, eller skapa bakgrunder för sprite att leva i. Vid min Loderunner demo som du har sett skärmdumpar av, används brickor för skapandet av tegel och stegar som min hjälte sprite går och klättrar på.
Om du inte har hämtat en kopia av GRPHEDIT. BIN och lagt den till ditt SD-kort för din Micromite kamrat, du vill göra detta. Det är en utökad version av SPREDIT. BIN som inkluderar möjligheten att ladda teckensnitt/kakel. FNT filer. Användning (M) att byta från sprite redigeringsläge kakel redigeringsläge, sedan använda (G) för att markera en 16 x 16 brickor för att redigera med hjälp av markörknapparna. Tanken här är att ge dig ett enkelt sätt att skapa 16 x 16 kakel block (med 4 tecken) för att skapa större, förregling grafik för din bakgrund om så önskas.
Du kan redigera alla platta i den. FNT filen, men allmänt det är en bra idé att bo med tecken efter de versala tecken, (gemena a-ö) när de lämnar texten information i ditt spel och nummer för din resultattavlan.
Det finns två praktiska subrutiner för visning av teckensnitt och plattor på skärmen.
SUB visningstext textx, texty, färg, text$
FÖR x = 1 till LEN(text$): char = ASC(MID$(text$,x,1))
I2C skriva PC, 6-0, 1, 200, textx + x, texty, färg, röding
PAUS 1: nästa x
END SUB
SUB DisplayChar charx, Emilia, färg, röding
I2C skriva PC, 6-0, 1, 200, charx, Emilia, färg, röding
END SUB
Visningstext subrutinen gör att du kan placera en sträng eller en textrad på alla X och Y plats.
Exempel:
Visningstext 10,5,6, "Hello World"
Visningstext 10,5,6, en$
DisplayChar subrutinen gör samma sak med ett nummer.
Exempel:
Visningstext 2,1,5, "Poäng"
DisplayChar 11,1,6, poäng
Dessa rutiner är också mycket användbara för felsökning av program.
Tänk på följande:
Visningstext 2,3,6, "SPRITE X"
Visningstext 2,4,6, "SPRITE Y"
Visningstext 11,3,6,""
Visningstext 11,4,6,""
Visningstext 11,3,6,STR$(player_x)
Visningstext 11,4,6,STR$(player_y)