Hi everybody.
I got an mc (named "img") on the stage. In order to zoom it, I'm using the following code:
///ZOOM///
myZoom = function (myDepth)
{
if (myDepth == "deep")
{
myDepth = 4;
}
else if (myDepth == "medium")
{
myDepth = 8;
}
else if (myDepth == "light")
{
myDepth = 12;
} // end else if
img.onRelease = function()
{
if (k > 0)
{
return;
} // end if
zoom = true;
dir == 1 ? (dir = -1) : (dir = 1);
if (dir == 1)
{
pt = {x: img._xmouse, y: img._ymouse};
} // end if
};
this.onEnterFrame = function ()
{
if (!zoom)
{
return;
} // end if
img._xscale = img._xscale + dir * k * 50 / myDepth;
img._yscale = img._yscale + dir * k * 50 / myDepth;
var pt2 = {x: pt.x, y: pt.y};
img.localToGlobal(pt2);
img._x = img._x - (pt2.x - pt.x);
img._y = img._y - (pt2.y - pt.y);
++k;
if (k == 8)
{
zoom = false;
k = 0;
} // end if
};
};
myZoom("medium");
///END ZOOM///
- ///ZOOM///
- myZoom = function (myDepth)
- {
- if (myDepth == "deep")
- {
- myDepth = 4;
- }
- else if (myDepth == "medium")
- {
- myDepth = 8;
- }
- else if (myDepth == "light")
- {
- myDepth = 12;
- } // end else if
- img.onRelease = function()
- {
- if (k > 0)
- {
- return;
- } // end if
- zoom = true;
- dir == 1 ? (dir = -1) : (dir = 1);
- if (dir == 1)
- {
- pt = {x: img._xmouse, y: img._ymouse};
- } // end if
- };
- this.onEnterFrame = function ()
- {
- if (!zoom)
- {
- return;
- } // end if
- img._xscale = img._xscale + dir * k * 50 / myDepth;
- img._yscale = img._yscale + dir * k * 50 / myDepth;
- var pt2 = {x: pt.x, y: pt.y};
- img.localToGlobal(pt2);
- img._x = img._x - (pt2.x - pt.x);
- img._y = img._y - (pt2.y - pt.y);
- ++k;
- if (k == 8)
- {
- zoom = false;
- k = 0;
- } // end if
- };
- };
- myZoom("medium");
- ///END ZOOM///
Problem is, when I release on the mc it changes its original position to X=0,0 Y=0,0 as you can see
HERE.
Obviously, I want it to keep its starting position on the stage and zooming IN and OUT from there.
Thanks to anyone who may help.