// Update is called once per frame void Update() { if (rampageState == RampageState.waiting) { barAnim.SetBool("RampageBar", false); } if (rampageCounter >= rampageMultiUpperLimit) { rampageState = RampageState.powerUp; barAnim.SetBool("RampageBar", false); rampageCounter = 0; } if (rampageCounter > 0 && rampageState != RampageState.powerUp) { rampageResetCounter -= Time.deltaTime; if (rampageResetCounter <= 0) { rampageState = RampageState.counting; } } else if (rampageCounter < 0 && rampageState != RampageState.powerUp) { rampageCounter = 0; rampageResetCounter = 3f; barAnim.SetBool("RampageBar", false); rampageState = RampageState.none; } rampMultiText.text = rampageMultiplier.ToString() + "x"; switch (rampageState) { case RampageState.none: axe.GetComponent <HackSlash>().attackDamage = 5f; axe.GetComponent <HackSlash>().attackRate = 1.5f; rampageMultiUpperLimit = 10f; rampageMultiplier = 0; rampageAnimation.SetBool("RampageOn", false); break; case RampageState.counting: rampageCounter -= Time.deltaTime; barAnim.SetBool("RampageBar", true); break; case RampageState.powerUp: rampageIncrease = true; rampageAnimation.SetBool("RampageOn", true); rampageMultiplier += 0.1f; rampageMultiUpperLimit *= 2; rampageState = RampageState.waiting; break; } rampageFillUp.value = rampageCounter / rampageMultiUpperLimit; if (rampageIncrease) { rampagePowerUp(); } }
public static void resetCounter() { rampageResetCounter = 3f; rampageState = RampageState.waiting; }