ch_emissileset1
敵機弾の発射(垂直下方向)
この講座では、敵機弾が発射され移動するプログラムを作成します。
準備
敵機の出現のプログラムが必要です。 プログラムがない場合は、ダウンロードしてプログラムを上書きしてください。
敵機弾の発射
| 変数名 | 説明 | 初期値(未設定の場合) | |
|---|---|---|---|
| 自機出現時 | 自機弾、敵機、敵機弾出現時 | ||
| timer1 | タイマー用変数1 | 0 | 50 |
| timer2 | タイマー用変数2 | 0 | 0 |
timer1の値は、敵機が出現した時に特に指定をしなければ、自動的に50の値が代入されます。それを用いて、出現から50フレーム後に敵機弾を発射するプログラムを記述します。
«enemy.txtの移動プログラムの下に追加»
if(timer1==0){
EMissileSet(x,y,0,4);
timer1=50;
}
| 関数 | 説明 |
|---|---|
| EMissileSet(x,y,dx,dy); | 敵機弾を出現させる(最大100体) |
EMissileSetの関数の引数は、x軸,y軸の初期位置とx軸,y軸の増分dx,dyを順番に入力します。ここでは、敵機と同じ位置から出現させ、垂直下方向に移動させるためにx,y,0,4の値が入力されています。入力された値は、敵機弾の変数x,y,dx,dyに保存されます。
しかし、このままでは、実行ボタンを押しても敵機弾は移動しません。その理由を考えてみます。
| 考えられる原因 | 解決方法 |
|---|---|
| 移動量は記述したが、 実際に移動していない | 敵機弾に移動するプログラム を記述する |
«emissile.txtに記述»
x=x+dx; y=y+dy;
- 課題)敵機弾の移動方向を変えてみよう
- Prev. 敵機の移動(一方向のみ移動)
- Top. ConnectSTG マニュアル
ch_emissileset1.txt · 最終更新: by admin

