AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Smartphone Xiaomi 14 – 512 Go- 6,36″ 5G ...
Voir le deal
599 €

 

 Perso immobile après un changement de sprite

Aller en bas 
4 participants
AuteurMessage
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 17:00

Salut à tous,
J'essaie depuis quelques jours le GML et j'ai décidé de me faire un petit projet assez simple pour commencer, un plateformer.
Pour le moment j'arrive plus ou moins bien à trouver ce que je cherche, mon personnage se déplace de droite à gauche et saute.
Néanmoins, je suis confronté à un problème assez étrange lorsque je veux changer les sprite de saut et de chute: dès que le perso retombe sur le sol, il reste avec son sprite de chute et ne peux plus se déplacer! J'ai cherché pendant pas mal de temps sur le forum mais je n'ai pas trouvé de post avec un problème similaire.
Alors si un expert ici veux bien me donner un coup de main et m'expliquer là où j'ai foiré, ce serait super! merci!
Voici un lien vers mon fichier gmx
ici
merci!!!!
Revenir en haut Aller en bas
Yautja
Débutant



Messages : 26

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 18:02

salut,

As-tu essayer de faire sprite_index="ton_sprite" lorsque tu touche le sol ?
Revenir en haut Aller en bas
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 19:14

Salut, oui j'ai essayé mais le problème c'et que le perso ne peut plus bouger ni vers la gauche ni vers la droite, seulement vers le haut. Les anims de sprites s'activent bien des que je veux aller dans les directions mais il rest sur place (il patine quoi…)
Revenir en haut Aller en bas
Yautja
Débutant



Messages : 26

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 19:26

salut,

à mon avis lorsque ton "perso" tombe et change de sprite au contact du sol, un (ou plusieurs pixels) reste(nt) bloquer dans le sol et donc ne fait pas avancer ton "perso"

essaye de régler les origines de tes sprite.

sinon je ne peut pas lire ton fichier car j'utilise game maker 6
Revenir en haut Aller en bas
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 19:42

Je viens d'essayer et effectivement il semblerait que le problème vienne de là. Y a t-il une fonction GML pour l'empêcher de se coincer comme ça?
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 19:52

Il faut rendre constant le masque de collision de ton perso, soit en le spécifiant dans le menu "Mask" de l'éditeur d'objet, soit en donnant à tous tes sprites un mask custom (dans les propriétés des sprites) avec les mêmes paramètres :)
Revenir en haut Aller en bas
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 20:05

Youpi!!! ça marche super!! merci beaucoup les gars!!
En revanche quand je touche le sol et lui redemande de jouer l'anim idle, il ne joue plus aucune anims et reste sur la premiere image tt le temps (pareil sur l'anim ou il marche). Voilà le code que je lui donne:

if vspeed = 0
{
sprite_index = player_idle
image_index = 0;
image_speed = 0.5;
}

même en change l'image_index en -1, ça ne change rien. Plus aucune anims du tout
Revenir en haut Aller en bas
Yautja
Débutant



Messages : 26

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 20:18

comment as-tu codé les déplacement de ton perso ?

met les codes stp, comme ça je ne peut pas t'aider

fleche_d j'y vais.

salut
Revenir en haut Aller en bas
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 20:23

merci. voilà donc le code pour aller à gauche:

if (place_free(x-7,y) )
{
hspeed=-5;
}

else {hspeed=0}



if sprite_index != player_walk
{
sprite_index = player_walk
image_index = 0;
image_speed = 0.5;

}


et celui là pour la droite:

if (place_free(x+7,y) )
{
hspeed=5;
}

else {hspeed=0}



if sprite_index != player_walk
{
sprite_index = player_walk
image_index = 0;
image_speed = 0.5;

}
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 20:35

Faut pas mettre ton code dans le if, puisque vspeed=0 a chaque fois que tu n'es pas en l'air ; donc il met toujours le sprite_index à 0.
Revenir en haut Aller en bas
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyLun 3 Déc 2012 - 21:17

Merci Térence68 (et merci de vouloir me manger) mais je le met comment alors?
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyMar 4 Déc 2012 - 7:03

Essaie de supprimer image_index=0, et si elle est vraiment indispensable, enregistre à chaque step la valeur vspeed dans old_vspeed ; comme ca tu fais

if vspeed=0 && old_vspeed>0

Le code ne s'executera ainsi que si t'était encore en l'air au step précédent.

(Et je veux pas te manger toi spécialement, c'est la variable USERNAME mrgreen2 )
Revenir en haut Aller en bas
mardoch
Débutant
mardoch


Messages : 19
Localisation : Paris

Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite EmptyJeu 6 Déc 2012 - 17:02

Alors, après plusieurs essais, je suis arrivé à ce bout de code qui marche plutôt bien:

if vspeed < 0
{
sprite_index = player_jump
image_speed = 0.5;
}
if vspeed > 0
{
sprite_index = player_fall
image_speed = 0.5;
}

if vspeed=0 && hspeed=0
{
sprite_index = player_idle
image_speed = 0.5;
}


Evidemment, je pense qu'il y a des solutions plus simples pour revenir sur la position idle, voir même de lancer une petite anim pour l’atterrissage lors de la collision.
Encore merci pour vos coup de main à tous!
Revenir en haut Aller en bas
Contenu sponsorisé





Perso immobile après un changement de sprite Empty
MessageSujet: Re: Perso immobile après un changement de sprite   Perso immobile après un changement de sprite Empty

Revenir en haut Aller en bas
 
Perso immobile après un changement de sprite
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» code changement de sprite
» Problème changement de sprite
» changement d'animation du sprite
» changement de sprite en saut
» Changement de sprite impossible

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: