Unityで別のオブジェクトについているスクリプトの変数を使用したい時、Staticを使う方法があるようなので、調べてみました。
型 public static int/string 変数名
なお、呼び出しは クラス名.変数名 で読み出すことができます。
以上を踏まえて、プレイヤーのHPをtextに表示するスクリプトを作成してみます。
スクリプト1:Player
スクリプト2:PlayerHpTxt
//Playerスクリプト:HP変数を用意する

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour
{
public static int playerHP = 100;
}
//PlayerHpTxtスクリプト:PlayerのHPを表示する

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class PlayerHpTxt : MonoBehaviour
{
public Text hpText;
private void Start()
{
hpText.text = $"Player HP:{Player.HP.ToString()}";
}
}
実行結果

コメント