AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  

 

 [résolu]probleme boucle for

Aller en bas 
2 participants
AuteurMessage
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 19:51

bonsoir,
je ne suis pas trés doué en programmation rouge et j'ai écris le script si dessous mais il ne fonctionne pas correctement.
je m'explique parfois rien ne ce passe à part l'animation du sprite et parfois l'action part mais ne s'arrête plus triste

Code:
{
var x_start, x_end;

x_start = x;            //valeur de depart x
sprite_index = attackSpecial;
image_speed = 0.25;
if !sound_isplaying(SndFX_Yeah)sound_play(SndFX_Yeah);

//begin
if (image_index > 0)
    {[quote]
    if (image_xscale = -1) 
        {
        x_end = x-96; //valeur d'arrivée x     
       
        for (i=x; i>x_end; i-=3)
            {
                hspeed = -6;
                image_single = 1;                       
                left = 0;
                right = 0;                 
            }
            if (x_start <= x_end) {special = 0; hspeed = 0;}           
        }
   
    if (image_xscale = 1)
        {
        x_end = x+96; //valeur d'arrivée x       
       
        for (i=x; i<x_end; i+=3)
            {
                hspeed = +6;
                image_single = 1;                       
                left = 0;
                right = 0;                 
            }
            if (x_start >= x_end) {special = 0; hspeed = 0;}               
        }
    }
   
alarm[0]= 30;
//end
}

merci d'avance pour l'aide que vous m'apporterai happy1

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90


Dernière édition par 65c816 le Mer 29 Aoû 2012 - 23:44, édité 1 fois
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 20:03

La ligne if (image_index>0) est inutile : quand tu lance le jeu en mode debug et que tu regarde la variable image_index d'un objet, elle est toujours supérieure a 0.
Sinon je ne vois pas pourquoi rien ne se passe des fois ; si tu pouvais m'expliquer qu'est ce que doit faire ce script, peut-être que je comprendrai mieux.
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 20:14

j'ai mis cette ligne car je souhaitai que la boucle ne démarre qu'à l'image 1 et reste sur l'image 1 (mon anim' ne comporte que 2 img).
mon souhait serais que mon perso se déplace de x pixels/step jusqu’à atteindre 128 pixels de la position de départ.
l'action se déclenche sur un appuie de touche mais de ce coté là ça fonctionne car même l'audio de l'action est lu systematiquement.

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 20:19

Oui mais même avec 2 subimages la variable image_index n'évolue pas comme ca :
0,1,0,1,0,1,....
Mais comme ceci :
0,1,2,3,4,....
Donc il faut que tu détermine si image_index est impaire avec du modulo.
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 20:39

un modulo?

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 20:44

Ca retourne le reste d'une division :
Tu fais if image_index mod 2 =1 { //la subimage est a 1}

(Dans des langages genre c++ tu fais variable%=2)
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:16

avec le modulo le son et l'anime se déclenche comme avant mais le deplacement non.
sans la ligne
Code:
if image_index mod 2 =1
tout se déclenche mais ne s'arrete plus triste2

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:23

Sûrement a cause de la boucle, vu que tu fais i+=3 et hspeed+=6, essaie d'imbriquer 2 boucles l'unes dans l'autre en faisant plusieurs fois i+=1 et hspeed+=1.
Ca évitera qu'il aille trop loin.
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:31

j'ai comme l'impression que la boucle ne fonctionne pas image_single n'est pas cencé afficher que l'image "x"?
car hspeed se declenche mais pas
Code:
image_single = 1

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:37

Je connais pas image_single et je peux pas voir la doc 8.1 (suis sur tablette avec la doc 6), désolé.
Mais si hspeed marche et pas image_single, c'est que c'est pas un problème au niveau de la boucle mais au niveau de image_single
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:41

j'ai resolu partiellement mon soucis avec
Code:
for (i=x; i>x_end; i-=3)
            {
                image_speed = 0;
                image_index = 1;                       
                left = 0;
                right = 0;                 
            }
le soucis c'est que le perso ne s’arrête toujours pas gnii
la boucle n'a t'elle pas pour but de s'arreter une fois i = x_end?

une boucle while ne serait-elle pas plus adapté?

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:49

Sinon avec un if, un for et un while :
Code:

if x<=x_max-vitesse
{
for(i=0;i<vitesse;i+=1)
{
x+=1
}
}
else if x<max_x
{
while(x<x_max)
{
x+=1
}
}
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 21:51

Attention, je viens d'éditer mon post, iavait une erreur.
Désolé.
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyDim 26 Aoû 2012 - 22:21

je laisse tombe pour ce soir trop fatigué et énervé pour continuer, merci pour m'avoir consacré du temps happy1

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 20:17

la boucle fonctionne "bien" apparemment avec x+= 3 à la place de hspeed = +3 le soucis est que l'obj fait un saut direct à la position et non un deplacement regulier triste2

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 20:23

Au tout début du code tu fais a=0, juste avant la boucle for, a=1 et dans la boucle for tu fais if a=0 x+=1 else exit()
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 21:14

ce que je ne pige pas c'est pourquoi quand x = x_end(x+96) cela ne 's’arrête pas car c'est ce que ça doit faire
Code:
for (i=x; i < x_end; i+=1) hspeed = +6;
non?

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 21:36

A la ligne suivante écrit hspeed=0 ; hspee, c'est comme speed, ca imprime une vitesse constante a l'objet (du moins je suppose, j'utilise jamai cette technique ; mais en principe ca doit être ca...)
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 22:12

la boucle for fonctionne comme une while? une fois fausse elle exécute après les crochets?

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 23:07

la boucle while execute le code entre crochet tant que l'expression entre parenthèse est JUSTE ; la boucle for est divisée en 3 parties séparées par des points-virgules :
1) initialisation : i=0
2) condition : i<10
3) incrémentation (ou autres opérations) : i+=1

par exemple :

a=""
for(i=0;i<10;i+=1)
{
a+=string(i)+"#"
}

a la fin, si tu affiche a tu verra écrit les nombres de 1 à 10 (avec un saut de ligne entre)
J'ai mis du temps à comprendre les boucles mais c'est indispensable !
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyLun 27 Aoû 2012 - 23:32

du coup ma for il ne faudrait pas la faire comme ça?
Code:
x_end = x-128;
       
        for (i=x; i>x_end; i-=1)
            {
                x = i;
                image_single = 1;
            }
non?

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyMar 28 Aoû 2012 - 8:40

Ouais, mais ca va tout faire d'un coup....
Il faut que tu rajoute une variable iteration au début qui est égale à la vitesse ; puis dans la boucle for tu fais iteration-=1 puis if itération <1 exit()
Revenir en haut Aller en bas
65c816
Très bonne participation
65c816


Messages : 148
Projet Actuel : Jeux retro Beathem'up all

[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for EmptyMer 29 Aoû 2012 - 23:43

j'ai resolu mon probleme avec une entourloupe beh
Code:
{
//begin
var x_start, x_end,;

view_object = noone ;
x_start = x;
x_end = "";
sprite_index = attackSpecial;

if !sound_isplaying(SndFX_Yeah)sound_play(SndFX_Yeah);


if image_index > 0
{
    //perso vers la droite   
    if (image_xscale = 1)
        {
        x_end = view_xview+192;
               
        if x < x_end
        {
            for (i=x; i<x_end; i+=1)
            {
            image_speed = 0;
            image_single = 1;
            hspeed=+6;         
            }
        }
        else {special = 0; hspeed=0; view_object = obj_Player1;}
        }
               
    //perso vers la droite 
    if (image_xscale = -1)
        {
        x_end = view_xview+64;
       
        if x > x_end
        {
            for (i=x; i>x_end; i-=1)
            {
            image_speed = 0;
            image_single = 1;
            hspeed=-6;     
            }
        }
        else {special = 0; hspeed=0; view_object = obj_Player1;}
        }
}
//end
}
après je ne sais pas si la boucle for est réellement utile car si ça ce trouve le code devrait fonctionner correctement juste avec les éléments des crochets de la boucle simplement dans ceux du if...
en tous cas merci Térence68 de m'avoir apporté ton aide happy1

_________________
Projects :
Page Officielle : TMNT4 Remix
Page Officielle FaceBook : Teenage Mutant Ninja Turtles Turtles in Time Cowabunga Edition
Page Officielle = Super Castlevania IV Reborn sur MegaTest.FR
Page Officielle = Super Castlevania IV Reborn sur SuperFamicom.fr
Page Officielle FaceBook : Super Castlevania IV Reborn
[résolu]probleme boucle for SHVC_TMNT4R-SC4R_728x90
Revenir en haut Aller en bas
http://superfamicom.fr
Contenu sponsorisé





[résolu]probleme boucle for Empty
MessageSujet: Re: [résolu]probleme boucle for   [résolu]probleme boucle for Empty

Revenir en haut Aller en bas
 
[résolu]probleme boucle for
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu]Problème de boucle for
» [Résolu] Problème avec une boucle.
» Boucle for [Résolu]
» problème de boucle infinie.
» [resolu]soucis avec Boucle While

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: