← Yop2D

プレイヤーの体力を減らすには?

初心者ガイド · コード不要

Français · English · Español · Deutsch · Italiano · Português · Русский · 中文 · 日本語

プレイヤーはライフ 3 でスタートします。危ないもの(トゲ、敵など)に触れるたびに 1 つ減り、体力バーが下がります。0 になると Game Over:ステージが最初から始まります。

用意するもの:

ステップ 1:危ないものとバーを準備する

  1. 危ないものをそれぞれ選び、「タグ (ラベル)」 欄に danger と書きます。
  2. healthBar を選びます。インスペクターの 「プログレスバー」 で:最小値 = 0、最大値 = 3、現在値 = 3。

ステップ 2:変数「vie」を作る

  1. 左のパネルの 変数 の欄で、変数を作ります。
  2. 名前:vie(体力)· 範囲:ローカル · 型:整数 · 最初の値:3。

ステップ 3:ライフを 1 つ減らす

  1. シーンの ブループリント を開きます。
  2. 「オブジェクトがタグに触れた場合」 イベントを追加します:ターゲット player、タグ danger。
  3. 「変数に加算」 を追加します:変数 vie、加算する値 = -1(マイナスをつけて減らします)。
  4. 「進捗を設定」 を追加します:ターゲット healthBar、新しい進捗 = =vie
  5. 3 つのノードを順番につなぎます。
オブジェクトがタグに触れた場合ターゲット:player · タグ:danger
→
変数に加算vie · - 1
→
進捗を設定healthBar · =vie
👉 「新しい進捗」 に =vie と書くと、「変数 vie の値を使う」という意味になります。だからバーはいつもライフの数と同じになります。

ステップ 4:Game Over

  1. 「進捗を設定」 のあとに 「条件」 ノードを追加し、条件 = =vie <= 0(「vie が 0 以下」)にします。
  2. その 真 出力を 「シーンをやり直す」 ノード(カテゴリー シーンとHUD)につなぎます。
  3. 保存してゲームを開始し、危ないものに 3 回触れてみます。
進捗を設定healthBar
→
条件=vie <= 0
真 →
シーンをやり直す
👉 「シーンをやり直す」 はすべてを最初の状態に戻します:オブジェクトは元の場所に、範囲が 「ローカル」 の変数(つまり vie = 3)は最初の値に戻ります。
👉 ちゃんとした終了画面を出したい? すぐにやり直す代わりに、真 出力を 「テキストを変更」(「負け!」という文字)、次に 「待つ」(2 秒)、次に 「シーンをやり直す」 につなぎます。

おまけ:穴に落ちる

アクションゲームなら、シーンのいちばん下に fallZone という名前の ゾーン オブジェクトを置きます(ゾーンはゲーム中は見えません)。そして:

衝突 A/Bオブジェクト A:player · オブジェクト B:fallZone
→
シーンをやり直す

うまくいかないとき