2012-04-11 20 views
0

Hallo Ich bekomme immer den Fehler: Erwartung Bezeichner vor größer als. on line 13. Jede Hilfe wäre nett bitte und Danke.Swarming in AS2

fly = function() { 
    this.animate = function() { 
     // Capture mouse positions and distance from mouse 
     this.targetX = _root._xmouse; 
     this.targetY = _root._ymouse; 
     this.distX = this.targetX-this.meX+this.flockX; 
     this.distY = this.targetY-this.meY+this.flockY; 
     // 
     if ((this.targetX == this.oldTargetX) && Math.random()>0.9) { 
      // add small scale random darting if mouse is still 
      this.flockX = (Math.random()*100)-50; 
      this.flockY = (Math.random()*100)-50; 
     } else if ((this.targetX<>this.oldTargetX) && Math.random()>0.8) { 
      // add large scale random darting if mouse is moving 
      this.flockX = (Math.random()*400)-200; 
      this.flockY = (Math.random()*400)-200; 
     } 
     // Apply inertia equation 
     this.meX = Math.round(this.meX+(this.distX)/20); 
     this.meY = Math.round(this.meY+(this.distY)/20); 
     // perform animation 
     this._x = this.meX; 
     this._y = this.meY; 
     // remember the current mouse pos so we can tell if 
     // it has moved next time around 
     this.oldTargetX = this.targetX; 
    }; 
    this.initialize = function() { 
     this.targetX = 0; 
     this.targetY = 0; 
     this.distX = 0; 
     this.distY = 0; 
     this.meX = this._x; 
     this.meY = this._y; 
     this.oldTargetX = 0; 
     this.flockX = (Math.random()*200)-100; 
     this.flockY = (Math.random()*200)-100; 
    }; 
    // set up onEnterFrame script to animate _parent... 
    this.initialize(); 
    this.onEnterFrame = this.animate; 
}; 
    // 
    // 
    var i:Number = 0; 
    var bugClip:MovieClip; 
    for (i=0; i<30; i++) { 
     bugClip = this.attachMovie("bug", "bug"+i, i); 
     fly.apply(bugClip); 
    } 
+0

Sie müssen Ihren Code in einem Codeblock bearbeiten, sonst wird niemand Ihre Frage beantworten – JGilmartin

+1

@StudentRik Ich habe Ihre Frage geändert (verwenden Sie das Symbol {}, um Code auf stackoverflow zu formatieren), sagte Ihr Titel AS3, aber die Code ist eindeutig AS2. Ich denke, der Fehler könnte dadurch verursacht werden: 'this.targetX <> this.oldTargetX'. Ist das ein Fehler (sollte es < or > sein) oder meinen Sie "anders"/"nicht gleich", dann sollten Sie den '!' (NOT) Operator verwenden: 'this.targetX! = This.oldTargetX' –

Antwort

0

ich über Actionscript weiß es nicht, aber indem Sie den Code suchen würde ich empfehlen, wie dies zu tun:

randomValue = Math.random() 
    if ((this.targetX == this.oldTargetX) && randomValue>0.9) { 
0

Die <> Operator für nicht equals veraltet ist seit Flash Player 5 Doc reference here

Sie sollten! = Für die gleiche Funktionalität verwenden.

Obwohl ich dies auf Flash Player 10.2 getestet und es wird immer noch kompilieren und ohne Fehler ausgeführt. Ich schätze, du kompilierst zu einer späteren Version.