マップチップの指定をフレキシブルに
これまでの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メソッドを使用して、繰り返し割り当てるように実装しています。
これで、マップチップ管理が少し楽になると思います。