大鱼吃小鱼游戏-wave.js
2015-11-30 19:40
549 查看
//类是大鱼吃海葵产生圆圈效果 var waveObj = function() { this.x = []; this.y = []; this.alive = []; this.r = []; } waveObj.prototype.num = 10; waveObj.prototype.init = function() { for(var i = 0; i < this.num; i++) { this.alive[i] = false; this.r[i] = 0; } } //draw函数功能是画圆圈 waveObj.prototype.draw = function() { ctx1.save(); ctx1.lineWidth =2; ctx1.shadowBlur = 10; ctx1.shadowColor = "white"; for(var i = 0; i < this.num; i++) { if(this.alive[i]) { //draw this.r[i] += deltaTime * 0.04; if(this.r[i] > 50) { this.alive[i] = false; break; //跳出本次循环 } var alpha = 1 - this.r[i] / 50; //逐步消失绘制圆 //draw //api ctx1.beginPath(); //开始绘制 ctx1.arc(this.x[i], this.y[i], this.r[i], 0, Math.PI * 2); //api绘制圆圈 ctx1.closePath(); //结束绘制 ctx1.strokeStyle = "rgba(255, 255, 255, " + alpha + ")"; //api绘制圆圈的渐变效果,这里是圆圈渐变消失的效果 ctx1.stroke(); } } ctx1.restore(); } //born函数功能是大鱼吃果实后出现渐变圈圈的属性,圆圈的坐标、圆圈的半径等 waveObj.prototype.born = function(x, y) { for(var i = 0; i < this.num; i++) { if(!this.alive[i]) { this.alive[i] = true; this.r[i] = 10; this.x[i] = x; this.y[i] = y; return; //born } } }
相关文章推荐
- 我是运营,我没有假期
- 每个 Linux 游戏玩家都绝不想要的恼人体验
- 在 Fedora 上使用 Steam play 和 Proton 来玩 Windows 游戏
- Steam 让我们在 Linux 上玩 Windows 的游戏更加容易
- 如何使用 Steam Play 在 Linux 上玩仅限 Windows 的游戏
- 新一代iPad适配应用之游戏篇
- VB实现的《QQ美女找茬游戏》作弊器实例
- C#实现洗牌游戏实例
- C#实现的算24点游戏算法实例分析
- C#实现简单的井字游戏实例
- C++编写简单的打靶游戏
- C++实现基于控制台界面的吃豆子游戏
- 纯javascript实现的小游戏《Flappy Pig》实例
- JavaScript实现俄罗斯方块游戏过程分析及源码分享
- JS小游戏之仙剑翻牌源码详解
- 利用H5特性FormData实现不刷新文件上传
- JS小游戏之宇宙战机源码详解
- Android基本游戏循环实例分析
- 基于h5 ajax实现手机定位(demo)
- 基于h5的history改善ajax列表请求体验