シューティングゲームを作る3
今回は洗濯機と呼ばれる弾幕を作ってみました。
さらにメモリ管理を強化したので処理落ちが少なくなりました。
操作方法
自機はマウスに追従
ショットは左クリック
洗濯機弾を発射の管理はこんな感じ。
for(var i:uint = 0; i < shot_count; i++){ var ball:Bullet = new Bullet(0, bullet_height, bullet_width, bullet_color, shot_angle+i*360/shot_count, bullet_angle_rate, shot_speed, bullet_speed_rate, sp, bullet_width/2); Shooting3.ary.push(ball); ball.target = target; sp.addChild(ball); //発射する角度を変える ball.x = x; ball.y = y; } //発射する角度を変える shot_angle += shot_angle_speed; //右巻き //発射角度と弾の角速度を設定する。 if(time < 250){ shot_angle_speed = max_shot_angle_rate; bullet_angle_rate = -max_bullet_angle_rate; } //右巻きから左巻きへ //発射角度と弾の加速度を変化させる else if(time < 300){ shot_angle_speed = max_shot_angle_rate*(275-time)/25; bullet_angle_rate = -max_bullet_angle_rate*(275-time)/25; } //左巻き //発射角度と弾の角速度を変化させる else if(time < 550){ shot_angle_speed = -max_shot_angle_rate; bullet_angle_rate = max_bullet_angle_rate; } //左巻きから右巻きへ //発射角度と弾の角速度を変化させる else{ shot_angle_speed = -max_shot_angle_rate*(575-time)/25; bullet_angle_rate = max_bullet_angle_rate*(575-time)/25; } //タイマーの更新 time = (time+angle_change_speed)%600;
ソースはまた後でまとめてUP