まずは恒例の切り出し作業から。
今回はそこそこ綺麗な画像があり、それを元にサクサク切り出していく。
大きく分けるとこんな感じ。
- 筐体
- セロファン部
- 救命ボート
- スカイダイバー(4カ所分)
- 泳ぐサメ(ミス時の表示と兼用)
- ミス時のスカイダイバー
- ミスマーク
- GAME AとGAME Bの表記
- アラームザル
材料を揃えたら、いつものようにプレイヤーの移動から作っていく。
移動は3か所だけなので、「ファイア」と同じ。左右のボタンを押すと、位置を表す変数を±1ずつ行う。そのあとlimit命令で範囲を超えないように処理する。
移動自体は、「ファイア」のプログラムを丸ごと使えるし、座標の書き換えだけなのでサクッとできた。
今回つまづいたのは、セロファン部の合成だった。
セロファンは一番上に重ねて表示するのだが、半透明で下の液晶パターンが透けて見えるようにする。
BASIC!では、PNG画像を読み込んだ後に、透明度を自由に設定できた。
しかし、HSPでは画像は上から描けるけど、合成するにはgmode命令を使わないといけない。
PNGの透明色部分の抜きは、gmode 2でできるのだが、セロファンの色が付いた部分は、ベタ塗りされてしまう…
他のモードを使えないかいろいろ試したがうまくいかなかった。
ふと、元の画像の透明度を変えればいいんじゃない?と思って実行すると、できた…
透過度の調整は、画像編集ソフトを使用しないといけない面倒さはあるけど、そんなに頻繁じゃないのでいいか。