Logo Amos
Des Routines

Voici mon travaille sur des routines. (Page en construction, et test de mise en forme pour pouvoir proposer des Listings correctement)
Déplacement Case par Case pour un RPG par exemple

Rem ############################################
Rem #** Routine de Déplacement Case par Case **#
Rem #** Ecrit par Jean Monos **#
Rem #** Pour le Basic Amos **#
Rem ############################################

Rem ========================================
Rem =** Déclaration des Valeurs Globales **=
Rem ========================================

Global XPJ : Rem Position X du PJ en Case
Global YPJ : Rem Position Y du PJ en Case

Rem =================================================================
Rem =** Affectation de départ pour l'exemple de la position du PJ **=
Rem =================================================================

XPJ=5
YPJ=5
Bob 1,XPJ*16,YPJ*16,1 : Rem On place Bob pour l'exemple.

Rem ======================================
Rem =** Boucle d'attente des commandes **=
Rem ======================================

' Dec et Inc permet d'ajuste la nouvelle position du PJ. (-1 / +1 sur la variable XPJ ou YPJ)
Do
    If Key State(79)=true Then MVT[4] : Dec XPJ : Rem Déplacement Gauche
    If Key State(78)=true Then MVT[6] : Inc XPJ : Rem Déplacement Droite
    If Key State(77)=true Then MVT[2] : Inc YPJ : Rem déplacement Bas
    If Key State(76)=true Then MVT[8] : Dec YPJ : Rem Déplacement Haut
    If Key State(69)=true Then End : Rem Permet de quitter le programme ah ah.
Loop

Rem =======================================================
Rem =** Procédure de Déplacement case par case sur 16px **=
Rem =======================================================

Procedure[MVT]

For X=0 to 16
    If MVT=6 then Bob 1,XPJ*16+X,YPJ*16,1
    If MVT=4 then Bob 1,XPJ*16-X,YPJ*16,1
    If MVT=2 then Bob 1,XPJ*16,YPJ*16+X,1
    If MVT=2 then Bob 1,XPJ*16,YPJ*16-X,1
    Wait (1) : Rem Un petit Wait(1) pour éviter que cela speed trop vite.
Next X

Clear Key : Rem Cela permet de vider la mémoire des touches et donc d'attendre une nouvelle pression de la touche.
End Procedure
Site réalisé par Jean Monos