engine.min.js 18 KB

1
  1. function dot_Anim(e,t,n,r){var i=this;this.name=e;this.timing=1/t;this.loop=n;this.frames=r;this.numberOfFrames=this.frames.length;this.timer=this.currentFrameIndex=0;this.finished=!1;this.dirty=!0;this.currentFrame=0;this.reset=function(){this.timer=this.currentFrameIndex=0;this.finished=!1;this.dirty=!0;this.currentFrame=this.frames[this.currentFrameIndex]};this.update=function(e){this.finished||(this.timer+=e,this.timer>this.timing?(this.currentFrameIndex++,this.dirty=!0,this.currentFrameIndex>=this.numberOfFrames&&(this.currentFrameIndex=0,this.loop||(this.finished=!0)),this.currentFrame=this.frames[this.currentFrameIndex],this.timer=0):i.dirty=!1)}}function dot_Sprite(){this.load=function(e,t,n,r,i,s,o,u){this.image=e;this.frameWidth=t;this.frameHeight=n;this.offsetX=r;this.offsetY=i;this.w=s;this.h=o;this.visible=!0;this.currentAnim=null;this.accely=this.accelx=this.speedy=this.speedx=0;this.scene=null;this.flip=0;this.frames=[];this.numberOfFrames=0;this.alpha=1;e=this.image.height/this.frameHeight;r=this.image.width/this.frameWidth;for(i=0;i<e;i++)for(s=0;s<r;s++)this.frames[this.numberOfFrames]={x:s*t,y:i*n},this.numberOfFrames++;u&&(this.numberOfFrames/=2)};this.addAnim=function(e,t,n,r){var i="anim."+e;this[i]=new dot_Anim(e,t,n,r);this.currentAnim=this[i];this.currentAnim.reset()};this.play=function(e){this.currentAnim=this["anim."+e];this.currentAnim.reset()};this.render=function(e,t,n){var r=this.currentAnim.currentFrame+this.flip*this.numberOfFrames;t=Math.round(this.x-this.offsetX+t);n=Math.round(this.y-this.offsetY+n);1!=this.alpha&&(e.globalAlpha=this.alpha);e.drawImage(this.image,this.frames[r].x,this.frames[r].y,this.frameWidth,this.frameHeight,t,n,this.frameWidth,this.frameHeight);e.globalAlpha=1};this.reset=function(e,t){this.x=Math.floor(e);this.y=Math.floor(t);this.visible=this.active=!0};this.kill=function(){this.visible=this.active=!1};this.update=function(){};this.preUpdate=function(e){this.currentAnim&&this.currentAnim.update(e)};this.postUpdate=function(){}}function dot_Font(){this.load=function(e,t,n,r,i,s,o){this.image=e;this.charOffsetX={};this.charOffsetY={};this.charHeight=r*s;this.lineSpacing=i*s;this.multiplySize=s;i=r=e=0;this.charWidths={};for(var u=0;u<t.length;u++)s=t[u],"\n"===s?(e=0,r+=this.charHeight):(this.charOffsetX[s]=e,this.charOffsetY[s]=r,this.charWidths[s]=(n[i]+1)*this.multiplySize,e+=this.charWidths[s],i++);this.offsetBlackWhiteY=o?Math.round(this.image.height/2):0};this.write=function(e,t,n,r,i,s,o){for(var u=t,a,f,l=s;l<o;l++)f=r[l],s=this.charOffsetX[f],a=this.charOffsetY[f],void 0===s||void 0===a?(u+=this.charWidths[" "],"\n"===f&&(u=t,n+=this.lineSpacing)):(i?e.drawImage(this.image,s,a+this.offsetBlackWhiteY,this.charWidths[f],this.charHeight,u,n,this.charWidths[f],this.charHeight):e.drawImage(this.image,s,a,this.charWidths[f],this.charHeight,u,n,this.charWidths[f],this.charHeight),u+=this.charWidths[f])};this.getTextSize=function(e){for(var t=0,n=0,r=0,i,s,o,u=0;u<e.length;u++)o=e[u],i=this.charOffsetX[o],s=this.charOffsetY[o],void 0===i||void 0===s?(t+=this.charWidths[" "],"\n"===o&&(r<t&&(r=t),t=0,n+=this.lineSpacing)):t+=this.charWidths[o];r<t&&(r=t);return{w:r,h:n+this.charHeight}}}function dot_NumberFont(){this.load=function(e,t,n){this.image=e;this.charWidth=t;this.charHeight=n};this.write=function(e,t,n,r,i,s){n-=this.charWidth;for(var o=0,o=!0;0<s;){if(0<t||o)o=t%10,e.drawImage(this.image,this.charWidth*o,0,this.charWidth,this.charHeight,n,r,this.charWidth,this.charHeight),t=Math.floor(t/10),n-=this.charWidth,o=i;s--}}}function dot_TalkBubble(){this.reset=function(e,t,n,r,i,s,o,u,a){this.image=e;this.text="";this.x=s;this.y=o;this.offsetX=t;this.offsetY=n;this.w=u;this.font=a;e=r.split(" ");for(r=t=0;r<e.length;r++)n=a.getTextSize(e[r]).w,t+n>this.w?(this.text+="\n"+e[r]+" ",t=n+a.charWidths[" "]):(this.text+=e[r]+" ",t+=n+a.charWidths[" "]);this.timer=this.currentIndex=0;this.maxTimer=1/i;this.justFinished=this.finished=!1};this.update=function(e){this.justFinished=!1;this.finished||(this.timer+=e,this.timer>this.maxTimer&&(this.timer=0,this.currentIndex++,this.currentIndex==this.text.length&&(this.justFinished=this.finished=!0)))};this.render=function(e,t,n,r){e.drawImage(this.image,Math.floor(this.x+t-this.offsetX),Math.floor(this.y+n-this.offsetY));this.font.write(e,Math.floor(this.x+t),Math.floor(this.y+n),this.text,r,0,this.currentIndex)}}function dot_Math(){this.load=function(){this.m_sin=Array(1440);this.m_cos=Array(1440);for(var e=0,t=0;1440>t;t++)this.m_sin[t]=Math.sin(e*PI/180),this.m_cos[t]=Math.cos(e*PI/180),e+=.25;this.msquare=Array(600);for(t=0;t<this.msquare.length;t++)this.msquare[t]=t*t};this.sqrt=function(e){e=Math.floor(e);e=0<e?e:-e;for(var t=0,n=this.msquare.length-1,r=t+n>>1;t<n-1;){if(this.msquare[r]>e)n=r;else if(this.msquare[r]<e)t=r;else break;r=t+n>>1}return r};this.sin=function(e){0>e?e+=360:360<=e&&(e-=360);return this.m_sin[Math.floor(4*e)]};this.cos=function(e){0>e?e+=360:360<=e&&(e-=360);return this.m_cos[Math.floor(4*e)]}}function dot_VarTween(){this.duration=this.duration_inverse=this.t=0;this.functionId=EASE_NONE;this.targetRangeNumber=this.targetLowest=this.timer=0;this.finished=!0;this.delta=0;this.reset=function(e,t,n,r){this.duration_inverse=1/r;this.functionId=n;this.timer=0;this.targetLowest=e;this.targetRangeNumber=t-e;this.duration=r;this.finished=!1;this.t=0;this.delta=this.targetLowest;this.update(0)};this.replay=function(){this.finished=!1;this.t=this.timer=0;this.delta=this.targetLowest;this.update(0)};this.update=function(e){if(!this.finished)if(this.timer+=e,this.timer>this.duration)this.finished=!0,this.t=1,this.delta=this.targetLowest+this.targetRangeNumber;else{e=this.t=this.timer*this.duration_inverse;switch(this.functionId){case EASE_QUAD_IN:e*=e;break;case EASE_QUAD_OUT:e=-e*(e-2);break;case EASE_QUAD_INOUT:e=.5>=e?2*e*e:1-2*--e*e;break;case EASE_CUBE_IN:e*=e*e;break;case EASE_CUBE_OUT:e=1+ --e*e*e;break;case EASE_CUBE_INOUT:e=.5>=e?4*e*e*e:1+4*--e*e*e;break;case EASE_QUART_IN:e*=e*e*e;break;case EASE_QUART_OUT:e=1-(e-=1)*e*e*e;break;case EASE_QUART_INOUT:e=.5>=e?8*e*e*e*e:(1-(e=2*e-2)*e*e*e)/2+.5;break;case EASE_QUINT_IN:e*=e*e*e*e;break;case EASE_QUINT_OUT:e=(e-=1)*e*e*e*e+1;break;case EASE_QUINT_INOUT:e=1>(e*=2)?e*e*e*e*e/2:((e-=2)*e*e*e*e+2)/2;break;case EASE_SIN_IN:e=-Math.cos(PI2*e)+1;break;case EASE_SIN_OUT:e=Math.sin(PI2*e);break;case EASE_SIN_INOUT:e=-Math.cos(PI*e)/2+.5;break;case EASE_BOUNCE_IN:e=1-e;if(e<B1){e=1-7.5625*e*e;break}if(e<B2){e=1-(7.5625*(e-B3)*(e-B3)+.75);break}if(e<B4){e=1-(7.5625*(e-B5)*(e-B5)+.9375);break}e=1-(7.5625*(e-B6)*(e-B6)+.984375);break;case EASE_BOUNCE_OUT:if(e<B1){e*=7.5625*e;break}if(e<B2){e=7.5625*(e-B3)*(e-B3)+.75;break}if(e<B4){e=7.5625*(e-B5)*(e-B5)+.9375;break}e=7.5625*(e-B6)*(e-B6)+.984375;break;case EASE_BOUNCE_INOUT:if(.5>e){e=1-2*e;if(e<B1){e=(1-7.5625*e*e)/2;break}if(e<B2){e=(1-(7.5625*(e-B3)*(e-B3)+.75))/2;break}if(e<B4){e=(1-(7.5625*(e-B5)*(e-B5)+.9375))/2;break}e=(1-(7.5625*(e-B6)*(e-B6)+.984375))/2;break}e=2*e-1;if(e<B1){e=7.5625*e*e/2+.5;break}if(e<B2){e=(7.5625*(e-B3)*(e-B3)+.75)/2+.5;break}if(e<B4){e=(7.5625*(e-B5)*(e-B5)+.9375)/2+.5;break}e=(7.5625*(e-B6)*(e-B6)+.984375)/2+.5;break;case EASE_CIRC_IN:e=-(Math.sqrt(1-e*e)-1);break;case EASE_CIRC_OUT:e=Math.sqrt(1-(e-1)*(e-1));break;case EASE_CIRC_INOUT:e=.5>=e?(Math.sqrt(1-4*e*e)-1)/-2:(Math.sqrt(1-(2*e-2)*(2*e-2))+1)/2;break;case EASE_EXPO_IN:e=Math.pow(2,10*(e-1));break;case EASE_EXPO_OUT:e=-Math.pow(2,-10*e)+1;break;case EASE_EXPO_INOUT:e=.5>e?Math.pow(2,10*(2*e-1))/2:(-Math.pow(2,-10*(2*e-1))+2)/2;break;case EASE_BACK_IN:e=e*e*(2.70158*e-1.70158);break;case EASE_BACK_OUT:e=1- --e*e*(-2.70158*e-1.70158);break;case EASE_BACK_INOUT:e*=2;if(1>e){e=e*e*(2.70158*e-1.70158)/2;break}e--;e=(1- --e*e*(-2.70158*e-1.70158))/2+.5}this.t=e;this.delta=this.targetLowest+this.targetRangeNumber*this.t}}}function dot_ScoreContext(){this.fontImage=img_number_context;this.charWidth=18;this.charHeight=21;this.needPlusSign=!1;this.score=this.timer=0;this.numberOfChars=1;this.reset=function(e,t,n,r){this.numberOfChars=1;999<n?this.numberOfChars=4:99<n?this.numberOfChars=3:9<n&&(this.numberOfChars=2);this.needPlusSign=r;this.score=n;this.w=this.getWidth(this.score,!1,this.numberOfChars)+3;this.h=this.charHeight;this.needPlusSign&&(this.w+=18);this.x=Math.floor(e-.5*this.w);this.y=Math.floor(t-this.charHeight);this.timer=1;this.speedy=-2;this.accely=.5;this.visible=this.active=!0};this.getWidth=function(e,t,n){for(var r=0,i=0,i=!0;0<n;){if(0<e||i)i=e%10,e=Math.floor(e/10),r=1!=i?r+(this.charWidth-3):r+6,i=t;n--}return r};this.write=function(e,t,n,r,i,s){n-=this.charWidth;for(var o=0,o=!0;0<s;){if(0<t||o)o=t%10,e.drawImage(this.fontImage,this.charWidth*o,0,this.charWidth,this.charHeight,n,r,this.charWidth,this.charHeight),t=Math.floor(t/10),n=1!=o?n-(this.charWidth-3):n-6,o=i;s--}};this.update=function(e){this.active&&0<this.timer&&(this.timer-=e,2>this.speedy&&(this.y+=this.speedy,this.speedy+=this.accely),0>this.timer&&(this.visible=this.active=!1))};this.render=function(e,t,n){this.visible&&(t=Math.floor(this.x+t),n=Math.floor(this.y+n),this.needPlusSign&&e.drawImage(this.fontImage,180,0,18,21,t,n,18,21),this.write(e,this.score,t+this.w,n,!1,this.numberOfChars))}}function HeartBeat(){this.delta=this.angle=0;this.update=function(){this.angle+=12;360<=this.angle&&(this.angle-=360);this.delta=m_math.sin(this.angle)}}function dot_Effect(){this.finished=!0;this.fadeFunction=EFFECT_FADE_IN;this.alpha=this.timer=this.info=this.duration=0;this.tween=new dot_VarTween;this.reset=function(e,t,n){this.fadeFunction=e;this.duration=t;this.info=n;e==EFFECT_FADE_IN?(this.alpha=0,this.tween.reset(0,1,EASE_NONE,t)):(this.alpha=1,this.tween.reset(1,0,EASE_NONE,t));m_effectContext.fillStyle="#000000";this.finished=!1};this.update=function(e){this.tween.finished||(this.alpha=this.tween.delta,m_effectContext.globalAlpha=this.alpha,m_effectContext.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),m_effectContext.fillRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),this.tween.update(e),this.tween.finished&&(this.fadeFunction==EFFECT_FADE_OUT&&m_effectContext.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),m_effectContext.globalAlpha=1,this.finished=!0))}}function dot_ObjectPool(){this.array=null;this.needUpdateReverse=!1;this.create=function(e,t){this.array=Array(t);for(var n=0;n<t;n++)this.array[n]=new e;this.index=0};this.next=function(){var e=this.array[this.index];this.index++;this.index>=this.array.length&&(this.index=0);return e};this.update=function(e){if(this.needUpdateReverse)for(t=this.array.length-1;0<=t;t--)this.array[t].active&&this.array[t].update(e);else for(var t=0;t<this.array.length;t++)this.array[t].active&&this.array[t].update(e)};this.render=function(e,t,n){if(this.needUpdateReverse)for(r=this.array.length-1;0<=r;r--)this.array[r].visible&&this.array[r].render(e,t,n);else for(var r=0;r<this.array.length;r++)this.array[r].visible&&this.array[r].render(e,t,n)}}function dot_Button(){this.create=function(e,t,n){this.load(e,t,n,0,0,t,n);this.currentFrame=0};this.reset=function(e,t){this.x=Math.floor(e);this.y=Math.floor(t);this.isPressed=this.justPressed=this.justReleased=this.pressing=!1;this.currentFrame=0;this.release();this.active=!0};this.press=function(){this.justReleased=!1;this.isPressed||(this.justPressed=!0);this.isPressed=!0};this.release=function(){this.justPressed=!1;this.isPressed&&(this.justReleased=!0);this.isPressed=!1};this.update=function(){this.justReleased=this.justPressed=!1;this.pressing!=this.isPressed&&(this.isPressed?this.release():this.press())};this.render=function(e,t,n){this.visible&&(t=Math.round(this.x-this.offsetX+t),n=Math.round(this.y-this.offsetY+n),this.isPressed&&(n+=3),e.drawImage(this.image,this.frames[this.currentFrame].x,this.frames[this.currentFrame].y,this.frameWidth,this.frameHeight,t,n,this.frameWidth,this.frameHeight))}}function dot_Blink(){this.load(img_blink,15,15,7,7,15,15);this.addAnim("blink",10,!1,[0,1,2,1,0]);this.reset=function(e,t){this.x=Math.floor(e);this.y=Math.floor(t);this.play("blink",!0);this.visible=this.active=!0};this.update=function(e){this.preUpdate(e);this.currentAnim.finished&&(this.visible=this.active=!1);this.postUpdate(e)}}function dot_Medal(){m_blinkPool=new dot_ObjectPool;m_blinkPool.create(dot_Blink,4);this.timer=.1;this.h=this.w=this.y=this.x=0;this.visible=this.active=!1;this.medalType=0;this.reset=function(e,t,n){this.x=Math.floor(e);this.y=Math.floor(t);this.w=45;this.h=72;this.medalType=n;this.visible=this.active=!0};this.update=function(e){m_blinkPool.update(e);0<this.timer&&(this.timer-=e,0>=this.timer&&(this.timer=.5,m_blinkPool.next().reset(this.x-10+Math.random()*(this.w+20),this.y-10+Math.random()*(this.h+20))))};this.render=function(e,t,n){e.drawImage(img_medals,45*this.medalType,0,45,72,this.x,this.y,45,72);m_blinkPool.render(e,t,n)}}var ENGINE_VERSION="1.0.3";var EASE_NONE=0,EASE_QUAD_IN=1,EASE_QUAD_OUT=2,EASE_QUAD_INOUT=3,EASE_CUBE_IN=4,EASE_CUBE_OUT=5,EASE_CUBE_INOUT=6,EASE_QUART_IN=7,EASE_QUART_OUT=8,EASE_QUART_INOUT=9,EASE_QUINT_IN=10,EASE_QUINT_OUT=11,EASE_QUINT_INOUT=12,EASE_SIN_IN=13,EASE_SIN_OUT=14,EASE_SIN_INOUT=15,EASE_BOUNCE_IN=16,EASE_BOUNCE_OUT=17,EASE_BOUNCE_INOUT=18,EASE_CIRC_IN=19,EASE_CIRC_OUT=20,EASE_CIRC_INOUT=21,EASE_EXPO_IN=22,EASE_EXPO_OUT=23,EASE_EXPO_INOUT=24,EASE_BACK_IN=25,EASE_BACK_OUT=26,EASE_BACK_INOUT=27,PI=3.1415926,PI2=1.5707963,B1=.363636363636364,B2=.727272727272727,B3=.545454545454545,B4=.909090909090909,B5=.818181818181818,B6=.954545;var SCREEN_WIDTH=0,SCREEN_HEIGHT=0,m_elapsed,m_lastTime=0,m_currentTime=0,m_resourceNumber=100,m_resourceCounter=0,m_initialized=!1,m_isReqAnimationEnabled,_reqAnimation,m_backgroundCanvas,m_backgroundContext,m_fgObjectCanvas,m_fgObjectContext,m_effectCanvas,m_effectContext,m_loaderRenderEnabled=0,m_effect,m_scoreContextPool,m_heartBeat,m_math,m_blinkPool;var EFFECT_FADE_IN=0,EFFECT_FADE_OUT=1;var MEDAL_BRONZE=0,MEDAL_SILVE=1,MEDAL_GOLD=2,MEDAL_PLATINUM=3;this.updatePreloader=function(){if(m_resourceCounter<=m_resourceNumber&&2==m_loaderRenderEnabled){m_fgObjectContext.clearRect(0,0,m_fgObjectCanvas.width,m_fgObjectCanvas.height);var e=Math.floor((SCREEN_WIDTH-img_load_bar.width)/2),t=Math.floor(.8*(SCREEN_HEIGHT-img_load_bar.height));m_fgObjectContext.drawImage(img_brand_logo,Math.floor(.5*(SCREEN_WIDTH-img_brand_logo.width)),Math.floor(.5*t));m_fgObjectContext.drawImage(img_load_bar,e,t);for(var n=Math.floor(5*m_resourceCounter/m_resourceNumber),e=e+this.img_load_element.width,r=0;r<n;r++)e+=2*img_load_element.width,m_fgObjectContext.drawImage(img_load_element,e,t+3*img_load_element.width);m_resourceCounter==m_resourceNumber&&(appInit(),m_resourceCounter++)}};var m_ad_y=0,m_isDisplayAd=!1,m_adFrame=null;this.adRemove=function(){var e=document.getElementById("ad");e&&document.body.removeChild(e);m_isDisplayAd=!1};this.gameInit=function(){};this.gameUpdate=function(){};this.touchPressed=function(){};this.touchReleased=function(){};this.mousePressed=function(){};this.mouseReleased=function(){};this.update=function(){m_curTime=(new Date).getTime();m_elapsed=m_curTime-m_lastTime;30<m_elapsed&&(m_elapsed=.03,m_lastTime=m_curTime,m_fgObjectContext.clearRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT),m_heartBeat.update(m_elapsed),m_effect.update(m_elapsed),m_scoreContextPool.update(m_elapsed),m_isDisplayAd&&0>m_ad_y&&(m_ad_y+=-(m_ad_y>>1),0<m_ad_y&&(m_ad_y=0),m_adFrame.style.top=m_ad_y+"px"),gameUpdate(m_elapsed),m_scoreContextPool.render(m_fgObjectContext,0,0));m_isReqAnimationEnabled&&_reqAnimation(update)};this.appInit=function(){dot_ScoreContext.prototype=new dot_Sprite;dot_ScoreContext.prototype.constructor=dot_ScoreContext;dot_Button.prototype=new dot_Sprite;dot_Button.prototype.constructor=dot_Button;dot_Blink.prototype=new dot_Sprite;dot_Blink.prototype.constructor=dot_Blink;m_math=new dot_Math;m_math.load();m_heartBeat=new HeartBeat;m_effect=new dot_Effect;m_scoreContextPool=new dot_ObjectPool;m_scoreContextPool.create(dot_ScoreContext,10);gameInit();m_effect.reset(EFFECT_FADE_OUT,.5,0);(_reqAnimation=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame)?(m_isReqAnimationEnabled=!0,update()):(m_isReqAnimationEnabled=!1,setInterval(update,33));console.log("Game Initialized Successful.")};this.resourceLoad=function(){if(0==m_resourceCounter){m_resourceNumber=m_imageList.length;for(var e=m_resourceCounter=0;e<m_imageList.length;e++){var t=new Image;t.onload=2>e?function(){m_resourceCounter++;m_loaderRenderEnabled++;updatePreloader()}:function(){m_resourceCounter++;updatePreloader()};t.src="./images/"+m_imageList[e]+".png";this["img_"+m_imageList[e]]=t}}};var m_isMouseDown=!1;this.init=function(){console.log("Onload Invoked.");window.scrollTo(0,50);m_backgroundCanvas=document.getElementById("background");m_backgroundCanvas.width=320<window.innerWidth?320:window.innerWidth;m_backgroundCanvas.height=568<window.innerHeight?568:window.innerHeight;SCREEN_WIDTH=m_backgroundCanvas.width;SCREEN_HEIGHT=m_backgroundCanvas.height;m_backgroundCanvas.style.left=Math.floor((window.innerWidth-SCREEN_WIDTH)/2)+"px";console.log("Browser inner_window size: ",window.innerWidth,window.innerHeight);console.log("Game Size: ",m_backgroundCanvas.width,m_backgroundCanvas.height);m_backgroundContext=m_backgroundCanvas.getContext("2d");m_backgroundContext.fillStyle="#1d1d1d";m_backgroundContext.fillRect(0,0,SCREEN_WIDTH,SCREEN_HEIGHT);m_fgObjectCanvas=document.getElementById("fg_objects");m_fgObjectCanvas.width=m_backgroundCanvas.width;m_fgObjectCanvas.height=m_backgroundCanvas.height;m_fgObjectCanvas.style.left=m_backgroundCanvas.offsetLeft+"px";m_fgObjectContext=m_fgObjectCanvas.getContext("2d");m_effectCanvas=document.getElementById("effects");m_effectCanvas.width=m_backgroundCanvas.width;m_effectCanvas.height=m_backgroundCanvas.height;m_effectCanvas.style.left=m_backgroundCanvas.offsetLeft+"px";m_effectContext=m_effectCanvas.getContext("2d");m_effectCanvas.addEventListener("touchmove",function(e){touchPressed(e);e.preventDefault()});m_effectCanvas.addEventListener("touchstart",function(e){touchPressed(e)});m_effectCanvas.addEventListener("touchend",function(e){touchReleased(e);e.preventDefault()});m_effectCanvas.addEventListener("gesturestart",function(e){e.preventDefault()});m_effectCanvas.addEventListener("gesturechange",function(e){e.preventDefault()});m_effectCanvas.addEventListener("gestureend",function(e){e.preventDefault()});m_effectCanvas.addEventListener("mouseup",function(e){m_isMouseDown=!1;mouseReleased(e);e.preventDefault()});m_effectCanvas.addEventListener("mousedown",function(e){m_isMouseDown=!0;mousePressed(e);e.preventDefault()});m_effectCanvas.addEventListener("mousemove",function(e){m_isMouseDown&&mousePressed(e);e.preventDefault()});setTimeout(this.resourceLoad,1)}