/// <summary> /// Called when a bullet was fired. /// </summary> public void OnFiredSingleShot() { --remainingBullets; NetworkWeaponAnimator.OnSingleShotFired(); FMODUtil.PlayOnTransform(weapon.WeaponSoundModel.ShootSound, transform); BulletCountChanged?.Invoke(remainingBullets); }
public void RpcOnRevived() { player.Collider2D.isTrigger = false; player.gameObject.layer = LayerDict.Instance.GetPlayerLayer(); FMODUtil.PlayOnTransform(reviveSound, transform); OnRevived?.Invoke(); }
private IEnumerator Dash() { FMODUtil.PlayOnTransform(dashSound, transform); Dashing = true; yield return(new WaitForSeconds(dashDuration)); Dashing = false; dashTimer = dashCooldown; }
private void RpcOnDied() { OnDied?.Invoke(); FMODUtil.PlayOnTransform(diedSound, transform); if (!isServer) { GetComponent <IDieable>().Die(); } }
/// <summary> /// Called when the weapon has reloaded. /// </summary> public void OnReloaded() { remainingBullets = weapon.MagazineSize; NetworkWeaponAnimator.OnStoppedReload(); if (isLocalPlayer) { FMODUtil.PlayOnTransform(weapon.WeaponSoundModel.ReloadSound, transform); } BulletCountChanged?.Invoke(remainingBullets); }
/// <summary> /// Called when the current health amount changed. /// </summary> /// <param name="prevHealth">The previous health amount.</param> /// <param name="currentHealth">The current health amount.</param> private void OnCurrentChanged(int prevHealth, int currentHealth) { CurrentChanged?.Invoke(prevHealth, currentHealth); CurrentChangedAsPercentage?.Invoke((float)currentHealth / (float)max); if (prevHealth > currentHealth) { FMODUtil.PlayOnTransform(hitSound, transform); } }
private void RpcItemPickedUp(Pickable pickable) { switch (pickable.PickableType) { case PickableType.Consumable: case PickableType.Item: FMODUtil.PlayOnTransform(itemPickUpSound, transform); break; case PickableType.Weapon: FMODUtil.PlayOnTransform(((Weapon)pickable).WeaponSoundModel.EquipSound, transform); break; } }
private IEnumerator WeaponCanNotShoot(string eventName) { FMODUtil.PlayOnTransform(eventName, transform); yield return(new WaitForSeconds(0.5f)); }