using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class StarManager: MonoBehaviour
{
private static bool playerExits;
private bool thisPlayerIsTheReal;
[SerializeField] int highscoreLevel1;
[SerializeField] int level1;
GameObject timer;
[SerializeField] GameObject level1Stars;
[SerializeField] GameObject level1Star1;
[SerializeField] GameObject level1Star2;
[SerializeField] GameObject level1Star3;
private void Start()
{
level1Stars = GameObject.FindGameObjectWithTag("StarsLevel1");
level1Star1 = level1Stars.transform.GetChild(0).gameObject;
level1Star2 = level1Stars.transform.GetChild(1).gameObject;
level1Star3 = level1Stars.transform.GetChild(2).gameObject;
level1Star1.SetActive(false);
level1Star2.SetActive(false);
level1Star3.SetActive(false);
DontDestroyOnLoad(gameObject);
}
private void Awake()
{
if (!playerExits)
{
playerExits = true;
thisPlayerIsTheReal = true;
DontDestroyOnLoad(gameObject.transform);
}
else if (playerExits && !thisPlayerIsTheReal)
{
Destroy(gameObject);
}
}
private void OnLevelWasLoaded(int level)
{
level1Stars = GameObject.FindGameObjectWithTag("StarsLevel1");
level1Star1 = level1Stars.transform.GetChild(0).gameObject;
level1Star2 = level1Stars.transform.GetChild(1).gameObject;
level1Star3 = level1Stars.transform.GetChild(2).gameObject;
if (SceneManager.GetActiveScene().buildIndex == 0)
{
StarsSetActive();
}
}
public void StarsUpdate()
{
timer = GameObject.Find("Canvas/Timer");
if (timer.GetComponent<Timer>().stars == 3)
{
if (SceneManager.GetActiveScene().buildIndex == 1)
{
level1 = 3;
}
}
if (timer.GetComponent<Timer>().stars == 2)
{
if (SceneManager.GetActiveScene().buildIndex == 1)
{
level1 = 2;
}
}
if (timer.GetComponent<Timer>().stars == 1)
{
if (SceneManager.GetActiveScene().buildIndex == 1)
{
level1 = 1;
}
}
}
private void StarsSetActive()
{
level1Star1.SetActive(false);
level1Star2.SetActive(false);
level1Star3.SetActive(false);
if (level1 > highscoreLevel1)
{
highscoreLevel1 = level1;
}
if (highscoreLevel1 == 1)
{
level1Star1.SetActive(true);
}
if (highscoreLevel1 == 2)
{
level1Star1.SetActive(true);
level1Star2.SetActive(true);
}
if (highscoreLevel1 == 3)
{
Debug.Log("highScoreLevel1 == 3 ");
level1Star1.SetActive(true);
level1Star2.SetActive(true);
level1Star3.SetActive(true);
}
}
}
The problem is that on line 110 the Debug.Log works, but the SetActive’s don’t work. Everything above that works and I’m not getting any errors. Would love to be helped.