上の写真のようにユニティちゃん2DをダウンロードしてUnityにインポートしたところ、下の写真のようにコンソール画面にエラーが表示されました。
エラー内容は、
Assets\UnityChan2D\Demo\Scripts\PointController.cs(7,12): error CS0619: 'GUIText' is obsolete: 'GUIText has been removed. Use UI.Text instead.'
と記載されています。
エラーの原因となっているスクリプトのコードは以下の通りです。
using System; using UnityEngine; public class PointController : MonoBehaviour { public GUIText total; public GUIText coin; private static PointController m_instance; public static PointController instance { get { if (m_instance == false) { m_instance = FindObjectOfType<PointController>(); } return m_instance; } } public void AddCoin() { coin.text = (Convert.ToInt32(coin.text) + 1).ToString("00"); total.text = (Convert.ToInt32(total.text) + 100).ToString("0000000"); } }
using UnityEngine; using System.Collections; public class TimeController : MonoBehaviour { public int time; [SceneName] public string nextLevel; public GUIText timer; void Update() { int remainingTime = time - Mathf.FloorToInt(Time.timeSinceLevelLoad * 2.5f); if (0 <= remainingTime) { timer.text = remainingTime.ToString("000"); } else { GameObject player = GameObject.FindGameObjectWithTag("Player"); if (player) { StartCoroutine(LoadNextLevel()); enabled = false; } } } private IEnumerator LoadNextLevel() { var player = GameObject.FindGameObjectWithTag("Player"); if (player) { player.SendMessage("TimeOver", SendMessageOptions.DontRequireReceiver); } yield return new WaitForSeconds(3); Application.LoadLevel(nextLevel); } }
GUIテキストを取り除いて、UIテキストを使うように、エラー文にありますが、具体的にどのような操作をしたらよいかを、どなたか教えていただけないでしょうか?
よろしくお願いいたします。何か補足の情報が必要でありましたら、コメントを頂けるとなるべく早く返信いたします。
「unity ugui 使い方」でググって、uGUI(=UI.Text)の使い方をまず学んでください。
その後「public GUIText total;」などの行の「GUIText」の部分を「Text」に置き換えればいいかと思います。(他の変数も同様)(コード先頭に「using UnityEngine.UI;」の追記もお忘れ無く)
https://docs.unity3d.com/ja/current/Manual/class-GUIText.html
こちらも参考に→ https://teratail.com/help/question-tips
uGUIの使い方を学ぶ機会になりました。
解決できました。親切にリンクまで教えていただきありがとうございました。
回答1件
あなたの回答
tips
プレビュー