private IEnumerator StartCooldown() { allowRecharge = false; yield return(WaitFor.Seconds(rechargeTime)); CurrentMagazine.ServerSetAmmoRemains(1); CurrentMagazine.LoadProjectile(CurrentMagazine.Projectile, CurrentMagazine.ProjectilesFired); SoundManager.PlayNetworkedAtPos("ReloadKinetic", gameObject.AssumedWorldPosServer(), sourceObj: serverHolder); allowRecharge = true; }
private IEnumerator StartCooldown() { allowRecharge = false; yield return(WaitFor.Seconds(rechargeTime)); CurrentMagazine.ServerSetAmmoRemains(1); CurrentMagazine.LoadProjectile(Projectile, 1); if (isSuppressed) { Chat.AddExamineMsgFromServer(serverHolder, $"Your {gameObject.ExpensiveName()} silently recharges"); } else { SoundManager.PlayNetworkedAtPos("ReloadKinetic", gameObject.AssumedWorldPosServer(), sourceObj: serverHolder); } allowRecharge = true; }