Sprites & grafik på den Micromite kamrat (6 / 13 steg)
Steg 6: Utforma och arbeta med Sprites
Låt oss hoppa genom att arbeta med vissa sprites.
Du ett par filer läggs till i din Micromite Companion SD card innan du börjar.
Ladda ner följande till ditt SD-kort:
Efter spara dessa filer till ditt SD kort (och granskar instruktionerna på SPREDIT. BIN), stöveln upp Micromite kamrat och CTRL-B SPREDIT till "Brun" Sprite Editor. När sprite editor är igång, Tryck L och ange DEMO. SPR att läsa in provet sprites i minne.
Sprite editor är kapabel att fungera med 16 sprite. SPR filer. Dessa sprites är numrerade 0-15.
Som du Sida upp/sida genom sprites, du ska se att du har tre animerade sprites, vardera bestående av fyra ramar varje för att skapa animering.
Känn dig fri att göra några förändringar, att utforska funktionerna av sprite editor, sedan använda S och skriv namnet på filen (DEMO. SPR) att spara dina ändringar tillbaka till SD.
Nästa, tryck på reset-knappen på din Micromite kamrat och skriv Redigera om du vill börja skapa din egen BASIC-program med hjälp av dessa sprites.
Alla leveranssätt 4 grundläggande program ska starta med följande fyra handlingslinjer:
I2C öppna 400,100
PC = & h42
I2C skriva PC, 0, 3, 1, 2, 4 ' växla till mode4.mde
MEDAN ASC(a$) <> 42: a$ = INKEY$: LOOP
Dessa rader gör följande:
I2C öppna 400,100 Öppnar den I2C kommunikationskanalen
PC = & h42 Skapar en variabel PC som vi kommer att använda som en "förkortning" senare i I2C kommandon.
I2C skriva PC, 0, 3, 1, 2, 4 Kommandon för propellern växla till läge 4 när programmet körs.
Medan ASC(A$) <> 42: A$ = INKEY$: LOOP Berättar Micromite att vänta på propellern att byta läge.
Nästa, infoga flera tomma rader att skapa några arbetsutrymme som vi kommer tillbaka till och skapa de följande subrutiner;
SUB LoadResource filen$, cmd
I2C skriva PC, 2-0, 1, 230 ' Rensa I2C register
FÖR X = 1 till LEN(file$) ' Skicka filnamnet
I2C skriva PC,0,2,x+1,ASC(MID$(file$,x,1)): Nästa X
I2C skriva PC, 0, 2, 1, cmd "Malltyp last 180 eller 181
a$ = "": göra medan en$ <> "*": en$ = INKEY$: LOOP: paus 1000
END SUB
SUB LoadSpr sprite, grafik, x, y, spegel, palett
I2C skriva PC, 8-0, 1, 202, sprite, grafik, x, y, spegel, palett
END SUB
Det finns flera mycket praktiskt subrutiner som vi ska ge dig för dina program, men i en anda av att hålla saker enkelt, låt oss börja med det första paret.
Nästa, gå tillbaka till en rad under den göra medan ASC(A$) <> 42... och skriv in följande:
LoadResource "demo.spr",180
LoadSpr 1,4,100,175,0,0
LoadResource subrutinen laddar din DEMO. SPR-fil i minnet vid första körningen av programmet.
LoadSpr subrutinen kommer att placera en sprite 1, {sprite 4}, på skärmen plats 100,175
Tryck på F2 för att köra ditt program. Slå till CTRL-Coch sedan F4 att komma tillbaka till redaktören.
Prova att ändra variablerna 4, 100 och 175 och ta och köra igen för att se resultaten.
Subrutinen LoadSpr kan anropas flera gånger när du vill uppdatera positionen för en sprite.
Överväg följande exempel:
För x = 100 till 150
LoadSpr 1,4, x, 175, 0, 0
Pausa 10
Nästa x
I allmänhet när du skriver ett spel, har du en "master spel loop" där dina LoadSpr kommandon uppdateras vid varje pass av slingan, uppdatera din sprites ståndpunkter.