public void WeaponUpdate(Slider slider = null, ReboundProgress reboundProgress = null) { if (hasRebuondDuringFire == true) { if (fireCount < fireDelay) { lastFireTime += Time.deltaTime * 1.1f; } lastFireTime -= Time.deltaTime; if (lastFireTime <= 0) { reboundDuringFire = 0f; lastFireTime = 0f; if (reboundProgress != null) { reboundProgress.gameObject.SetActive(false); } } if (reboundDuringFire > 0f) { reboundDuringFire -= reboundRecoverValue * Time.deltaTime; if (reboundProgress != null) { reboundProgress.gameObject.SetActive(true); reboundProgress.SetProgress(reboundDuringFire, maxRebound); } } if (reboundDuringFire < 0f) { reboundDuringFire = 0f; if (reboundProgress != null) { reboundProgress.gameObject.SetActive(false); } } } else if (hasRebuondDuringFire == false) { if (reboundProgress != null) { reboundProgress.gameObject.SetActive(false); } } if (isFireDelayFinish == true) { if (slider != null) { slider.value = 0f; } return; } fireCount += Time.deltaTime; if (fireCount >= fireDelay) { isFireDelayFinish = true; if (slider != null) { slider.gameObject.SetActive(false); } return; } if (slider != null) { slider.gameObject.SetActive(true); slider.value = fireCount / fireDelay; } }
public void SetSlider(Slider weaponSlider, ReboundProgress reboundProgress) { this.weaponSlider = weaponSlider; this.reboundProgress = reboundProgress; }