Bahamut Pas mal
Messages : 39
| Sujet: Animation bloquée sur pente Jeu 26 Juin 2014 - 20:55 | |
| Salut à tous, je commence le gml et je crée un jeu de plateforme avec un moteur simple en vv et vh et voila ce que j'ai mis dans l'event step pour l'animation :
If place_free (x,y+1) { if (vv>0) sprite_index = tombe else sprite_index = saute } else { if (vh!=0) sprite_index = court else sprite_index = samus // (l'animation qui ne bouge pas) }
Tout marche correctement sauf pour les pentes : je les descends sans problème mais lorsque je les montes, l'animation n'est pas court mais samus (l'anim qui ne bouge pas) !
Hors la vitesse horizontale est > 1 vu que mon personnage avance, c'est juste l'animation qui ne marche pas. Donc je me demande pourquoi l'animation n'est pas 'court'.
Merci d'avance de vos réponses. |
|
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: Animation bloquée sur pente Ven 27 Juin 2014 - 0:29 | |
| Salut essaye avec If place_free (x,y+2) ou une valeur plus grande. C'est surement que vue que tu dois faire monter ton perso pour le faire avancer dans la pente il se retrouve en l'air. Il faudrait voir comment tu gères les déplacements pour mieux te répondre. |
|
Bahamut Pas mal
Messages : 39
| Sujet: Re: Animation bloquée sur pente Ven 27 Juin 2014 - 8:57 | |
| Merci de ta réponse Chopsuey. J'avais pensé à ça, j'ai déjà essayé mais sans succès, l'animation ne court pas. Voila pour mon code à propos des déplacements : - Code:
-
if keyboard_check(vk_up) && !place_free(x,y+1) { vv=-12 } if keyboard_check (vk_left) {vh=-4} if keyboard_check (vk_right) {vh=4}
vh -= sign (vh) ;
{ vv += 1 }
var ii, i;
for (i=floor(abs(vh)); i!=0; i-=1) { if ((place_free(x+sign(vh),y+1)) && (!place_free(x,y+1))) { x+=sign(vh); y+=1; } else if (place_free(x+sign(vh),y)) { x+=sign(vh); } else { for (ii=1; ii<(pxlmax+1); ii+=1) { if (place_free(x+sign(vh),y-ii)) { x+=sign(vh); y-=ii; i=round(i/ii); break; } } if (i == pxlmax+1) { vh=0; break; } } } repeat abs(vv) { if (place_free(x,y+sign(vv))) { y+=sign(vv); } else { vv=0; break; } }
if (vh>0) image_xscale=1; if (vh<0) image_xscale=-1;
if place_free(x,y+1) { if (vv>0) sprite_index=saute; else sprite_index=saute; } else { if (vh!=0) sprite_index = court_d; else sprite_index = samus; }
Dernière édition par Bahamut le Ven 27 Juin 2014 - 16:02, édité 1 fois |
|
Bahamut Pas mal
Messages : 39
| Sujet: Re: Animation bloquée sur pente Sam 28 Juin 2014 - 23:12 | |
| Personne ne comprends mon problème ? |
|
arthuro Utilisateur confirmé: Rang ****
Messages : 1483 Localisation : Paris Projet Actuel : Diagon https://arthursonzogni.com/Diagon
| Sujet: Re: Animation bloquée sur pente Dim 29 Juin 2014 - 10:44 | |
| Je pensais la même chose que chopsuey.
Tu peux surement essayer d'enlever le if (place_free(x,y+1)) dans ton premier code est nous dire que devient l'animation. |
|
Bahamut Pas mal
Messages : 39
| Sujet: Re: Animation bloquée sur pente Dim 29 Juin 2014 - 16:38 | |
| Merci de ta réponse, je viens d'essayer, mais une nouvelle fois, ça ne marche pas Quand je l'enlève complètement, c'est l'animation du saut qui change, donc je viens de le remettre. |
|
Contenu sponsorisé
| Sujet: Re: Animation bloquée sur pente | |
| |
|