11Fermer13
chickendudeLe 01/02/2013 à 10:49
deeph (./11) :
Merci pour la routine ! Mais est-ce qu'elle permet de démarrer à n'importe quelles coordonnées (même non alignées) ?
Oui, mais pour le moment elle prend les coordonnées initiales puis la largeur/hauteur de la boîte, mais il serait facile de changer ça (bien qu'un peu plus grand) si tu préfères utiliser deux coordonnées wink
Ça me fait penser, je suis sûr qu'elle pourra servir à pas mal de monde : http://www.omnimaga.org/index.php?topic=1598.msg256238#msg256238
Je suis sûr qu'elle n'est pas trop optimisée, mais je peux le poster là tout de même au cas où quelqu'un pourra s'en servir. smile
Pour les APPS, en pratique je ne vois pas trop comment charger les routines en RAM... ? Autant modifier la source pour travailler avec les saferam, non ?
Oui, on les charge dans saferam, par exemple :#DEFINE SAFERAM_OFFSET ($-saferam_start)+saferamRoutines saferamRoutines = appBackUpScreen ;on garde quelques routines ici pour gagner de l'espace start: ;charger quelques routines dans saferam pour ouvrir de l'espace ld hl,saferam_start ld de,saferamRoutines ld bc,768 ldir call keyCheck ret saferam_start: ;Ces routines vont être copiées dans saferam pour libérer de l'espace keyCheck = SAFERAM_OFFSET ; Initialiser les valeurs a 0 xor a ld (playerMovement),a ;si on a poussé gauche/droite ;clear ld a,groupe2 ; groupe 2 (clear) out (1),a ; porte 1: clavier in a,(1) ; lire cp diClear jr nz,$+10 in a,(1) ; lire cp diClear jr z,$-4 ;il faut relâcher clear, sinon on va quitter tout le programme ! pop hl ret ; si on appuie sur clear, quitter le programme saferam_end: .echo "Mémoire dans saferam1: ", saferam_end - saferam_startJettes un coup d'oeuil au define.
Et pour ce qui est des metatiles, je n'ai pas trop compris l'intérêt (c'est simplement le fait de tous les regrouper en mémoire, non ? Parce que c'est déjà le cas pour les tiles mais pas pour les sprites, mais dans les deux cas je ne vais pas les modifier).
Les metatiles vont te sauver de l'espace. Par exemple :
120000
340000
555500
555500
deviendrait :
100
220

0 =
00
00

1 =
12
34

2 =
55
55

Il faudrait peut-être reorganisé un peu tes maps pour mieux convenir aux groupes de 2x2 (ou plus grand) tuiles, mais tu pourrais gagner pas mal d'espace.

Pour les dommages c'est bon mais ça avance un peu lentement, non ? Pour le moment une animation pour l'attaque n'est pas nécéssaire, mais faire clignoter quelques fois le pokémon attaqué ne se verait pas mal ! grin Et si tu peux, je crois qu'utiliser des sprites 32x26 serait une bonne idée. As tu déjà dessiné un map du monde ?

C'est impressionant ce que tu as fait !