私はシューティングゲームを作ろうとしていますが、弾丸アニメーションにはいくつか問題があります。クリックするたびに新しい弾丸オブジェクトが作成され、アニメーションが開始されますが、クリックするたびに作成された弾丸は消え、同じ弾丸が前の弾丸よりも早く始まります。だから私は各クリックの後に新しい箇条書きを作成しようとしています。基本的なシューティングゲームのロジック。ここに私のコードは次のとおりです。ここvar
を追加弾丸アニメーションの作成方法は? (シューティングゲーム)
function newBullet(x,y,angle,speed,id,type) {
this.x = x;
this.y = y;
this.speed = speed;
this.angle = angle;
this.radians = this.angle * Math.PI/180;
this.id = id;
this.type = type;
this.drawBullet = drawBullet;
this.moveBullet = moveBullet;
}
function moveBullet() {
this.x = this.x + Math.cos(this.radians) * this.speed ;
this.y = this.y + Math.sin(this.radians) * this.speed;
ctx.drawImage(bulletImg, this.x, this.y);
}
function drawBullet() {
bullet = new newBullet(playerX,playerY,getAngle(),2,1,1);
bullets[bullets.length] = bullet;
setInterval("bullets[bullets.length - 1].moveBullet()", 25);
}
canvas.addEventListener("mousedown",drawBullet,false);
こちらの回答のいずれかを受け入れることができますか? – Zeta