ConnectSTG動作原理
図1 プログラムの動作
Connect STGは、自機、敵機、自機弾、敵機弾が存在し、それぞれのキャラクターに必要な動作のプログラムを記述します。プログラムを実行すると、1秒間に60フレームで動作します。1フレームのプログラムの流れを図1に示す。まず、自機のプログラムから実行され、敵機、自機弾、敵機弾の順にプログラムが実行されます。プログラムを終了しない場合、自機のプログラムに戻り、繰り返し実行されます。
エディタの使用方法
図2 エディタ画面
ConnectEdit.exeを起動すると、図2のようなエディタが出てくる。プログラムの作成に下記のような機能があります。実行ボタンを押すと、プログラムは自動的に保存されます。プログラムにエラーがある場合は、エラーを表示してくれます。
- キャラクターファイルの選択
- ソースコードを記述
- 行番号
- フォントの大きさを変更
- 実行ボタン
- エラーメッセージの表示
ConnectSTGゲーム画面
図3 ゲーム画面
ゲームを起動すると、図2のように640×480の大きさのフィールドに自機が配置されます。自機の表示位置は、x軸が320、y軸が450です。画像ファイルは、x軸y軸を中心として画像が表示されます。自機はフィールド外に出ていかないように、x軸y軸の値を自動的に補正してくれます。敵機、自機弾、敵機弾は、フィールド外に行くと自動的に消滅します。
当たり判定
図4 当たり判定
このゲームでは、①「自機弾と敵機」②「敵機弾と自機」③「自機と敵機」に当たり判定が設けられており、図2のようにキャラクターが近づく事により次の式が適用されます。当たり判定が実行され、lifeが0になるとキャラクターは消滅します。自機のlifeが0になると、自機が消滅し、画面に「GAME OVER」と表示されます。
- 新しい自分の体力 = 現在の自分の体力 - 相手の攻撃力 (1)
- 新しい相手の体力 = 現在の相手の体力 - 自分の攻撃力 (2)
ただし、③「自機と敵機」のあたり判定がヒットした場合は式(1)のみが適用されます。また、②「敵機弾と自機」もしくは、③「自機と敵機」がヒットした場合、自機は40フレームの間、当たり判定が行われない無敵状態となります。
Logファイルの活用
Logファイルには、以下のような状態が保存されます。実行回数やエラーの状態を知ることが出来ます。
- Log.txt・・・・実行回数を保存
- ErrorLog.txt・・・・何回目の実行にどのファイルがどのようにエラーがでたかを出力
- EndLog.txt・・・・最後に実行したプログラムが成功なら0、エラーなら1を返す




