(function(e){e.touch=function(){var t={start:true,imgs:[],width:0,height:0,offset:{left:0,top:0},startPos:{x:0,y:0},releasePos:{x:0,y:0},touches:[],path:[],tracing:false,startTime:0,stopTime:0,traceable:false},n=function(e){e.preventDefault();if(!t.start)return false;var n=t.offset.left<<0,r=t.offset.top<<0,i=t.touches;if(e.touches){for(var s=e.touches,o=s.length,u=0;u=0;u--)if(s[u]&&i[c]){l=s[u];var h=(i[c].e.clientX-n<<0)-l.x<<0,p=(i[c].e.clientY-r<<0)-l.y<<0;if(Math.abs(h)-1&&o[m]&&o[m].dragable){l=o[m].x;c=o[m].y;h=o[m].w/2;p=o[m].h/2;d=v.clientX-n-o[m].dx;d=d>u-h?u-h:d;d=df-p?f-p:d;d=d3||Math.abs(o[m].y-c)>3)i[g].moveFlag=true}if(t.traceable&&t.tracing&&s==1){t.stopTime=(new Date).getTime();d=t.stopTime-t.startTime<<0;if(d<1e3){l=v.clientX-n<<0;c=v.clientY-r<<0;v=t.path.length;Math.abs(l-t.path[v-1].x)<3&&Math.abs(c-t.path[v-1].y)<3||(t.path[v]={x:l,y:c})}}}if(t.touchMove)e.touches?t.touchMove(e.touches):t.touchMove([e]);return false},i=function(e){e.preventDefault();if(!t.start)return false;var n=t.offset.left<<0,r=t.offset.top<<0,i=t.imgs,s=t.touches,o=s.length;if(e.touches)for(var u=e.touches,f=u.length,l=false,c=0;c-1){i[s[c].s].selected=false;if(s[c].moveFlag)t.draged&&i[s[c].s].dragable&&t.draged(i[s[c].s]);else t.click&&i[s[c].s].clickable&&t.click(i[s[c].s])}s.splice(c,1);c--;o--}}else{if(s[0].s>-1)if(i[s[0].s]){i[s[0].s].selected=false;if(s[0].moveFlag)t.draged&&i[s[0].s].dragable&&t.draged(i[s[0].s]);else t.click&&i[s[0].s].clickable&&t.click(i[s[0].s]);s[0].s=-1}s[0].moveFlag=false;t.releasePos={x:e.clientX-n<<0,y:e.clientY-r<<0}}if(t.traceable)t.tracing=false;if(t.touchEnd)e.touches?t.touchEnd(e.touches):t.touchEnd([e]);return false};return{imgs:t.imgs,init:function(n){t.width=e.canvas.screen.getWidth();t.height=e.canvas.screen.getHeight();t.offset.left=e.getDom("jsGameScreen").offsetLeft;t.offset.top=e.getDom("jsGameScreen").offsetTop;t.traceable=n;this.bind()},create:function(e,n,r){var i=t.imgs,s=i.length;i[s]=e;i[s].dx=0;i[s].dy=0;i[s].clickable=n;i[s].dragable=r},click:function(e){t.click=e},draged:function(e){t.draged=e},touchStart:function(e){t.touchStart=e},touchMove:function(e){t.touchMove=e},touchEnd:function(e){t.touchEnd=e},resize:function(e){t.resize=e},bind:function(){var o=e.getDom("jsGameScreen");e.canvas.screen.getTouch()?e.events.touchStart(function(e){n(e)}).touchMove(function(e){r(e)}).touchEnd(function(e){i(e)}):e.events.mouseDown(function(e){n(e)}).mouseMove(function(e){r(e)}).mouseUp(function(e){i(e)});document.getElementsByTagName("body")[0].onresize=function(){t.resize&&t.resize();t.offset.left=e.getDom("jsGameScreen").offsetLeft;t.offset.top=e.getDom("jsGameScreen").offsetTop};o.onmouseout=function(){for(var e=t.imgs,n=t.touches,r=n.length,i=0;i-1){e[n[i].s].selected=false;n[i].s=-1}}},unbind:function(){var t=e.getDom("jsGameScreen");t.onmousedown=null;t.onmousemove=null;t.onmouseup=null;t.ontouchstart=null;t.ontouchmove=null;t.ontouchend=null},getImgs:function(){return t.imgs},deleteImg:function(e){for(var n=t.imgs,r=n.length,i=t.touches,s=i.length,o=0;oo)i[e].s--;else if(i[e].s==o)i[e].s=-1;n.splice(o,1);return true}return false},getStartPos:function(){return t.startPos},getReleasePos:function(){return t.releasePos},getPath:function(){return t.path},getGesture:function(){var e;e=t.path;var n=e.length;if(n){var r,i=0;r="null";for(var s="swipeleft",o="swiperight",u="scrollup",f="scrolldown",l=1;l0){s="";if(Math.abs(i)>20)o=""}if(r<0){o="";if(Math.abs(i)>20)s=""}if(i>0){u="";if(Math.abs(r)>20)f=""}if(i<0){f="";if(Math.abs(r)>20)u=""}}if(Math.abs(e[0].x-e[n-1].x)>100)u=f="";if(Math.abs(e[0].y-e[n-1].y)>100)s=o="";if(Math.abs(e[0].x-e[n-1].x)<20)s=o="";if(Math.abs(e[0].y-e[n-1].y)<20)u=f="";e=s||o||u||f||"null"}else e="null";return e},start:function(){t.start=true},stop:function(){t.start=false}}}()})(jsGame)