CodeWarrior講座


  第2回 サンプルを改造してみる

 前回の作業で無事にCodeWarriorがインストールできたはずですので、さっそく、実際にCodeWarriorを起動し、メイクして実行ファイルを作ってみましょう。サンプルとして付属している「Reptoid」というゲームを利用して、簡単な改造をして実行ファイルを作ってみます。

 Reptoidは(CodeWarrior Examples)\Palm OS 4.0 SDK Examples\Reptoidに格納されています。




 ここにあるreptoids.mcpをダブルクリックするとCodeWarriorが立ち上がり、Reptoidのプロジェクトウィンドウが開きますので、プロジェクトメニューからメイクを実行します。



 実行状況を示すウィンドウが出た後、メイクが完了します。再度Explorerで見ると、reptoidディレクトリの中にObjというディレクトリが追加されていることが分かります。



 その中にReptoids.prcという実行プログラムができていますので、これをPalmにインストールして実行してみてください。直接本体で実行するのは恐いと思われるかもしれませんが、今回はサンプルをそのままメイクしただけなので、まず大丈夫でしょう。



 初めてReptoidsをプレイした方もいらっしゃるのではないでしょうか? Reptoidsは初代PILOTが現役のときに作られたゲームですが(1996年頃?)、いまだに十分楽しめるものです。ReptoidのほかにもSubHunt、HardBallなど、サンプルとしてついているゲームはPalm,Inc.のRoger Floreという方が作られたものです。

 実はこのRoger Flore氏はPalm OSにも多大な貢献をしています。Address、DateBook等を作ったArt Lamb氏、Palm OSの多くの部分を作ったRon Marianetti氏と合わせて、Palmを作った3大プログラマーの一人といえるでしょう。やはり優れたプログラマーが作ったソフトウェアは素晴らしいものが多いですね。

 余談はさておき、問題なくメイクできたはずですので、ちょっと改造をしてみましょう。今回はゲームで使われているビットマップを変更してみます。

 再度CodeWarriorのウィンドウに戻ります。プロジェクトウィンドウの"+"アイコンをクリックすると実際にどのようなファイルがプロジェクトに登録されているかが分かります。




 ReptoidsではRocks.cというC言語のソースコードと4つの.RSRCという拡張子がついているリソースファイル(主にGUI関連の部品を含みます)、StartupCode.libというライブラリからなっていることが分かります。StartupCode.libはPalm OS用のアプリケーションには必須のライブラリであり、通常はSDKに入っているものをそのまま使いますので、あまり意識する必要はないでしょう。したがって、プログラムの本体は1つのソースコードと4つのリソースファイルから構成されているということになります。

 今回変更するビットマップはRocksMisc.rsrcに入っていますので、このファイル名をダブルクリックします。するとリソースを編集するツールであるConstructorが起動し、次の図のようなウィンドウが現われます。




 このウィンドウにはForms、Alert、MenuのようにGUI部品の種類ごとにリソースが並びます。Formsといったリソース名の横に三角形が付いているのは、このリソースが含んでいることを表しています。
 Bitmapsの横の三角形をクリックすると、そこに含まれるBitmapリソースの一覧が表示されます。




 この中で名前が「Large Rock」、IDが「1025」のものをダブルクリックすると編集画面になります。ここには一般的なペイントツールと同じように、鉛筆、消しゴム、塗りつぶし、色の選択などのツールがありますので、自由に書き換えてみてください。





 編集が終わったらConstructorのファイル(File)メニューから保存(Save)を実行して保存します。
 これでリソースの編集が終わりましたので、再度プログラムのメイクを行いましょう。CodeWarriorのウィンドウに戻り、先ほどと同じようにメイクして、できあがったReptiods.prcをインストールしてみてください。石のビットマップが自分で書き換えたものになっていたら成功です。



 これで今回の解説はおしまいです。とりあえずCodeWarriorを起動し、メイクして実行ファイルを作るところまで体験していただきました。CodeWarriorにはたくさんのExampleが付属していますので、それぞれをメイクして、プログラムを実行してみてください。  ほとんどのゲームは今回のようにリソースの編集が可能ですので、ビットマップを書き換えてみるだけでも楽しめるはずです。


copyright(C)2002 Hacker Dude-san all rights reserved.