我的代碼效果有個bug,連續(xù)吃新果實時,舊漣漪會突然消失,新漣漪按規(guī)劃變大,請問怎么解決?
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; } }; waveObj.prototype.draw?=?function(){ cxt1.save(); cxt1.lineWidth?=?2; cxt1.shadowBlur?=?10; cxt1.shadowColor?=?"#fff"; for?(var?i?=?0;?i?<?this.num;?i++)?{ if?(!this.alive[i])?{ this.r[i]?+=?deltaTime*0.04; if?(this.r[i]>50)?{ this.alive[i]?=?false; continue; } var?alpha?=?1?-?this.r[i]/50; cxt1.beginPath(); cxt1.arc(this.x[i],this.y[i],this.r[i],0,Math.PI*2); cxt1.closePath(); cxt1.strokeStyle?=?"rgba(255,255,255,"+alpha+")"; cxt1.stroke(); } } cxt1.restore(); } waveObj.prototype.born?=?function(x,y){ for?(var?i?=?0;?i?<?this.num;?i++)?{ if?(!this.alive[i])?{ this.alive?=?true; this.r[i]?=?10; this.x[i]?=?x; this.y[i]?=?y; return; } } }
其他都好著,編譯也不會出現(xiàn)問題。就是這樣的漣漪就像突然消失一樣,很不好,不知道怎么解決。
2016-08-16
還有第39行,alive后面少寫了 [i] ,
把我說的這幾處都改一下就可以了、、、
2016-08-16
第20行代碼處,去掉!符號即可。
然后第13行的 ; 符號,建議去掉,一般是不帶的。。