From a97fcebddd54c4dbc58914e3fb161d91540bfbdb Mon Sep 17 00:00:00 2001 From: JailBreak Date: Wed, 28 Sep 2016 19:28:59 +0800 Subject: [PATCH] =?UTF-8?q?gulp=20=E6=9E=84=E5=BB=BA=E5=8F=91=E7=94=9F?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E6=97=B6=EF=BC=8C=E5=BC=B9=E5=87=BAnotify?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ app/js/index.js | 14 +++----------- build/js/index.min.js | 2 +- gulpfile.js | 30 +++++++++++++++++++----------- package.json | 2 ++ public/.DS_Store | Bin 6148 -> 6148 bytes 6 files changed, 27 insertions(+), 23 deletions(-) diff --git a/.gitignore b/.gitignore index 5148e52..ccc1cae 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,5 @@ jspm_packages # Optional REPL history .node_repl_history + +**/.DS_Store \ No newline at end of file diff --git a/app/js/index.js b/app/js/index.js index 8b33338..343f0e7 100644 --- a/app/js/index.js +++ b/app/js/index.js @@ -28,8 +28,6 @@ var gameController = { gameover: function() { this.stop(); setTimeout(function() { - // alert('Game Over'); - // window.location.reload(); $('#game-ct').hide(); $('.game-over').show(); }.bind(this), 200); @@ -182,7 +180,7 @@ var gameController = { return } //碰撞检测 - for(i = 0; i < $floor.length; i++) { + for(i = 0; i < $floor.length; i++) //缓存offset var floorOffset = $floor.eq(i).offset(); //人物与楼梯纵向距离 @@ -206,10 +204,6 @@ var gameController = { peopleOffset.left < floorOffset.left + this._floorWidth ) { //人物与楼梯偏差修正 this.__currentPeopleY = floorOffset.top - this._peopleHeight; - //立即更新视图 - // this.peopleUpdateView(); - //让人物随着楼梯共同向上移动(站在楼梯上效果) - // this.__currentPeopleY -= _deltaY; //施加各类楼梯特殊属性 if($floor.eq(i).hasClass('normal')) { this.floorNormal(); @@ -398,7 +392,6 @@ var gameController = { run: function(fps) { //不允许执行多个动画渲染函数(你想卡死么... if(this._animation) { - console.log(this._animation); console.error('Animation has aready in process, please do not run again!'); return ; } @@ -424,8 +417,6 @@ var gameController = { $('.floor').remove(); //重新初始化 this.init(); - //以每秒60帧执行游戏动画 - this.run(60); }, backup: function() { //备份初始设置参数,用于游戏reset @@ -465,6 +456,8 @@ var gameController = { this.updateBlood(); //首次更新楼层数 this.updateScore(); + //以每秒60帧执行游戏动画 + this.run(60); } }; @@ -474,7 +467,6 @@ $(function() { $('.game-intro').hide(); $('#game-ct').show(); gameController.init(); - gameController.run(60); }); $('#restart-game').click(function() { diff --git a/build/js/index.min.js b/build/js/index.min.js index 8a07ec0..c93b1a4 100644 --- a/build/js/index.min.js +++ b/build/js/index.min.js @@ -1 +1 @@ -var gameController={_animation:null,_canvasWidth:0,_canvasHeight:0,_floorWidth:0,_floorHeight:0,_floorDeltaY:50,_floorScore:1,_speed:50,_maxSpeed:250,_blood:12,_$canvas:$(".canvas"),_$scroller:$(".scroller"),_$people:$(".people"),_peopleSpeed:180,_peopleVerticalSpeed:150,_peopleHeight:0,_peopleWidth:0,__currentScrollerY:0,__currentPeopleY:20,__currentPeopleVertical:0,__floorScrollerY:200,__maxJumpDistance:20,__currentJumpDistance:0,__frameIndex:0,gameover:function(){this.stop(),setTimeout(function(){$("#game-ct").hide(),$(".game-over").show()}.bind(this),200)},createFloorSpan:function(){var o=this.__floorScrollerY+=this._floorDeltaY,t=Math.random()*(this._canvasWidth-this._floorWidth),e=['','','','','','','','','','','',''];$(e[Math.floor(Math.random()*e.length)]).css({top:o,left:t,width:this._floorWidth,height:this._floorHeight}).appendTo(this._$scroller)},removeFloorSpan:function(){$(".floor").eq(0).remove(),this._floorScore++,this.updateScore()},updateBlood:function(){for(var o=$(".blood i"),t=0;t=12||(this._blood+=1,this.updateBlood())},floorNormal:function(){this.addBlood()},floorNail:function(){this.loseBlood()},floorWeak:function(o){this.addBlood(),o.addClass("over"),setTimeout(function(){o[0].cross=!0},200)},floorScroll:function(o){this.addBlood(),this.__floorScrollDirection=o},floorScrollEnd:function(){this.__floorScrollDirection=null},floorSpring:function(o){this.__$currentJumpFloor=o,this.jumpStart(),this.addBlood()},jumpStart:function(){this.__jumpMode=!0,this.__tempPeopleSpeed=this._peopleSpeed,this._peopleSpeed=this._peopleSpeed/2},jumpEnd:function(o){this.__jumpMode&&(o&&(this.__$currentJumpFloor[0].cross=!0),this.__currentJumpDistance=0,this.__jumpMode=!1,this._peopleSpeed=this.__tempPeopleSpeed)},people:function(o){var t=this._peopleSpeed/o,e=this._speed/o,r=this._peopleVerticalSpeed/o,l=$(".floor"),s=this._$people.offset();if(s.top>this._canvasHeight)return void this.gameover();for(i=0;ih.left-this._peopleWidth&&s.left=this.__maxJumpDistance?this.jumpEnd():(this.__currentJumpDistance+=t,this.__currentPeopleY-=t+e)),this.__onFloor||this.__jumpMode||(this.floorScrollEnd(),this.__currentPeopleY+=t);var a=r;this._peopleGoLeft&&("left"==this.__floorScrollDirection&&(a*=1.5),"right"==this.__floorScrollDirection&&(a*=.5),this.__currentPeopleVertical>0&&(this.__currentPeopleVertical-=a)),this._peopleGoRight&&("left"==this.__floorScrollDirection&&(a*=.5),"right"==this.__floorScrollDirection&&(a*=1.5),this.__currentPeopleVertical0&&(this.__currentPeopleVertical-=a),"right"==this.__floorScrollDirection&&this.__currentPeopleVertical','','','','','','','','','','',''];$(e[Math.floor(Math.random()*e.length)]).css({top:o,left:t,width:this._floorWidth,height:this._floorHeight}).appendTo(this._$scroller)},removeFloorSpan:function(){$(".floor").eq(0).remove(),this._floorScore++,this.updateScore()},updateBlood:function(){for(var o=$(".blood i"),t=0;t=12||(this._blood+=1,this.updateBlood())},floorNormal:function(){this.addBlood()},floorNail:function(){this.loseBlood()},floorWeak:function(o){this.addBlood(),o.addClass("over"),setTimeout(function(){o[0].cross=!0},200)},floorScroll:function(o){this.addBlood(),this.__floorScrollDirection=o},floorScrollEnd:function(){this.__floorScrollDirection=null},floorSpring:function(o){this.__$currentJumpFloor=o,this.jumpStart(),this.addBlood()},jumpStart:function(){this.__jumpMode=!0,this.__tempPeopleSpeed=this._peopleSpeed,this._peopleSpeed=this._peopleSpeed/2},jumpEnd:function(o){this.__jumpMode&&(o&&(this.__$currentJumpFloor[0].cross=!0),this.__currentJumpDistance=0,this.__jumpMode=!1,this._peopleSpeed=this.__tempPeopleSpeed)},people:function(o){var t=this._peopleSpeed/o,e=this._speed/o,r=this._peopleVerticalSpeed/o,l=$(".floor"),s=this._$people.offset();if(s.top>this._canvasHeight)return void this.gameover();for(i=0;ih.left-this._peopleWidth&&s.left=this.__maxJumpDistance?this.jumpEnd():(this.__currentJumpDistance+=t,this.__currentPeopleY-=t+e)),this.__onFloor||this.__jumpMode||(this.floorScrollEnd(),this.__currentPeopleY+=t);var a=r;this._peopleGoLeft&&("left"==this.__floorScrollDirection&&(a*=1.5),"right"==this.__floorScrollDirection&&(a*=.5),this.__currentPeopleVertical>0&&(this.__currentPeopleVertical-=a)),this._peopleGoRight&&("left"==this.__floorScrollDirection&&(a*=.5),"right"==this.__floorScrollDirection&&(a*=1.5),this.__currentPeopleVertical0&&(this.__currentPeopleVertical-=a),"right"==this.__floorScrollDirection&&this.__currentPeopleVertical", + sound: "Beep" + })(err); + this.emit('end'); +}; + // 样式处理 gulp.task('css', function () { gulp.src(cssSrc) + .pipe(plumber({errorHandler: onError})) .pipe(less({ style: 'expanded'})) - .on( 'error', function(e){console.log(e)} ) .pipe(gulp.dest(cssDst)) .pipe(rename({ suffix: '.min' })) .pipe(minifycss()) .pipe(connect.reload()) - .pipe(gulp.dest(cssMinDst)); + .pipe(gulp.dest(cssMinDst)) }); // js处理 gulp.task('js', function () { - gulp.src(jsSrc) - //.pipe(concat('main.js')) .pipe(rename({ suffix: '.min' })) + .pipe(plumber({errorHandler: onError})) .pipe(uglify()) - .on( 'error', function(e){console.log(e)} ) .pipe(connect.reload()) .pipe(gulp.dest(jsDst)); }); @@ -75,17 +86,14 @@ gulp.task('rebuild', ['clean'], function(){ // 监听任务 运行语句 gulp watch gulp.task('default',['webserver'], function(){ // 监听html - gulp.watch(htmlSrc, function(event){ - gulp.run('html'); + gulp.watch(htmlSrc, ['html'], function(event){ }) // 监听css - gulp.watch(cssSrc, function(){ - gulp.run('css'); + gulp.watch(cssSrc, ['css'], function(){ }); // 监听js - gulp.watch(jsSrc, function(){ - gulp.run('js'); + gulp.watch(jsSrc, ['js'], function(){ }); }); \ No newline at end of file diff --git a/package.json b/package.json index ca18f9d..09524d8 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,8 @@ "gulp-less": "^3.0.3", "gulp-livereload": "^3.8.1", "gulp-minify-css": "^1.2.1", + "gulp-notify": "^2.2.0", + "gulp-plumber": "^1.1.0", "gulp-rename": "^1.2.2", "gulp-uglify": "^1.4.1", "gulp-util": "^3.0.6" diff --git a/public/.DS_Store b/public/.DS_Store index 83538a71dc75f10d9bdd8da30ee9dc9977261be3..345833afa880c47e173a9f2889f8efe2d3441af1 100644 GIT binary patch delta 45 zcmZoMXfc@J&&ahgU^gQp*JK{1>dCrH+&pE$MR_^-dFc!c42+vwm@-*6vvd6A2LLQj B4Br3% delta 31 ncmZoMXfc@J&&atkU^gQp=VTtH>dgz8(pV=pNNr~4_{$Ffotg>n