protected virtual void Reload(Actor self, int reloadDelay, int reloadCount, string sound) { if (!ammoPool.FullAmmo() && --remainingTicks == 0) { remainingTicks = reloadDelay; if (!string.IsNullOrEmpty(sound)) { Game.Sound.PlayToPlayer(SoundType.World, self.Owner, sound, self.CenterPosition); } ammoPool.GiveAmmo(self, reloadCount); } }
protected virtual void Reload(Actor self, int reloadDelay, int reloadCount, string sound) { if (!ammoPool.HasFullAmmo && --remainingTicks == 0) { remainingTicks = Util.ApplyPercentageModifiers(reloadDelay, modifiers.Select(m => m.GetReloadAmmoModifier())); if (!string.IsNullOrEmpty(sound)) { Game.Sound.PlayToPlayer(SoundType.World, self.Owner, sound, self.CenterPosition); } ammoPool.GiveAmmo(self, reloadCount); } }