| Correction et amélioration de mon 1er script | |
|
|
| Auteur | Message |
|---|
Map_Style Timide

 Inscrit le : 13 Juil 2008 Messages : 71 Programme utilisé (Gm/RmXp/...) : Tout ce qui est neuf !
 | Sujet: Correction et amélioration de mon 1er script Lun 21 Juil - 22:56 | |
| Salut à tous !
Selon l'avis de certains j'ai aretté le D&D pour commencer le GML...
Comme vous vous en doutez j'ai un problème :
Pas de syntaxe c'est déja sa.
| Code: | script 1 : Initialisation des variables
image_speed=0.2 Cours_Droite=Naruto_Move_Droite Cours_Gauche=Naruto_Move_Gauche Debout_Droite=Naruto_Stance_Droite Debout_Gauche=Naruto_Stance_Gauche Saut_Haut_Droite=Naruto_Saut_Up_Droit Saut_Haut_Gauche=Naruto_Saut_Up_Gauche Saut_Bas_Droite=Naruto_Saut_Down_Droit Saut_Bas_Gauche=Naruto_Saut_Down_Gauche position=1
|
| Code: | script 2 : Gestion du personnage
if keyboard_check(vk_left) { position=0 hspeed=-1 } if keyboard_check(vk_right) { position=1 hspeed=1 } if hspeed>0 { image_index=Cours_Droite } if hspeed<0 { image_index=Cours_Gauche } if vspeed<0 and hspeed>0 { image_index=Saut_Haut_Droite } if vspeed<0 and hspeed<0 { image_index=Saut_Haut_Gauche } if vspeed>0 and hspeed>0 { image_index=Saut_Bas_Droite } if vspeed>0 and hspeed<0 { image_index=Saut_Bas_Gauche } if position=0 { image_index=Debout_Gauche } if position=1 { image_index=Debout_Droite }
|
C'est long et extrêmement pas optimisé. Mais je vois pas d'effet.
Y'a rien sauf que mon perso s'arette pas (je vais utiliser la fonction keyboard_check_release mais dites moi si je me trompe) et y'a pas de changement au niveau de sprites...
Voila merci d'avance à ceux qui ont tout lu  |
|
 | |
Xierra54 Admin - .: el traductor :.


 Age : 49 Inscrit le : 13 Aoû 2005 Messages : 7902 Programme utilisé (Gm/RmXp/...) : GM (6.1 et 7 enregistrées), Purebasic (démo) Etudes : Supérieures Loisirs : ordinateur
 | Sujet: Re: Correction et amélioration de mon 1er script Lun 21 Juil - 23:14 | |
| Je n'ai pas testé tes scripts mais 1 premier conseil. Evite d'écrire ceci :
| Code: | if hspeed>0 { image_index=Cours_Droite } if hspeed<0 { image_index=Cours_Gauche } if vspeed<0 and hspeed>0 { image_index=Saut_Haut_Droite ... } |
Ecris plutôt quelque chose comme cela (c'est plus clair, en tout cas pour la plupart des programmeurs) :
L'instruction Switch Dans un certain nombre de situations, vous souhaiterez effectuer une action en fonction d'une valeur particulière. Vous pouvez faire cela en utilisant quelques instructions IF mais il est plus facile d'utiliser l'instruction Switch. Une instruction Switch se présente sous la forme suivante : <blockquote>switch () { case : ; ... ; break; case : ; ... ; break; ... default: ; ... } </blockquote> Voici comment cela fonctionne. En premier lieu, l'expression est exécutée. Ensuite, elle est comparée avec les résultats des différentes expressions situées après les instructions Case. L'exécution se poursuit après la première instruction Case en cas d'inégalité, jusqu'à ce que l'instruction Break soit rencontrée. Si aucune instruction Case ne posséde la bonne valeur, l'exécution continue après l'instruction default (il n'est pas obligatoire d'avoir une instruction default). Veuillez noter que plusieurs instructions Case peuvent être placées dans le même bloc d'instructions. Aussi, l'instruction Break n'est pas nécessaire. S'il n'existe pas d'instruction Break, l'exécution se poursuivra simplement à la prochaine instruction Case. Exemple Le programme suivant effectue une action selon la touche pressée au clavier. <blockquote>switch (keyboard_key) { case vk_left: case vk_numpad4: x -= 4; break; case vk_right: case vk_numpad6: x += 4; break; } </blockquote> _________________
|
|
 | |
Map_Style Timide

 Inscrit le : 13 Juil 2008 Messages : 71 Programme utilisé (Gm/RmXp/...) : Tout ce qui est neuf !
 | Sujet: Re: Correction et amélioration de mon 1er script Lun 21 Juil - 23:27 | |
| Génial !
Des cours de programmations sur mesure...
J'essaye cette manière et j'édite mon script !
Merci pour votre rapidité et votre professionalisme.  |
|
 | |
Xierra54 Admin - .: el traductor :.


 Age : 49 Inscrit le : 13 Aoû 2005 Messages : 7902 Programme utilisé (Gm/RmXp/...) : GM (6.1 et 7 enregistrées), Purebasic (démo) Etudes : Supérieures Loisirs : ordinateur
 | Sujet: Re: Correction et amélioration de mon 1er script Lun 21 Juil - 23:34 | |
| De rien, c'est tout naturel. _________________
|
|
 | |
Map_Style Timide

 Inscrit le : 13 Juil 2008 Messages : 71 Programme utilisé (Gm/RmXp/...) : Tout ce qui est neuf !
 | Sujet: Re: Correction et amélioration de mon 1er script Mar 22 Juil - 1:56 | |
| Euh... Jveux pas être lourd mais si quelqu'un pourrait réecrire un bout du code plus haut en version "switch" sa serait sympa car j'ai pas parfaitement compris...
Merci
_ |
|
 | |
Fireranger Maitre absolu adjoint

 Age : 15 Inscrit le : 22 Nov 2007 Messages : 672 Programme utilisé (Gm/RmXp/...) : Game Maker 7 PRO, Visual Basic 9.0, Visual C++ et Code::Blocks
 | |
 | |
Liang Maitre absolu adjoint


 Age : 16 Inscrit le : 28 Fév 2007 Messages : 764 Programme utilisé (Gm/RmXp/...) : Game Maker 6.1 register (merci à quelqu'un !!), RPG Maker, Photoshop (un peu). Etudes : -- Loisirs : Guitare, Game maker, assez fan de DotA en ce moment ^^
 | Sujet: Re: Correction et amélioration de mon 1er script Mar 22 Juil - 13:07 | |
| Il ne faut pas mettre "image_index" suivi d'un nom de sprite, mais "sprite_index" ! Image_index=x initialise ton sprite à la subimage x ! |
|
 | |
Map_Style Timide

 Inscrit le : 13 Juil 2008 Messages : 71 Programme utilisé (Gm/RmXp/...) : Tout ce qui est neuf !
 | |
 | |
Fireranger Maitre absolu adjoint

 Age : 15 Inscrit le : 22 Nov 2007 Messages : 672 Programme utilisé (Gm/RmXp/...) : Game Maker 7 PRO, Visual Basic 9.0, Visual C++ et Code::Blocks
 | |
 | |
Map_Style Timide

 Inscrit le : 13 Juil 2008 Messages : 71 Programme utilisé (Gm/RmXp/...) : Tout ce qui est neuf !
 | Sujet: Re: Correction et amélioration de mon 1er script Mar 22 Juil - 19:49 | |
| Vous avez l'air de bien connaître le GML...
| Fireranger a écrit: | if xprevious<x && yprevious < y |
Tu peux m'expliquer chaque element s'il te plaît ? |
|
 | |
Fireranger Maitre absolu adjoint

 Age : 15 Inscrit le : 22 Nov 2007 Messages : 672 Programme utilisé (Gm/RmXp/...) : Game Maker 7 PRO, Visual Basic 9.0, Visual C++ et Code::Blocks
 | Sujet: Re: Correction et amélioration de mon 1er script Mar 22 Juil - 23:27 | |
| x = position sur l'abcisse; y = position sur l'ordonnée; xprevious -> previous x = dernier x; yprevious -> previous y = dernier y; symbole && c'est l'équivalent de "and" ou "et" en francais _________________ Guten Tag von Deutschland 
 |
|
 | |
| Correction et amélioration de mon 1er script | |
|