Skip to main content

CCitadelBaseAbility

Base class for all Deadlock abilities (hero abilities, items, innates, etc.).

public class CCitadelBaseAbility : CBaseEntity

Namespace: DeadworksManaged.Api
Inherits / implements: CBaseEntity
Source: Entities/CCitadelBaseAbility.cs#L5

Properties​

CCitadelBaseAbility.UpgradeBits​

Signature

public int UpgradeBits { get; set; }

Source: Entities/CCitadelBaseAbility.cs#L20

CCitadelBaseAbility.AbilitySlot​

Signature

public EAbilitySlot AbilitySlot { get; }

Source: Entities/CCitadelBaseAbility.cs#L24

CCitadelBaseAbility.IsChanneling​

Signature

public bool IsChanneling { get; }

Source: Entities/CCitadelBaseAbility.cs#L25

CCitadelBaseAbility.CanBeUpgraded​

Signature

public bool CanBeUpgraded { get; set; }

Source: Entities/CCitadelBaseAbility.cs#L26

CCitadelBaseAbility.ToggleState​

Signature

public bool ToggleState { get; }

Source: Entities/CCitadelBaseAbility.cs#L27

CCitadelBaseAbility.CooldownEnd​

When the current cooldown ends, in game time (compare with GlobalVars.CurTime). To put the ability on cooldown yourself, set CooldownStart to now and this to now plus the duration. To end a cooldown early, use ResetCooldown, which also refills charges.

Signature

public float CooldownEnd { get; set; }

Source: Entities/CCitadelBaseAbility.cs#L33

CCitadelBaseAbility.CooldownStart​

When the current cooldown started, in game time. With CooldownEnd, it gives the cooldown's full length.

Signature

public float CooldownStart { get; set; }

Source: Entities/CCitadelBaseAbility.cs#L36

CCitadelBaseAbility.IsOnCooldown​

True while the ability's cooldown is running. An ability that uses charges can also be unusable because it's out of charges, with no cooldown running; see RemainingCharges.

Signature

public bool IsOnCooldown { get; }

Source: Entities/CCitadelBaseAbility.cs#L42

CCitadelBaseAbility.RemainingCharges​

How many charges the ability has left. Only meaningful when MaxCharges is above 0.

Signature

public int RemainingCharges { get; }

Source: Entities/CCitadelBaseAbility.cs#L45

CCitadelBaseAbility.MaxCharges​

The most charges the ability can hold, including any added by upgrades and items. 0 for abilities that don't use charges.

Signature

public int MaxCharges { get; }

Source: Entities/CCitadelBaseAbility.cs#L51

CCitadelBaseAbility.IsUnlocked​

Signature

public bool IsUnlocked { get; }

Source: Entities/CCitadelBaseAbility.cs#L60

CCitadelBaseAbility.IsSignature​

Signature

public bool IsSignature { get; }

Source: Entities/CCitadelBaseAbility.cs#L62

CCitadelBaseAbility.IsActiveItem​

Signature

public bool IsActiveItem { get; }

Source: Entities/CCitadelBaseAbility.cs#L63

CCitadelBaseAbility.IsInnate​

Signature

public bool IsInnate { get; }

Source: Entities/CCitadelBaseAbility.cs#L64

CCitadelBaseAbility.IsWeapon​

Signature

public bool IsWeapon { get; }

Source: Entities/CCitadelBaseAbility.cs#L65

CCitadelBaseAbility.IsItem​

Signature

public bool IsItem { get; }

Source: Entities/CCitadelBaseAbility.cs#L66

CCitadelBaseAbility.AbilityName​

Signature

public string AbilityName { get; }

Source: Entities/CCitadelBaseAbility.cs#L67

CCitadelBaseAbility.CanBeImbued​

True when this is an item that has to be imbued into one of the hero's abilities. See ImbuedAbilities for what it is actually imbued into.

Signature

public bool CanBeImbued { get; }

Source: Entities/CCitadelBaseAbility.cs#L73

CCitadelBaseAbility.ImbuedAbilityIds​

Subclass IDs of the abilities this item is imbued into (m_vecImbuedAbilities). Empty for abilities and for items that have not been imbued.

Signature

public IReadOnlyList<uint> ImbuedAbilityIds { get; }

Source: Entities/CCitadelBaseAbility.cs#L79

CCitadelBaseAbility.ImbuedAbilities​

Internal names of the abilities this item is imbued into (e.g. "citadel_ability_shiv_dash").

Signature

public IReadOnlyList<string> ImbuedAbilities { get; }

Source: Entities/CCitadelBaseAbility.cs#L93

CCitadelBaseAbility.IsImbued​

True when this item is imbued into at least one ability.

Signature

public bool IsImbued { get; }

Source: Entities/CCitadelBaseAbility.cs#L109

Methods​

CCitadelBaseAbility.ResetCooldown()​

Makes the ability ready to use again straight away: ends its cooldown and refills its charges, the same way the Refresher item does. Everything else about the ability, such as its upgrades, the items imbued into it and its stacks, is left alone.

Signature

public void ResetCooldown()

Source: Entities/CCitadelBaseAbility.cs#L58

CCitadelBaseAbility.CanBeImbuedBy()​

True when the item named itemName may be imbued into this ability. Runs the game's own pairing check, so it rejects e.g. an ImbueEffects.ActiveNonUltimate item aimed at an ultimate.

Signature

public bool CanBeImbuedBy(string itemName)

Source: Entities/CCitadelBaseAbility.cs#L116