コインブロック

コインブロックを実装しました。
差分
ハテナブロックだといろいろ不味そうなのでビックリマークにしたんですが、マリオワールドで別の用途に使われてましたね、、、。
とりあえず、気にしないことにしましょう。


動作としては、ビックリブロックを叩くと一瞬飛び上がって、茶色のブロックに変わります。
まだ、コインの絵は出ません。
ビックリブロックをマップチップにするかキャラクタにするかで悩みましたが、ブロックの上に乗る処理を考えなくてよいので、今回はマップチップとして実装しました。
流れとして、

  1. ビックリブロックを下から叩く(ブロック破壊と同じ判定方法)
  2. ビックリブロックを消す
  3. 茶色のブロックをキャラクタとして出現させる
  4. 茶色のブロックを上に跳ねさせ、消去
  5. 茶色のブロックをマップチップとして表示させる

となります。
ウエイトと置いて消去するのはおなじみのvanish_routineで出来ます。
消去と同時にマップを書き換える必要があるわけですが、消去後に表示するマップチップをキャラクタのパラメータ(デフォルト=空欄)として持たせることで、処理を共通化することができました。


また、隠しコインブロックも、

  • 描画されない
  • 横、上からの当たり判定がない

ような特殊なマップチップとすることで、簡単に実装できました。
差分


次はパワーアップアイテムを作りたいんですが、その前にチビ形態を作る必要がありますね。