Étape 6: Conception et travaillant avec les Sprites
Nous allons passer en travaillant avec certains sprites.
Vous aurez besoin de quelques fichiers ajoutés à votre carte de compagnon Micromite SD avant de commencer.
Téléchargez ce qui suit à votre carte SD :
Après avoir enregistré ces fichiers sur votre SD card (et en examinant les instructions sur le SPREDIT. BIN), démarrer le compagnon Micromite et CTRL-B SPREDIT à "Brun" l’éditeur de Sprite. Une fois que l’éditeur de sprite est en marche, appuyez sur L et tapez démo. SPR pour charger les sprites de l’échantillon en mémoire.
L’éditeur de sprite est capable de travailler avec sprite 16. Fichiers de la SPR. Ces sprites sont numérotés de 0 à 15.
Comme vous l’avez PAGE UP/PAGE-suivante à travers les sprites, vous verrez vous avez trois sprites animés, composées chacune de quatre cadres de chacun pour créer une animation.
N’hésitez pas à apporter quelques modifications, explorant les fonctions du sprite rédacteur en chef, puis utilisez S et tapez le nom du fichier (DEMO. SPR) pour enregistrer vos modifications retour au DD.
Ensuite, appuyez sur le bouton de réinitialisation sur votre compagnon Micromite et tapez EDIT pour commencer la création de votre propre programme de base à l’aide de ces sprites.
Tous les programmes de base de mode 4 doivent commencer avec les quatre lignes suivantes :
I2C open 400,100 PC = &h42 I2C write PC,0,3,1,2,4 'Switch to mode4.mde DO WHILE ASC(a$) <> 42 : a$=INKEY$ : LOOP
Ces lignes procédez comme suit :
I2C ouvrir 400 100 Ouvre le canal de communication I2C
PC = & h42 Crée un variable PC qui nous utiliserons comme « raccourci » plus loin dans les commandes I2C.
I2C écrire PC, 0, 1, 2, 3, 4 Commande de l’hélice pour passer au mode 4, lorsque le programme est exécuté.
Tout en ASC(A$) <> 42: A$ = INKEY$: boucle Dit le Micromite d’attendre pour l’hélice changer les modes.
Ensuite, insérer plusieurs lignes pour créer un espace de travail qui nous viendra de vides à et créer les sous-routines suivants ;
SUB LoadResource file$,cmd I2C WRITE PC,0,2,1,230 'Clear the I2C registers FOR X = 1 TO LEN(file$) 'Send filename I2C WRITE PC,0,2,x+1,ASC(MID$(file$,x,1)) : NEXT X I2C WRITE PC,0,2,1,cmd 'Initate Load 180 or 181 a$ ="": DO WHILE a$ <> "*" : a$=INKEY$ : LOOP : PAUSE 1000 END SUB SUB LoadSpr sprite,graphic,x,y,mirror,palette I2C WRITE PC,0,8,1,202,sprite,graphic,x,y,mirror,palette END SUB
Il y a plusieurs sous-routines très pratiques qui nous vous fournirons pour vos programmes, mais dans l’esprit de garder les choses simples, nous allons commencer avec le tout premier couple.
Ensuite, revenir à une ligne au-dessous du faire en ASC(A$) <> 42... et tapez le texte suivant :
LoadResource "demo.spr",180 LoadSpr 1,4,100,175,0,0
La sous-routine LoadResource chargera votre démo. Fichier SPR dans la mémoire à la première exécution de votre programme.
La sous-routine LoadSpr placera un sprite 1, {sprite 4}, à la position de l’écran 100 175
Appuyez sur F2 pour exécuter votre programme. Appuyez sur Ctrl + C, puis F4 pour revenir à l’éditeur.
Essayez de changer les variables 4, 100 et 175 et prendre et ré-exécuter pour afficher les résultats.
La sous-routine LoadSpr peut être appelée à plusieurs reprises lorsque vous devez mettre à jour la position d’un sprite.
Considérez l’exemple suivant :
For x = 100 to 150 LoadSpr 1,4,x,175,0,0 pause 10 Next x
En règle générale, lorsque vous écrivez un jeu, vous aurez une « boucle maître de jeu » dans lequel vos commandes de LoadSpr sont mis à jour à chaque passage de la boucle, mettre à jour les positions de vos sprites.