Actionscript Image Panning

From Wikicliki
Revision as of 05:15, 16 October 2009 by WikiSysop (talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

AS 2

////////////////////////////////////
// room == filename of pic
// roomWidth == width of pic
// roomHeight == height of pic
//    
//    flashvars are defined in html
////////////////////////////////////

var filename = room+".jpg";
container.loadMovie(filename);
container._x = -100;
container._y = -100;

this.onMouseMove = function() {
	constrainedXYMove(container,4,1);
};

function constrainedXYMove(target:MovieClip, speed:Number, dir:Number) {
	var mouseXPercent:Number = _xmouse/Stage.width;
	var mouseYPercent:Number = _ymouse/Stage.height;
	
	var mxSpeed:Number;
	if (dir == 1) {
		mxSpeed = 1-mouseXPercent;
	} else {
		mxSpeed = mouseXPercent;
	}
	var mySpeed:Number;
	if (dir == 1) {
		mySpeed = 1-mouseYPercent;
	} else {
		mySpeed = mouseYPercent;
	}
	
	target.destX = Math.round(-((Stage.width-roomWidth)*mxSpeed));
	target.destY = Math.round(-((Stage.height-roomHeight)*mySpeed));
	
	target.onEnterFrame = function() {
		if (target._x == target.destX && target._y == target.destY) {
			delete target.onEnterFrame;
		} else {
			target._x -= Math.ceil((target.destX+target._x)*(speed/100));
			target._y -= Math.ceil((target.destY+target._y)*(speed/100));
		}
	};
}