前提
お世話になっております。unityでゲームを作っている初学者です。
NullReferenceException: Object reference not set to an instance of an object
LifeScript.Awake () (at Assets/script/LifeScript.cs:18)
というエラーが出ます。
これはnull状態のオブジェクトを実行してしまっているときに表示されるということは理解できたのですが、なぜ表示されてしまうのか、解決方法がわからず困っております。
lifescriptで newlifeという変数を定義してます。
それを画面右上に表示させます。newlifeの数値は自然に減り続けるようにコーディングしています。
↓の画面のように、画面右上にnewlifeを表示させる用のテキストUI(Life)を作り、そこにlifescriptをアタッチし、public textにテキストUIを入れております。
プログラム自体は問題なく動いているように見えますが、前述のNullReferenceException: Object reference not set to an instance of an objectのエラーが出ます。
public Text lifeDisplayにテキストUIもアタッチしているので、参照できないということは無いように思えるのですが…。
あれこれやっても自力ではすすめる気配がなく相談させていただきました。
ご教示頂けますと幸いです。よろしくお願いいたします。。
実現したいこと
下記のエラーメッセージの解決法
発生している問題・エラーメッセージ
NullReferenceException: Object reference not set to an instance of an object LifeScript.Awake () (at Assets/script/LifeScript.cs:18)
該当のソースコード
C#
1スクリプト1:lifescript.cs 2 3 4using System.Collections; 5using System.Collections.Generic; 6using UnityEngine; 7using UnityEngine.UI; 8 9 10public class LifeScript : MonoBehaviour 11{ 12 13 public Text lifeDisplay; 14 int newlife = 5000; 15 16 // Start is called before the first frame update 17 void Start() 18 { 19 20 21 lifeDisplay.text = newlife.ToString(); 22 23 Invoke(nameof(decrese1), 0.1f); 24 25 } 26 27 void decrese1() 28 { 29 newlife--; 30 lifeDisplay.text = newlife.ToString(); 31 Invoke(nameof(decrese1), 0.02f); 32 } 33 34 35}
補足情報(FW/ツールのバージョンなど)
unity 2020 3.42f
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/12/30 02:02
2022/12/30 02:34