アニメーションが終わる時間がちょうど1秒なのでアニメーションが終わるまでCoroutineを使って処理を一秒間だけ停止してその後にGameObjectをDestroyしたいのですがエラーが出ます
一応自分なりにコードを書いてみたつもりですがどっかしら見落としがあるみたいです
解決案をくださるとありがたいです
開発環境表記
2020年1.14f1
プラットフォームはwebglです
コンソール
Coroutine 'Coroutine' couldn't be started!
UnityEngine.MonoBehaviour:StartCoroutine(String)
HP:Start() (at Assets/sukuriputozu/main/senntouki/HP.cs:16)
c#
1 2using System.Collections; 3using System.Collections.Generic; 4using UnityEngine; 5using UnityEngine.UI; 6 7public class HP : MonoBehaviour 8{ 9 private Animator anim = null; 10 public GameObject hp_object = null; 11 public int hp_num = 0; 12 13 // Start is called before the first frame update 14 void Start() 15 { 16 anim = GetComponent<Animator>(); 17 StartCoroutine("Coroutine"); 18 } 19 20 // Update is called once per frame 21 void Update() 22 { 23 Text hp_text = hp_object.GetComponent<Text>(); 24 25 hp_text.text = "HP" + hp_num; 26 if (hp_num < 1) 27 { 28 IEnumerator Coroutine() 29 { 30 31 Debug.Log("しにました"); 32 anim.SetBool("bakuhatu", true); 33 yield return new WaitForSeconds(1); //一秒後にgameobjectをDestroy 34 Destroy(this.gameObject); 35 } 36 } 37 } 38} 39
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/31 09:02