0 Replies Latest reply on Jun 15, 2009 8:57 AM by ricjubas

    Got a menu in AS2 with XML, can t make it disappear when change frame

    ricjubas

      Hi, here goes nothing..i got a menu working with xml connection...I've tried unloadMovie and other similar coding...the best i could do was to clear entire screen with unloadMovie(this)...also i don t have any other mc_target belonging to this menu(somehow they don t show up, only in library..), and even when i use icon , item or inner..nothing seems to work...Any help would be very apreciated...Here s  the code of that menu(which is action-frame code based), i would like to make it disappear when i change frame, but only the menu not other objects i have in stage...

       

      import mx.utils.Delegate;
      import mx.transitions.Tween;
      import mx.transitions.easing.*;

       

       

       


          var numOfItems:Number;
          var radiusX:Number = 210;
          var radiusY:Number = 160;
          var centerX:Number = Stage.width-300;
          var centerY:Number = Stage.height-300;
          var speed:Number = 0.02;
          var perspective:Number = 230;
          var home:MovieClip = this;
          theText._alpha = 0;

       

          var tooltip:MovieClip = this.attachMovie("tooltip", "tooltip", 20000);
          tooltip._alpha = 0;

       

          se.setMask(masker2);
          var xml:XML = new XML();
          xml.ignoreWhite = true;

       

          xml.onLoad = function() {
              var nodes = this.firstChild.childNodes;
              numOfItems = nodes.length;
              for (var i = 0; i<numOfItems; i++) {
                  var t = home.attachMovie("item", "item"+i, i+1);
                  t.angle = i*((Math.PI*2)/numOfItems);
                  t.onEnterFrame = mover;
                  t.toolText = nodes[i].attributes.tooltip;
                  t.content = nodes[i].attributes.content;
                  t.icon.inner.loadMovie(nodes[i].attributes.image);
                  t.r.inner.loadMovie(nodes[i].attributes.image);
                  t.icon.onRollOver = over;
                  t.icon.onRollOut = out;
                  t.icon.onRelease = released;
              }
          };

       

          function over() {
              //BONUS Section
              var sou:Sound = new Sound();
              sou.attachSound("sover");
              sou.start();

       

              home.tooltip.tipText.text = this._parent.toolText;
              home.tooltip._x = this._parent._x;
              home.tooltip._y = this._parent._y-this._parent._height/2;
              home.tooltip.onEnterFrame = Delegate.create(this, moveTip);
              home.tooltip._alpha = 80;
          }

       

          function out() {
              delete home.tooltip.onEnterFrame;
              home.tooltip._alpha = 0;
          }

       

          function released() {
              //BONUS Section
              var sou:Sound = new Sound();
              sou.attachSound("sdown");
              sou.start();

       

              home.tooltip._alpha = 0;
              for (var i = 0; i<numOfItems; i++) {
                  var t:MovieClip = home["item"+i];
                  t.xPos = t._x;
                  t.yPos = t._y;
                  t.theScale = t._xscale;
                  delete t.icon.onRollOver;
                  delete t.icon.onRollOut;
                  delete t.icon.onRelease;
                  delete t.onEnterFrame;
                  if (t != this._parent) {
                      var tw:Tween = new Tween(t, "_xscale", Strong.easeOut, t._xscale, 0, 3, true);
                      var tw2:Tween = new Tween(t, "_yscale", Strong.easeOut, t._yscale, 0, 3, true);
                      var tw3:Tween = new Tween(t, "_alpha", Strong.easeOut, 100, 0, 3, true);
                  } else {
                      var tw:Tween = new Tween(t, "_xscale", Strong.easeOut, t._xscale, 120, 2, true);
                      var tw2:Tween = new Tween(t, "_yscale", Strong.easeOut, t._yscale, 120, 2, true);
                      var tw3:Tween = new Tween(t, "_x", Strong.easeOut, t._x, 512, 1, true);
                      var tw4:Tween = new Tween(t, "_y", Strong.easeOut, t._y, 500, 3, true);
                      var tw5:Tween = new Tween(theText, "_alpha", Strong.easeOut, 50, 100, 2, true);
                      theText.text = t.content;
                      var s:Object = this;
                      tw.onMotionStopped = function() {
                          s.onRelease = unReleased;
                      };
                  }
              }
          }

       

          function unReleased() {
              //BONUS Section
              var sou:Sound = new Sound();
              sou.attachSound("sdown");
              sou.start();

       

              delete this.onRelease;
              var tw:Tween = new Tween(theText, "_alpha", Strong.easeOut, 100, 0, 3, true);
              for (var i = 0; i<numOfItems; i++) {
                  var t:MovieClip = home["item"+i];
                  if (t != this._parent) {
                      var tw:Tween = new Tween(t, "_xscale", Strong.easeOut, 0, t.theScale, 1, true);
                      var tw2:Tween = new Tween(t, "_yscale", Strong.easeOut, 0, t.theScale, 1, true);
                      var tw3:Tween = new Tween(t, "_alpha", Strong.easeOut, 50, 100, 3, true);
                  } else {
                      var tw:Tween = new Tween(t, "_xscale", Strong.easeOut, 100, t.theScale, 1, true);
                      var tw2:Tween = new Tween(t, "_yscale", Strong.easeOut, 100, t.theScale, 1, true);
                      var tw3:Tween = new Tween(t, "_x", Strong.easeOut, t._x, t.xPos, 1, true);
                      var tw4:Tween = new Tween(t, "_y", Strong.easeOut, t._y, t.yPos, 1, true);
                      tw.onMotionStopped = function() {
                          for (var i = 0; i<numOfItems; i++) {
                              var t:MovieClip = home["item"+i];
                              t.icon.onRollOver = Delegate.create(t.icon, over);
                              t.icon.onRollOut = Delegate.create(t.icon, out);
                              t.icon.onRelease = Delegate.create(t.icon, released);
                              t.onEnterFrame = mover;
                          }
                      };
                  }
              }
          }

       


          function moveTip() {
              home.tooltip._x = this._parent._x;
              home.tooltip._y = this._parent._y-this._parent._height/2;
          }

       


          xml.load("icons.xml");

       

          function mover() {
              this._x = Math.cos(this.angle)*radiusX+centerX;
              this._y = Math.sin(this.angle)*radiusY+centerY;
              var s = (this._y-perspective)/(centerX+radiusX-perspective);
              this._xscale = this._yscale=s*40;
              this.angle += this._parent.speed;
              this.swapDepths(Math.round(this._xscale)+100);
          }

       

          this.onMouseMove = function() {
              speed = (this._xmouse-centerX)/8500;
          };

       

       

       


      ;

       


      stop();

       

       

       

      thx for your help