[HMC]年間5250円で独自ドメイン付属、ウィルスチェックありのレンタルサーバ!
Last update : 1999/12/13
ゲーム制作基礎 第3回
キー入力によって複数のキャラクタを4方向へ動かす
サンプルコードのダウンロード
  では、まずサンプルコードをダウンロードし、解凍して下さい。 私はVisual C++6.0でコンパイルしているので、をお持ちの方は Visual C++でプロジェクトファイルを開いて下さい(「game_03.dsw」をダブルクリックすれば開けます)。 圧縮ファイルに含まれる「game_03.exe」をダブルクリックし、実行してみて下さい。どうでしょう?画面が切り替わり、スライムが2個表示されると思います。 というわけで今回は、キー入力により複数のキャラを動かす処理ついて解説したいと思います。
複数キャラの扱い
  今回は、こいつら(slime.bmp 64x32)を使用して複数のキャラクタを表示、移動させてみたいと思います。

というわけでサンプルコードを見てみます。
  初心者だと、つい1キャラづつ変数用意(例えば int,cx1,cx2,cx3・・・)し、処理も 1キャラづつ用意しそうですが、そんな必要はありません(^^;
  座標等の変数を配列(もしくはクラス・構造体の配列)で用意する事により、ループ処理 で複数のキャラを処理できるというわけです。んー、他に説明する事は無いと思いますが質問があれば 追加します。
キーボードのお話
  今回は2つのキャラクターを同時に表示し、キー入力も4方向×2キャラという事で 8つのキーを扱っているのですが、AT互換機(DOS/V)で キーボードを一気にたくさん押すと、一部のキーの反応が無くなる場合があります(PC-9821シリーズでは大丈夫なようですが)。スペースソルジャーでも、2人で同時に遊んでいると 、どちらかの機体が左上に行けなくなるという現象が起きました。まぁ、これはハードウェアの仕様という事でプログラマーにはどうする事も出来ないようです。そういった場合にはジョイパッドに逃げるしかありませんね(^^;