Project bACMAN
bACMAN はパックマンクローンの SDL ゲームです。
このゲームの最大の特徴が主人公のパックマン(?)の操作だけでなく、敵キャラになってパックマン(?)をやっつけることができることでしょう。もちろんパックマン(?)がパワーアップした時は逃げないといけないのですが。
Windows と Linux 用のバイナリ、ソースコードとデータがセットでダウンロードできます。
SDL と libmodplug が必要とのことなので、とりあえず libmodplug からポート開始。
ここから libmodplug-0.7.tar.gz を落とす。
解凍して libmodplug-0.7 をカレントにして
$ ./configure --prefix=/boot/home/config
$ make
/libmodplug-0.7/.libs フォルダ内の libmodplug.a , libmodplug.lai と /libmodplug-0.7 の libmodplug.la を
/boot/home/config/lib にコピー
libmodplug フォルダを /boot/home/config/include にコピー
で、次に bACMAN のビルド
/bacmanfu/src に Makefile があるので環境に合わせて書き換え。
PREFIX のパス
LIBS の -lm を無効
zeta-r1-gcc2-x86 では ld でエラーが出たので /boot/beos/etc/develop/zeta-r1-gcc2-x86/lib/x86 に libSDL.so 関連のリンクを作成。
これで一応ビルドできるのだが、どこかにデバッグのスイッチがあるらしくファイルサイズがデカイ。
$ make
$ strip projectbacman
とした。
できたバイナリをマウスの第一ボタンダブルクリックで起動
Enter キー = 決定
Esc キー = メニュー呼出・キャンセル
矢印キー = 項目移動・キャラ移動
F9 = リセット
F10 = ゲーム終了
フルスクリーンモードでも問題なく動作するが、2面またはキャラが死んだ時から画面がゴースト状態になる。
ボリューム設定があるけど音がでていない。bacman.cfg が読み込まれていないのか?
とりあえず雰囲気を出すために SoundPlay に /bacmanfu/data/xxxxxx.s3m なファイルを渡して再生。
本来 SDL 1.2.7 と GCC 3.4.x が開発環境のようだし、libm.so がやっぱり無いといけないのか。
ソースが見つからない。どこだ >libm.so