ジャンプの高さをプレイヤーごとに変える

今回はジャンプ力を調節できる「Set Jump Height Rate Player Gimmick」を使って、プレイヤーごとにジャンプ力を変えてみましょう!

サンプルパッケージ

実際にこの記事でつくるジャンプギミックを配布します。
記事を見ながら、アイテムの構成を確認してみてください。

ジャンプ力を変更できるようにしよう

Set Jump Height Rate Player Gimmick」はワールドに配置すると、かんたんにプレイヤーのジャンプ力の調整ができるコンポーネントです!
設定は簡単なので、ぜひ覚えてみてください。

  • Hierarchy を右クリックまたは、上部メニュー欄の「GameObject」から「Create Empty」を選択して、GameObject を作成します
  • 見分けが付きやすいように名前を変更しておくのがおすすめです。今回は「jumpRate」に名前を変更しました
GameObject画像
  • 「jumpRate」を選択して Inspector ウィンドウにある「Add Component」ボタンを押して「Set Jump Height Rate Player Gimmick」を追加しましょう
  • プレイヤーごとに調節するために、Target は「Player」に変更し、Key はデフォルトの「jumpHeight」を変更せずに使用します

ジャンプ力を変化させるためのボタンを配置しよう

これで最初の準備は完了です。
まずは、ボタンを押したらジャンプ力が変化するギミックをつくってみましょう。

  • Hierarchy を右クリックまたは、上部メニュー欄の「GameObject」から「3D Object」「Cube」を選択して、Cube を作成します
Cube作成画像
  • Cube を選択して Inspector ウィンドウにある「Add Component」ボタンを押して「Interact Item Trigger」を追加します。「Interact Item Trigger」は掴めないアイテムに「使う」機能を追加し、使われたことを通知するトリガーです
  • コンポーネントを追加したら「+」を押して設定をしていきます
  • プレイヤーごとに調節するために、Target は「Owner」に変更し、Key は「jumpHeight」にします
  • 次にジャンプ力を決めるために、Value は小数点を扱える「Float」に変更し、ジャンプ力の数値を入力しましょう。今回はデフォルトより3倍高く飛べるように、数値に「3」を入力します

先程と同様に Cube を作成し、違うジャンプ力を設定したボタンを配置してみましょう。

  • 今回はジャンプ力を元の「1」に戻す「jumpHeight Standard」、それぞれのジャンプ力を「1.5」「10」にする「jumpHeight 1.5」「jumpHeight 10」を追加しました
ジャンプ力設定ボタン(分かりやすくテキストをつけてみました)

それでは実際にプレイヤーごとにジャンプ力を変更できているのか見てみましょう。
プレイヤーのジャンプ力は、左から順番に「1.5」「3」「10」となっています。

【応用編】クリックするたびにジャンプ力が変わるギミックをつくってみよう!

プレイヤーごとにジャンプ力が変えられるようになったら、次はゲーム性を持たせてみましょう!
ワールドに配置するアイテムなどにこのギミックを使用すると、アスレチックワールドなどにさらなるアクション性を追加できます。

今回は、わかりやすいオブジェクトとして「JUMP」の文字を使用します。

  • オブジェクトを選択して Inspector ウィンドウにある「Add Component」ボタンを押して「Interact Item Trigger」「Player Logic」を追加します
  • Interact Item Trigger」はプレイヤーごとに調節するために、Target は「Owner」に変更し、Key は「AddJump」にします。Logic にメッセージを送るために Value は「Signal」に変更します
  • 同じオブジェクトに今度は「Player Logic」を追加します。「Player Logic」は、メッセージを読み取り、計算した結果をプレイヤーへメッセージとして通知するオペレーションです。今回のロジックはメッセージを受け取ったときにプレイヤーのジャンプ力に「1.5」加えるようにします
  • Target は「Player」、Key は「AddJump」に変更します
  • 「AddJump」のメッセージを受け取ったとき「jumpHeight」の値に「1.5」の数値を加えるために「=Add」を選択してください
  • 1つ目の変数は「Room State」に変更し、既存の「jumpHeight」を入力します。「=Add」を選択すると2つ目の変数が設定できるようになります
  • 2つ目の変数には定数を扱う「Constant」に、Value は小数点を扱える「Float」に変更し、加えるジャンプ力の値「1.5」を入力しましょう

「JUMP」のInspectorが画像のようになっていればOKです!

最終的な Inspector画像
クリックするたびにだんだん高くジャンプするようになりました

ジャンプ力の加算方法を変更することでまた違ったゲーム体験にすることもできます。いろいろな種類のロジックをためして遊んでみましょう🙌

記事をシェアしてワールド制作を盛り上げよう!