- Home /
Script not getting called, even when attached to GameObject
I'm trying to run a leaderboard script, but the script itself is not getting called. I've done the debugs under void update, and there are no logs in the console. I double-checked to make sure that it was attached to a GameObject in the scene, and it was. I tried adding to every single possible GameObject in the scene, yet it was still not getting called. Are there any errors in the script itself? Or is it a problem with the scene?
Scene: https://imgur.com/a/kc4vGVg
Script (note that it isn't complete yet):
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;
public class Leaderboard : MonoBehaviour {
private Transform entryContainer;
private Transform entryTemplate;
private void Awake ()
{
entryContainer = transform.Find("highscoreEntryContainer");
entryTemplate = entryContainer.Find("highscoreEntryTemplate");
entryTemplate.gameObject.SetActive(false);
float TemplateHeight = 20f;
for (int i = 0; i < 20; i++)
{
Transform entryTransform = Instantiate(entryTemplate, entryContainer);
RectTransform entryRectTransform = entryTransform.GetComponent<RectTransform>();
entryRectTransform.anchoredPosition = new Vector2(0, -TemplateHeight * i);
entryTransform.gameObject.SetActive(true);
int rank = i + 1;
string rankString;
switch (rank)
{
default:
rankString = rank + "TH"; break;
case 1: rankString = "1ST"; break;
case 2: rankString = "2ND"; break;
case 3: rankString = "3RD"; break;
}
entryTransform.Find("Pos").GetComponent<Text>().text = "";
entryTransform.Find("Name").GetComponent<Text>().text = "";
entryTransform.Find("Score").GetComponent<Text>().text = "";
int score = Random.Range(0, 10000);
entryTransform.Find("scoreText").GetComponent<Text>().text = score.ToString();
string name = "AAA";
entryTransform.Find("nameText").GetComponent<Text>().text = name;
}
}
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
Debug.Log("E");
}
}
Answer by DaDonik · Jan 14, 2020 at 05:03 PM
Check the console. You are getting a NullRef exception. This is probably happening in your Awake() and thus stops exectution before your Update() method is called.
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Why won't my scene play? -1 Answers
Load Scene from intermediary Scene 1 Answer
Does anyone know how to look into this sort of thing? (Desciption) 3 Answers