一つのマップに階層を作ってダンジョンなどを作りたいと思って、本日色々と考えていました。通常Tiledを利用した場合、一つの階層だけしか作れないと思われますが、そこは知恵と工夫を凝らしていけば、それっぽいマップを作ることができました。
流れ
タイルの配置
まずは、マップに階層があるようにパーツを配置していきます。 このタイルを作るのも結構大変です。
衝突判定に必要なレイヤーの配置
上の階層の「衝突判定のレイヤー」と下の階層に必要な「衝突判定のレイヤー」を配置します。
上の階層の衝突判定
下の階層の衝突判定
下の階層に行ったときの、上階層のタイル設置。
下の階層に行ったときに、通常なら交差をして自機(プレイヤー)が隠す必要があります。 これは別途、タイルレイヤーを用意して対応します。
レイヤー切り替えのオブジェクトの配置
先ほど用意した衝突判定を切り替えるためのオブジェクトを用意します。 これはそんなに難しくありません。 オブジェクトと自機(プレイヤー)が触れたときに切り替えるようにしてあげればいいだけです。
動画デモ
個人的に結構綺麗にできたのではないかと思っていますがどうでしょうか?
今日はこの階層を作るのにかなり時間を費やしてしまいました。 またそれに伴う所々の変更も含めるとまだやることが結構ありました。