public void StartTurn() { m_backboardBonus = default(int); m_perfectShootBonus = default(int); if (m_fireballScore >= StaticConf.Gameplay.FIREBALL_POWER_MAX) { ActivateFireball(); } if (m_ballShooted) { if (m_ballIsOnFire) { OnFireballCountdownElapsed(); } else { m_fireballScore = 0.0f; if (m_onFireballScoreUpdate != null) { m_onFireballScoreUpdate(); } } } m_ballShooted = false; m_turnFinished = false; GameManager.instance.ChestPosition().gameObject.GetComponent <ScoreTrigger> ().m_onTriggerEnter += onChestTriggered; GameManager.instance.Backboard().m_onBackboardHitted += onBackboardHitted; GameManager.instance.Terrain().m_onTriggerEnter += OnBallOnGround; GameUtils.ChangePositionAtRandomOnCurt(m_player.transform, m_ball.transform); m_perfectShootNormalizedValue = GameUtils.CalculatePerfectShootNormalizedValue(m_player.transform); if (m_onTurnStarted != null) { m_onTurnStarted(); } }