public void ChangeBehaviour() { isGraphRefreshed = false; Debug.Log(GameManagerStateMachine.ReturnCurrentState()); if (counter == phases.Length) { phases[lagCounter].enabled = false; return; } phases[lagCounter].enabled = false; lagCounter = counter; phases[counter].enabled = true; GameManagerStateMachine.ChangeState(phases[counter]); counter++; currentPhase = GameManagerStateMachine.ReturnCurrentState(); if (currentPhase == PhaseBuilder.PhaseType.Build) { round += 1; } }
// Use this for initialization void Awake() { //UI initialization displayParent = GameObject.Find("Round Info"); roundDisplay = Instantiate(textBoxPrefab, displayParent.transform).GetComponent <TextMeshProUGUI>(); enemiesDisplay = Instantiate(textBoxPrefab, displayParent.transform).GetComponent <TextMeshProUGUI>(); phaseDisplay = Instantiate(textBoxPrefab, displayParent.transform).GetComponent <TextMeshProUGUI>(); healthDisplay = Instantiate(textBoxPrefab, displayParent.transform).GetComponent <TextMeshProUGUI>(); phases = GetComponentsInChildren <Phase>(); this.GameManagerStateMachine = GetComponent <StateMachine>(); foreach (Phase phase in phases) { phase.enabled = false; } phases[0].enabled = true; GameManagerStateMachine.ChangeState(phases[0]); currentPhase = GameManagerStateMachine.ReturnCurrentState(); Debug.Log(GameManagerStateMachine.ReturnCurrentState()); }
protected void SetParamaters() { //thePlayer = FindObjectOfType<PlayerControllerTutorial4>(); //thePlayer = FindObjectOfType<PlayerControllerScript>(); thePlayer = FindObjectOfType <CameraController>(); this.gameManager = FindObjectOfType <GameManager>(); phaseName = phase.PhaseName; numberOfEnemies = phase.NumberOfEnemies; numberOfWaves = phase.NumberOfWaves; timeBetweenEnemySpawn = phase.TimeBetweenEnemySpawn; timeBetweenWaves = phase.TimeBetweenWaves; phaseType = phase.phaseType; this.enemyToSpawn = this.phase.EnemyToSpawn; enemyCounter = numberOfEnemies; waveCounter = numberOfWaves; waveTimer = timeBetweenWaves; if (!thePlayer) { Debug.Log("There is no player!"); } }