I am building an image pan using tweenlite. But I am having huge issues with bugs. I have uploaded the sample here
http://el-el.net/projects/pan/
Here is my code
stop();
import gs.TweenLite;
import gs.easing.*;
var test:int=0;
var prevX:int=0;
var prevY:int=0;
var curX:int=0;
var curY:int=0;
var offsetX:int;
var offsetY:int;
var dirX:String="";
var dirY:String="";
mark_mc.visible=false;
stage.addEventListener(MouseEvent.MOUSE_DOWN, mainInit);
stage.addEventListener(MouseEvent.MOUSE_UP, mainRet);
addEventListener(Event.ENTER_FRAME, loop);
function mainInit(e:MouseEvent):void {
mark_mc.visible=true;
stage.addEventListener(MouseEvent.MOUSE_MOVE, inInit);
}
function mainRet(e:MouseEvent):void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE, inInit);
mark_mc.visible=false;
if (bg_mc.x>=1525) {
bg_mc.x=1525;
}
if (bg_mc.x<=-555) {
bg_mc.x=-555;
}
//TweenLite.to(bg_mc, 1, {x:"0",y:"0",ease:Cubic.easeOut});
}
function inInit(e:MouseEvent):void {
var xDirection:int=GetHorizontalDirection();
var inOffset:int= bg_mc.x + (xDirection*10);
trace(xDirection);
TweenLite.to(bg_mc, 1, {x:(inOffset)
});
e.updateAfterEvent();
}
function loop(e:Event):void {
if (bg_mc.x>=1525) {
bg_mc.x=1525;
}
if (bg_mc.x<=-555) {
bg_mc.x=-555;
}
}
function GetHorizontalDirection():int {
prevX=curX;
curX=stage.mouseX;
offsetX=curX-prevX;
return offsetX;
}
How can I better this, so the scrolling is more smooth. Apart from that how do I ensure that during tween the the bg is not pulled out of the stage (I later correct it when the mouse is released but during tween as well, it looks pretty bad). Please help.