Trace une Ligne en action script erreur dans mon code

cs_jzeel Messages postés 156 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 10 mars 2011 - 17 mars 2006 à 20:22
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 - 21 mars 2006 à 18:12
Salut tout le monde,

Je veux faire deux lignes parallelle qui se trace en ligne droite de gauche a droite et qui s'arrete apres l'avoir duplique 32 fois et se en actionscript et non avec des "goto" voici mon code :

for(i=1; i<=32; i++){
UpLine0.duplicateMovieClip(UpLine+i, 1);
DownLine0.duplicateMovieClip(DownLine+i, 1);
UpLine+i = UpLine+i-1._x - UpLine+i-1._width;
DownLine+i = DownLine+i-1._x - DownLine+i-1._width;
}

Le probleme c'est que cela me donne cette ERREUR :

**Error** Scene=Scene 1, layer=Up - Down Line, frame=1:Line 4: Left side of assignment operator must be variable or property.
UpLine+i = UpLine+i-1._x - UpLine+i-1._width;

**Error** Scene=Scene 1, layer=Up - Down Line, frame=1:Line 5: Left side of assignment operator must be variable or property.
DownLine+i = DownLine+i-1._x - DownLine+i-1._width;

Merci pour votre aide.

Jzeel

27 réponses

WhiteMagus Messages postés 764 Date d'inscription lundi 21 juin 2004 Statut Membre Dernière intervention 5 février 2010
17 mars 2006 à 23:08
Salut.
Je comprends pas vraiment ce que tu essayes de faire : tu utilises en fait UpLine et DownLine à la fois comme non de clip et comme variable de type nombre.
Tu aurais pas une source, ou tu pourrais peut-être expliquer ta démarche.
@+ !
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
18 mars 2006 à 00:06
Moi, j'aurais plutôt tendance à le faire tout en actionscript, plutot que de dupliquer des clips:

j'espère que cela va t'aider !!!!





_root.UpLine0="abscisse que tu veux";

_root.DownLine0="abscisse que tu veux";

for(i=1; i<=32; i++){

_root.createEmptyMovieClip(UpLine+i, _level0.getNextHighestDepth());

_root.createEmptyMovieClip(DownLine+i, _level0.getNextHighestDepth());

_root["UpLine"+i]._x= _root["UpLine"+i-1]._x - _root["UpLine"+i-1]._width;

_root["DownLine"+i]._x= _root["DownLine"+i-1]._x - _root["DownLine"+i-1]._width;

with (_root["UpLine"+i]) {

moveTo(_root["UpLine"+i]._x,"ordonnée que tu veux");

lineTo(_root["UpLine"+i]._x,"ordonnée que tu veux");

}

with (_root["DownLine"+i]) {


moveTo(_root["DownLine"+i]._x,"ordonnée que tu veux");


lineTo(_root["DownLine"+i]._x,"ordonnée que tu veux");


}

}



@+
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
18 mars 2006 à 00:09
attend comme ça c'est encore mieux :

_root.UpLine0="abscisse que tu veux";

_root.DownLine0="abscisse que tu veux";

for(i=1; i<=32; i++){

_root.createEmptyMovieClip(UpLine+i, _level0.getNextHighestDepth());

_root.createEmptyMovieClip(DownLine+i, _level0.getNextHighestDepth());

_root["UpLine"+i]._x= _root["UpLine"+i-1]._x - _root["UpLine"+i-1]._width;

_root["DownLine"+i]._x= _root["DownLine"+i-1]._x - _root["DownLine"+i-1]._width;


_root["UpLine"+i].lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);


_root["DownLine"+i].lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

with (_root["UpLine"+i]) {

moveTo(_root["UpLine"+i]._x,"ordonnée que tu veux");

lineTo(_root["UpLine"+i]._x,"ordonnée que tu veux");

}

with (_root["DownLine"+i]) {

moveTo(_root["DownLine"+i]._x,"ordonnée que tu veux");

lineTo(_root["DownLine"+i]._x,"ordonnée que tu veux");

}

}
0
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
18 mars 2006 à 15:09
Désolé.....j'ai pas put me retenir....

bali_balo....=]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_jzeel Messages postés 156 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 10 mars 2011
18 mars 2006 à 19:43
Ok astrolabbcracker mais mon problème n'es pas réglé, car quand je test le movie avec ton code voici le message que cela m'affiche "Error: A 'with' action failed because the specified object did not exist."
Quoi faire ???

Je suis un débutant, si tu pourrait m'expliquer ton code ligne par ligne j'aurai beaucoup apprécié. ainsi avec de la logique je pourai le midifier au besoin. Merci pour ton aide.

Jzeel
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
18 mars 2006 à 23:10
ben euhhh :



_root.UpLine0="abscisse que tu veux";

_root.DownLine0="abscisse que tu veux";

//création de tes lignes

for(i=1; i<=32; i++){

//création des clips pour contenir tes lignes

//je choisis un clip par ligne

_root.createEmptyMovieClip(UpLine+i, _level0.getNextHighestDepth());

_root.createEmptyMovieClip(DownLine+i, _level0.getNextHighestDepth());

//mise en place des absisses pour les lignes

//ici il faut voit si le "UpLine"+i-1 marche (je suis pas sûr du i-1) le mieux, c'est de créer

// une variable j=i-1 et de remplacer par "UpLine"+j

_root["UpLine"+i]._x= _root["UpLine"+i-1]._x - _root["UpLine"+i-1]._width;

_root["DownLine"+i]._x= _root["DownLine"+i-1]._x - _root["DownLine"+i-1]._width;

//création des styles

_root["UpLine"+i].lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

_root["DownLine"+i].lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

//si les with ne donnent pas le résultat voulu, on peut changer par:

//cela permet de creer les lignes

_root["UpLine"+i]. moveTo(_root["UpLine"+i]._x,"ordonnée que tu veux");

_root["UpLine"+i]. lineTo(_root["UpLine"+i]._x,"ordonnée que tu veux");

_root["DownLine"+i].moveTo(_root["DownLine"+i]._x,"ordonnée que tu veux");

_root["DownLine"+i]. lineTo(_root["DownLine"+i]._x,"ordonnée que tu veux");



}

voilà
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
18 mars 2006 à 23:35
bon j'ai décidé de te faciliter le travail : voilà le résultat tout cuit :



//création de tes lignes

for(i=1; i<=32; i++){

//création des clips pour contenir tes lignes

//je choisis un clip par ligne

_root.createEmptyMovieClip("UpLine"+i, _level0.getNextHighestDepth());

_root.createEmptyMovieClip("DownLine"+i, _level0.getNextHighestDepth());

//mise en place des absisses pour les lignes

//ici il faut voit si le "UpLine"+i-1 marche (je suis pas sûr du i-1) le mieux, c'est de créer

// une variable j=i-1 et de remplacer par "UpLine"+j

var j=i-1;

//création des styles

if(i==1){

//absice de départ pour les lignes

_root["UpLine"+i]._x= 2;

_root["DownLine"+i]._x= 50;

}else{

//l'ecart entre le ligne utilise la taille du clip soit le double de la taille de la ligne

_root["UpLine"+i]._x= _root["UpLine"+j]._x - _root["UpLine"+j]._width;

_root["DownLine"+i]._x= _root["DownLine"+j]._x - _root["DownLine"+j]._width;



}



_root["UpLine"+i].lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

_root["DownLine"+i].lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

//si les with ne donnent pas le résultat voulu, on peut changer par:

//cela permet de creer les lignes

_root["UpLine"+i]. moveTo(_root["UpLine"+i]._x,"1");

_root["UpLine"+i]. lineTo(_root["UpLine"+i]._x,"200");

_root["DownLine"+i].moveTo(_root["DownLine"+i]._x,"200");

_root["DownLine"+i]. lineTo(_root["DownLine"+i]._x,"400");



}





tu n'as qu'à le recopier ça marche !!!

Si tu as envi de me remercier, j'ai un petit boulot pour toi : je suis
mauvais en dessin et j'ai besoin d'un logo pour mes créations : fait
moi un logo sur : Astrolabb (je t'envoie mon mèl par message)

si tu n'as pas le temps, je comprend aussi !!!

@+
0
cortoh Messages postés 1255 Date d'inscription dimanche 18 décembre 2005 Statut Membre Dernière intervention 2 décembre 2008
19 mars 2006 à 00:27
t'as bien fait, bali_balo! nice!


Peace From Mars
To All Human Beings
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
19 mars 2006 à 00:29
Salut corto : à propos de logo, il est pas mal ton nouveau logo!!!!
0
cortoh Messages postés 1255 Date d'inscription dimanche 18 décembre 2005 Statut Membre Dernière intervention 2 décembre 2008
19 mars 2006 à 00:33
merci. =)

Peace From Mars
To All Human Beings
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
19 mars 2006 à 14:24
Voilà le résultat :



_root.createEmptyMovieClip("UpLine", _level0.getNextHighestDepth());

_root.UpLine.lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

_root.createEmptyMovieClip("Downline", _level0.getNextHighestDepth());

_root.Downline.lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

_root.depart=500;

_root.arrivee=480;

_root.arrivee_fin=10;

var marche:Number;

var duration:Number = 20;



function dessinligne():Void {

trace("dessinligne setintervalmarche: " + marche + " arrivee: " + _root.arrivee);

if(_root.arrivee >= _root.arrivee_fin) {

_root.arrivee-=5;

_root.UpLine.moveTo(_root.depart,"200");

_root.UpLine.lineTo(_root.arrivee,"200");

_root.UpLine.moveTo(_root.depart,"250");

_root.UpLine.lineTo(_root.arrivee,"250");

}

else{

clearInterval(marche);

}

}



marche = setInterval(this, "dessinligne", duration);



@+
0
cs_jzeel Messages postés 156 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 10 mars 2011
19 mars 2006 à 20:20
Je l'ai essayé et voici l'erreur que cela me donne: et pourtant je ne vois pas qu'il manque une parenthèse:
Scene=Scene 1, Layer=Layer 1, Frame=1: Line 11: '{' expected
function dessinligne():void {


Scene=Scene 1, Layer=Layer 1, Frame=1: Line 23: Unexpected '}' encountered
}

Jzeel
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
19 mars 2006 à 20:28
//moi ça marche bien : juste en faisant un copier collé

//pour éviter les problème de type version de flash voilà un exemple plus simple:



_root.createEmptyMovieClip("UpLine", _level0.getNextHighestDepth());

_root.UpLine.lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

_root.createEmptyMovieClip("Downline", _level0.getNextHighestDepth());

_root.Downline.lineStyle(2, 0xF73A20, 100, true, "none", "round", "miter", 1);

_root.depart=500;

_root.arrivee=480;

_root.arrivee_fin=10;

var marche;

var duration = 20;



function dessinligne() {

trace("dessinligne setintervalmarche: " + marche + " arrivee: " + _root.arrivee);

if(_root.arrivee >= _root.arrivee_fin) {

_root.arrivee-=5;

_root.UpLine.moveTo(_root.depart,"200");

_root.UpLine.lineTo(_root.arrivee,"200");

_root.UpLine.moveTo(_root.depart,"250");

_root.UpLine.lineTo(_root.arrivee,"250");

}

else{

clearInterval(marche);

}

}



marche = setInterval(this, "dessinligne", duration);



//ça marche?
0
cs_jzeel Messages postés 156 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 10 mars 2011
19 mars 2006 à 20:52
J'avoue que ça dit qu'il n'y a pas d'erreur, et toute suite après la ligne disparait pour me donner cette fenêtre qui est ecrit : et mon ecrant est vide

dessinligne setintervalmarche: 1 arrivee: 480
dessinligne setintervalmarche: 1 arrivee: 475
dessinligne setintervalmarche: 1 arrivee: 470
dessinligne setintervalmarche: 1 arrivee: 465
dessinligne setintervalmarche: 1 arrivee: 460
dessinligne setintervalmarche: 1 arrivee: 455
dessinligne setintervalmarche: 1 arrivee: 450
dessinligne setintervalmarche: 1 arrivee: 445
dessinligne setintervalmarche: 1 arrivee: 440
dessinligne setintervalmarche: 1 arrivee: 435
dessinligne setintervalmarche: 1 arrivee: 430
dessinligne setintervalmarche: 1 arrivee: 425
dessinligne setintervalmarche: 1 arrivee: 420
dessinligne setintervalmarche: 1 arrivee: 415
dessinligne setintervalmarche: 1 arrivee: 410
dessinligne setintervalmarche: 1 arrivee: 405
dessinligne setintervalmarche: 1 arrivee: 400
dessinligne setintervalmarche: 1 arrivee: 395
dessinligne setintervalmarche: 1 arrivee: 390
dessinligne setintervalmarche: 1 arrivee: 385
dessinligne setintervalmarche: 1 arrivee: 380
dessinligne setintervalmarche: 1 arrivee: 375
dessinligne setintervalmarche: 1 arrivee: 370
dessinligne setintervalmarche: 1 arrivee: 365
dessinligne setintervalmarche: 1 arrivee: 360
dessinligne setintervalmarche: 1 arrivee: 355
dessinligne setintervalmarche: 1 arrivee: 350
dessinligne setintervalmarche: 1 arrivee: 345
dessinligne setintervalmarche: 1 arrivee: 340
dessinligne setintervalmarche: 1 arrivee: 335
dessinligne setintervalmarche: 1 arrivee: 330
dessinligne setintervalmarche: 1 arrivee: 325
dessinligne setintervalmarche: 1 arrivee: 320
dessinligne setintervalmarche: 1 arrivee: 315
dessinligne setintervalmarche: 1 arrivee: 310
dessinligne setintervalmarche: 1 arrivee: 305
dessinligne setintervalmarche: 1 arrivee: 300
dessinligne setintervalmarche: 1 arrivee: 295
dessinligne setintervalmarche: 1 arrivee: 290
dessinligne setintervalmarche: 1 arrivee: 285
dessinligne setintervalmarche: 1 arrivee: 280
dessinligne setintervalmarche: 1 arrivee: 275
dessinligne setintervalmarche: 1 arrivee: 270
dessinligne setintervalmarche: 1 arrivee: 265
dessinligne setintervalmarche: 1 arrivee: 260
dessinligne setintervalmarche: 1 arrivee: 255
dessinligne setintervalmarche: 1 arrivee: 250
dessinligne setintervalmarche: 1 arrivee: 245
dessinligne setintervalmarche: 1 arrivee: 240
dessinligne setintervalmarche: 1 arrivee: 235
dessinligne setintervalmarche: 1 arrivee: 230
dessinligne setintervalmarche: 1 arrivee: 225
dessinligne setintervalmarche: 1 arrivee: 220
dessinligne setintervalmarche: 1 arrivee: 215
dessinligne setintervalmarche: 1 arrivee: 210
dessinligne setintervalmarche: 1 arrivee: 205
dessinligne setintervalmarche: 1 arrivee: 200
dessinligne setintervalmarche: 1 arrivee: 195
dessinligne setintervalmarche: 1 arrivee: 190
dessinligne setintervalmarche: 1 arrivee: 185
dessinligne setintervalmarche: 1 arrivee: 180
dessinligne setintervalmarche: 1 arrivee: 175
dessinligne setintervalmarche: 1 arrivee: 170
dessinligne setintervalmarche: 1 arrivee: 165
dessinligne setintervalmarche: 1 arrivee: 160
dessinligne setintervalmarche: 1 arrivee: 155
dessinligne setintervalmarche: 1 arrivee: 150
dessinligne setintervalmarche: 1 arrivee: 145
dessinligne setintervalmarche: 1 arrivee: 140
dessinligne setintervalmarche: 1 arrivee: 135
dessinligne setintervalmarche: 1 arrivee: 130
dessinligne setintervalmarche: 1 arrivee: 125
dessinligne setintervalmarche: 1 arrivee: 120
dessinligne setintervalmarche: 1 arrivee: 115
dessinligne setintervalmarche: 1 arrivee: 110
dessinligne setintervalmarche: 1 arrivee: 105
dessinligne setintervalmarche: 1 arrivee: 100
dessinligne setintervalmarche: 1 arrivee: 95
dessinligne setintervalmarche: 1 arrivee: 90
dessinligne setintervalmarche: 1 arrivee: 85
dessinligne setintervalmarche: 1 arrivee: 80
dessinligne setintervalmarche: 1 arrivee: 75
dessinligne setintervalmarche: 1 arrivee: 70
dessinligne setintervalmarche: 1 arrivee: 65
dessinligne setintervalmarche: 1 arrivee: 60
dessinligne setintervalmarche: 1 arrivee: 55
dessinligne setintervalmarche: 1 arrivee: 50
dessinligne setintervalmarche: 1 arrivee: 45
dessinligne setintervalmarche: 1 arrivee: 40
dessinligne setintervalmarche: 1 arrivee: 35
dessinligne setintervalmarche: 1 arrivee: 30
dessinligne setintervalmarche: 1 arrivee: 25
dessinligne setintervalmarche: 1 arrivee: 20
dessinligne setintervalmarche: 1 arrivee: 15
dessinligne setintervalmarche: 1 arrivee: 10
dessinligne setintervalmarche: 1 arrivee: 5:

Jzeel
0
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
19 mars 2006 à 20:54
( ce post me fait mal aux zneuils.... )
0
WhiteMagus Messages postés 764 Date d'inscription lundi 21 juin 2004 Statut Membre Dernière intervention 5 février 2010
19 mars 2006 à 20:59
Moi ça marche parfaitement en copier-coller de mon côté
0
astrolabbcracker Messages postés 106 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 11 juin 2012
19 mars 2006 à 21:04
bon ça rassure , ma boucle marche pas trop mal !!!!!



je comprend pas pourquoi ça marche pas chez toi



[auteurdetail.aspx?ID=296289 WhiteMagus] ou [auteurdetail.aspx?ID=356636 bali_balo] vous avez une idée ?
0
cs_jzeel Messages postés 156 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 10 mars 2011
19 mars 2006 à 21:09
Peut-être est-ce a cause que ma version est différente de la tienne, moi j'ai flash MX.

Jzeel
0
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
19 mars 2006 à 21:13
//je suppose que le clip 'cont' continent les 2 clips : UpLine0 et DownLine0
//exemple, 'cont' peut être tout simplement la réf. au root

for(i=1; i<=32; i++){
cont.UpLine0.duplicateMovieClip("UpLine"+i, i);
cont.DownLine0.duplicateMovieClip("DownLine"+i, 100+i);
cont["UpLine"+i]._x = cont["UpLine"+i-1]._x+cont["UpLine"+i-1]._width;
cont["DownLine"+i] = cont["DownLine"+i-1]._x+cont["DownLine"+i-1]._width;

}

Si ça marche pas j'me fais moine...

bali_balo....=]


ps:quelle version as-tu astrolabbcracker?
0
cortoh Messages postés 1255 Date d'inscription dimanche 18 décembre 2005 Statut Membre Dernière intervention 2 décembre 2008
19 mars 2006 à 21:48
ouf! pas mecontent d'etre arrive en bas sans avoir le tete qui tourne...


Peace From Mars
To All Human Beings
0
Rejoignez-nous