見出し画像

ほぼ0からのunityゲーム制作雑記【37日目】敵の飛び道具①手紙を飛ばす

■作成した手紙モデルを飛ばしたい

 前回は、敵の飛び道具となる手紙の形状をblenderで作成するところまで進みました。昨日の記事はこちら。

 今回は、前回作成した手紙モデルをunityに取り込んで、敵からプレイヤーキャラに向けて飛ばしてみようと思います。

 イメージとしてはこんな感じ。

画像1

 敵キャラの胸のあたりの高さからシュッと飛ばしたいと思います。

■手紙自体にスクリプトを設定する

 手紙の3Dモデルを読み込み、スクリプトを割り当ててやります。このスクリプトでは、初期状態として、敵の座標の少し前あたりに出現するように設定します。そして、手紙が壁かプレイヤーにぶつかるまでのあいだ、手紙が生成された瞬間の敵から見たプレイヤーのプレイヤーへのベクトルへ飛ばすようにします。生成させる命令そのものは、敵のスクリプトに書きます。

 うまくいきました。手紙がビュンビュン飛んでいます。

■手紙が盾をすり抜ける

 格闘モードでは、手紙がぶつかるのはプレイヤーか壁だけでしたが、盾モードでは盾にぶつかって弾かれてほしいです。そこで、手紙に盾とあたったとき、跳ね返る動きを設定したのですが。

画像2

 すり抜けてしまっています。何故だ。

 いろいろ探っていて、手紙にrigid bodyを設定しなければならないことを思い出しました。手紙は結構高速で飛ぶため、それに対するすり抜け防止設定もしておきます。

画像3

 無事にうまく跳ね返すことができました。

 手紙の軽さのせいか、豪快に跳ね返るため、盾が少し強そうにみえて嬉しい誤算です。

■次回の目標は?

 手紙がバリアに入ったら速度が落ちる設定をしつつ、もう一つの敵の飛び道具であるハトの形状を作成していきたいと思います。

この記事が気に入ったらサポートをしてみませんか?