Problème conversion flash 5 vers flash8 [Résolu]

Signaler
Messages postés
3
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
24 janvier 2008
-
Messages postés
3
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
24 janvier 2008
-
Bonjour,
Voilà j'ai réalisé une anim avec comme base un jeu de morpion (code flash5) lorsque je veux publier mon anim en flash 8, il me dit:

Ligne 65 : La partie gauche de l’opérateur d’affectation doit être une variable ou une propriété.
                 eval("_root."+this.nomsansroot+"test") = 1;

Voilà une partie du code à problème:

function Gestclick (nom, nomsansroot) {
    this.nom = eval(nom);
    this.nomsansroot = nomsansroot;

}

Gestclick.prototype.test = function () {

    if (_root.modetest == '1v1') {

        if (eval("_root."+this.nomsansroot+"test") == 0) {

            _root.click++;
            if ((_root.click)/2 != Math.ceil(_root.click/2)) {
                this.nom.gotoAndPlay(2);
            } else {
                this.nom.gotoAndPlay(3);
            }
            eval("_root."+this.nomsansroot+"test") = 1;
        }
    }
Je crois que c'est juste un problème de syntaxe, mais...
Si quelqu'un avait une solution, ce serait cool!
merci

2 réponses

Messages postés
120
Date d'inscription
mercredi 14 décembre 2005
Statut
Membre
Dernière intervention
10 décembre 2007

Salut,


En cherchant un peu dans la doc Flash tu aurais trouvé ceci :



A partir de Flash 5, vous ne pouvez plus recourir à
<code>eval
()</code> pour définir de façon
dynamique et extraire la valeur d'une variable ou d'un nom d'occurrence, car
vous ne pouvez pas utiliser
<code>eval
()</code> dans la partie gauche d'une
équation. Par exemple, remplacez le code





<code>eval

("var" + i) =
"first";</code>




par :




this["var"+i]  = "first"





ou par :




set ("var" + i, "first");












Je te laisse en tirer les conclusions qui s'imposes



++
Messages postés
3
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
24 janvier 2008

Merci,
désolé si ça paraîssait simple mais mon niveau est faible!
set ne marche pas mais this c'est ok!