Here you go. I assume you're using AS2.
var ZOOM_SPEED = 20;// The lower the faster
var NORM_ZOOM = 100;
var LARGE_ZOOM = 200;
var Lock:Boolean = false;
rect.onPress = function() {
if (!Lock) {
if (rect._xscale == 100) {
ZoomAnim(rect,LARGE_ZOOM);
} else {
ZoomAnim(rect,NORM_ZOOM);
}
}
};
function ZoomAnim(obj:MovieClip, target:Number) {
Lock = true;
var Diff = Math.abs(target - obj._xscale);
if (Diff <= 1) {
obj._xscale = target;
obj._yscale = target;
Lock = false;
} else {
var Accel = 3;// The lower, the slower it will "ease"
if (target < obj._xscale) {
Accel *= -1;
}
obj._xscale += Diff / ZOOM_SPEED * Accel;
obj._yscale += Diff / ZOOM_SPEED * Accel;
setTimeout(ZoomAnim,10,obj,target);
}
}