【Unity2d】最初のエリアを実装してみたら問題が発生

Unity2D

Unity2D ARPG

こんにちは。なおキーヌです。

ブログ毎日更新は360日目になります。

早速エリアを作っていきましょう。

最初のエリアはハンマーを取得して岩を壊して先に進むチュートリアル的エリアになります。

要素を置く

必要な要素を置いていきます。

雰囲気を出すために意味のない燭台とかも置くとダンジョンぽくなるでしょう。

火を揺らめかせたりしたいと思うので、そういうモノはアニメーションするだけのオブジェクトとして配置します。

一旦必要なものを洗い出してみましょう。

  • 燭台x4
  • 次のエリアにいく扉
  • 次のエリアへの道を塞ぐ壊せる岩x4
  • 宝箱を囲む壊せる岩x2
  • 壁にかかったハンマー

になります。

画像はあとからでいいので、ともかくオブジェクトを配置してきましょう。

プレイヤーとかモンスターを除く基本的なオブジェクトの1つの大きさは16×16にします。

燭台オブジェクトを置く

ゼル伝のダンジョンに入ると、燭台が配置されていたりすることがあります。

特に意味はありませんが、置いておくと雰囲気が出ます。

一旦代わりにブロックを置いてみましょう。

こんな感じになりました。

Unity2D 燭台

ドット絵は後から実装しましょう。

ハンマーの実装

ハンマーはプレイヤーの基本的な武器になります。

本来はもっと違う入手の仕方をさせたかったのですが、体験版なので致し方なしです。

まずプレイヤーがエリア全体を見渡してあからさまに防いでいる岩を壊して
次のエリアに進むんだなと理解すると思います。

そしてその先に行くには岩が邪魔。

何もない状態では壊せないので、近くにあるあからさまに用意されたハンマーを取りに行くわけですね。

なのでこのハンマーを取ってくださいと文字に書く必要もなくプレイヤーはハンマーを取りに行きます。

扉の実装

次のエリアへ進む扉を作ります。

と思ったのですが、岩で防ぐのであれば別に扉無しでもいいかもしれませんね。

この辺はお好みです。

次のエリアへの道を塞ぐ壊せる岩x4

これは最も重要なオブジェクトですね。

このオブジェクトを壊すことで先に進めるというチュートリアルの役割にもなっています。

一応、あからさまな宝箱を開けようとするプレイヤーの心理も利用して岩を壊させます。

宝箱を取ろうとすると2回以上岩を壊すアクションを行いますね。

アイテムの入手と次へ進めるというプレイヤーへのご褒美になります。

プレイヤーはそれを正解と記憶するので、以降からは説明せずとも自然と対応してくれるようになります。

宝箱を囲む壊せる岩x2

左上に宝箱を置き、下と右に壊せる岩を置いておきます。

先ほども言いましたが宝箱って恐らく大体の人が何か入っていると期待して取ろうとします。

それを取るために岩を壊そうとするので自動的にチュートリアルをやってくれるというわけですね。

現在はこんな感じです。

赤が壊せる岩

緑がイベント物(ハンマーと宝箱)

って感じですね。

Unity2D 宝箱

問題が発覚

モノを配置してて色々な問題が出てきました。

マップを結構適当に組んでしまった為、歩ける場所が半分のサイズ余分に隙間があったりして
綺麗にオブジェクトをグリッド状に置くことができませんでした。

これは後々16で割り切るときに問題が発生しそうなのでこの辺は休みに入ったらしっかり治します。

Unityのグリッド表示を活用してちゃんとグリッド単位にマップが配置されるか確認しながらちゃんとやります。

マップ問題が出てしまったので今回はここまでにしておきます。

明日で仕事収めなので次回はマップを組みなおし始めましょう。

それでは。