サイログ。

~雑多な記事置き場~

マップチップの指定をフレキシブルに

これまでのMiyako2.0のマップチップ(ていうか、1.5から)、マップチップ格納に使用するMapChip構造体は、「マップ1枚に付き1枚」で、すべてのレイヤーを1つの構造体でまかなうようになっていました。

しかし、これでは、用意するマップチップが多くなって不便ということで、以下の変更を行いました。

  • MapChip構造体にto_aメソッドを追加(自分自身を要素にした配列を返す)
  • Map.newメソッドとFixedMap.newメソッドの第1引数にto_aメソッドがあれば呼び出す(配列にして保持)
  • Map#get_amount、Map#get_amount_by_rect、FixedMap#get_amount_by_rectメソッドにlayer引数を追加(レイヤー番号を指定)

なお、newメソッドで、第1引数の要素数がレイヤー数(イベントレイヤーを除く)より少ないときは、cycle・takeメソッドを使用して、繰り返し割り当てるように実装しています。

これで、マップチップ管理が少し楽になると思います。