Amélioreration du code

lapinou27 Messages postés 1 Date d'inscription lundi 24 décembre 2007 Statut Membre Dernière intervention 4 novembre 2009 - 4 nov. 2009 à 16:45
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 - 4 nov. 2009 à 17:18
bonjour,
je cherche un moyen d'améliorer le code suivant qui fonctionne mais qui me parrait bien lourd et je me demande s'il n'y a pas moyen de faire plus simple
mes débuts en AS m'empêche d'aller plus loin.
voici le code ci dessous

mon code est inclu dans un clip qui doit vérifier l'état des composant (checkBox) présent dans un clip parent
selon les composants selectionnés une image du scénario à chaque fois différente est affiché sur la scène

en espérant avoir été clair
merci d'avance.


on (press) {
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true) && (_parent.ac5.selected == false)) {
_parent.gotoAndStop(3);
} else {

}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(5);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(5);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(5);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(5);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == false)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&& (_parent.ac5.selected == false)) {
_parent.gotoAndStop(6);
} else {
}

if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == true) && (_parent.ac4.selected == false)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(4);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected true) && (_parent.ac3.selected == false) && (_parent.ac4.selected == false)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == false)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected true) && (_parent.ac2.selected false) && (_parent.ac3.selected == false) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
if ((_parent.ac1.selected false) && (_parent.ac2.selected false) && (_parent.ac3.selected == true) && (_parent.ac4.selected == true)&&(_parent.ac5.selected==true)) {
_parent.gotoAndStop(7);
} else {
}
}

1 réponse

pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
4 nov. 2009 à 17:18
Bonjour,

Moi je verrais ça comme un système binaire :

var result:uint = "0x"+_parent.ac5.selected+_parent.ac4.selected+_parent.ac3.selected+_parent.ac2.selected+_parent.ac1.selected;
switch (result) {
case 15 : _parent.gotoAndStop(3); break;
case 1 :
case 2 :
case 4 :
case 8 : _parent.gotoAndStop(5); break;
case 15 : _parent.gotoAndStop(3); break;
case ....
default : _parent.gotoAndStop(7); break;
}


à toi de finir les conditions pour le 6 ...

Peg'
0
Rejoignez-nous