Class CooldownManager
public sealed class CooldownManager : BaseAlternateConfigurationFile, IConfiguration, IDisposable, ILayoutHostedService
- Inheritance
-
CooldownManager
- Implements
- Inherited Members
- Extension Methods
Constructors
CooldownManager(IPlayerService)
public CooldownManager(IPlayerService playerService)
Parameters
playerServiceIPlayerService
Properties
Cooldowns
All available cooldown types.
public IReadOnlyList<CooldownTypeConfiguration> Cooldowns { get; }
Property Value
Methods
FindConfiguration(string)
public CooldownTypeConfiguration? FindConfiguration(string type)
Parameters
typestring
Returns
GetFOBDeployCooldown()
public float GetFOBDeployCooldown()
Returns
- float
The deploy cooldown based on current player count.
Remarks
Equation: CooldownMin + (CooldownMax - CooldownMin) * (1 - Pow(1 - (PlayerCount - PlayersMin) * (1 / (PlayersMax - PlayersMin)), Alpha).
GetFOBDeployCooldown(int)
public float GetFOBDeployCooldown(int players)
Parameters
playersint
Returns
- float
The deploy cooldown based on current player count.
Remarks
Equation: CooldownMin + (CooldownMax - CooldownMin) * (1 - Pow(1 - (PlayerCount - PlayersMin) * (1 / (PlayersMax - PlayersMin)), Alpha).
HandleChange()
Invoked by the base class when a change occurs.
protected override void HandleChange()
HasCooldown(CSteamID, string, object?)
Check if a player has an active cooldown.
public bool HasCooldown(CSteamID player, string type, object? data = null)
Parameters
Returns
HasCooldown(CSteamID, string, out Cooldown, object?)
Check if a player has an active cooldown.
public bool HasCooldown(CSteamID player, string type, out Cooldown cooldown, object? data = null)
Parameters
Returns
HasCooldown(WarfarePlayer, string, object?)
Check if a player has an active cooldown.
public bool HasCooldown(WarfarePlayer player, string type, object? data = null)
Parameters
playerWarfarePlayertypestringdataobject
Returns
HasCooldown(WarfarePlayer, string, out Cooldown, object?)
Check if a player has an active cooldown.
public bool HasCooldown(WarfarePlayer player, string type, out Cooldown cooldown, object? data = null)
Parameters
playerWarfarePlayertypestringcooldownCooldowndataobject
Returns
RemoveCooldown(CSteamID)
Remove all cooldowns for the given player.
public void RemoveCooldown(CSteamID player)
Parameters
playerCSteamID
RemoveCooldown(CSteamID, string, object?)
Remove all cooldowns of a type for the given player.
public void RemoveCooldown(CSteamID player, string type, object? data = null)
Parameters
RemoveCooldown(string, object?)
Remove all cooldowns of the given type.
public void RemoveCooldown(string type, object? data = null)
Parameters
RemoveCooldown(WarfarePlayer)
Remove all cooldowns for the given player.
public void RemoveCooldown(WarfarePlayer player)
Parameters
playerWarfarePlayer
RemoveCooldown(WarfarePlayer, string, object?)
Remove all cooldowns of a type for the given player.
public void RemoveCooldown(WarfarePlayer player, string type, object? data = null)
Parameters
playerWarfarePlayertypestringdataobject
StartCooldown(CSteamID, string, object?)
Start a cooldown on a player with a configured duration.
public void StartCooldown(CSteamID player, string type, object? data = null)
Parameters
Exceptions
StartCooldown(CSteamID, string, TimeSpan, object?)
Start a cooldown on a player with a custom duration.
public void StartCooldown(CSteamID player, string type, TimeSpan duration, object? data = null)
Parameters
StartCooldown(CSteamID, Cooldown)
Start a cooldown on a player with custom information.
public void StartCooldown(CSteamID player, Cooldown cooldown)
Parameters
playerCSteamIDcooldownCooldown
StartCooldown(WarfarePlayer, string, object?)
Start a cooldown on a player with a configured duration.
public void StartCooldown(WarfarePlayer player, string type, object? data = null)
Parameters
playerWarfarePlayertypestringdataobject
Exceptions
StartCooldown(WarfarePlayer, string, TimeSpan, object?)
Start a cooldown on a player with a custom duration.
public void StartCooldown(WarfarePlayer player, string type, TimeSpan duration, object? data = null)
Parameters
playerWarfarePlayertypestringdurationTimeSpandataobject
StartCooldown(WarfarePlayer, Cooldown)
Start a cooldown on a player with custom information.
public void StartCooldown(WarfarePlayer player, Cooldown cooldown)
Parameters
playerWarfarePlayercooldownCooldown