问答详情
源自:3-3 大鱼吃果实特效(3)

圆圈没有渐变消失,而是变大后直接消失

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(){
    ctx1.save();
    ctx1.lineWidth = 2;
    ctx1.shadowBlur = 10;
    ctx1.shadowColor = "white";
    for(var i=0;i<this.num;i++){
        if(this.alive[i]){
            this.r[i] += deltaTime * 0.05;
            if(this.r[i] > 60) this.alive[i] = false;
            var alpha = 1 - this.r[i] / 60;
            ctx1.beginPath();
            ctx1.arc(this.x[i],this.y[i],this.r[i],0,Math.PI * 2);
            ctx1.closePath();
            ctx1.strokeStyle = "rgba(255,255,255"+ alpha +")";
            ctx1.stroke();

        }
    }
    ctx1.restore();
}
waveObj.prototype.born = function(x,y){
    //console.log("born");
    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;
        }
    }
}


提问者:Web纹路 2018-07-30 11:40

个回答

  • 糖糖plum
    2019-08-05 14:57:04

    if(this.r[i] > 60){
     this.alive[i] = false;
     break;
     }