前も思ったけど倉庫番を2次元配列1枚でやろうとするから逆に面倒なんじゃない?
ステージ壁ゴールなど動かないもの 荷物など動かせる物 キャラがいる位置
とか 3層くらい分けて一個一個判定していけばスッキリと行くんじゃないかなと