【Unity】取得した装備に自動的に切り替える方法【FPS】

前回、落ちているアイテムをくるくると回転させてオーラを付けましたね。

今回は、落ちている装備を取得した際に、自動的にその装備に切り替える作業を行います。

FPS等のゲームが対象になるかと思います。

スポンサーリンク

取得した装備に自動的に切り替える方法

装備の切り替え

私は、FPSを作るにあたって、FPSControllerを使用しています。

その子オブジェクトとしてさまざまな装備を施そうとしています。

とりあえず、シーンビューに装備品を配置して、ゲームビューでの見た目を確認しましょう。やや分かりにくいですが、2種類の装備が重なっている状態です。

弾を飛ばす位置は、空のオブジェクトで指定している「shoot」ですが、とりあえず複製して別装備にも設定するようにします。

種類によって弾の飛ばす位置が異なる場合は、シーンビューで微調整しましょう。

プレイヤースクリプトを作成する

後は、プレイヤースクリプトに装備品に触れた際の処理を記述すればOKですね。


それぞれの装備品には、何の装備か分かるようにタグを付けておきましょう。

落ちているアイテムは、プレイヤーに接触次第消えるようにします。

スクリプトを保存したら、FPSController(プレイヤー)にアタッチして各装備をアウトレット接続で設定します。

装備の切り替わり

デフォルトで装備している武器以外は、非アクティブにしておきましょう。

ゲームを実行するとこんな感じです。自動的に切り替わっていますね。取得する際に効果音を発生させることでもっと自然な雰囲気を醸し出せると思います。