Table of Contents

Class Scp049Role

Namespace
Exiled.API.Features.Roles
Assembly
Exiled.API.dll

Defines a role that represents SCP-049.

public class Scp049Role : FpcRole, IWrapper<PlayerRoleBase>, IVoiceRole, ISubroutinedScpRole, IHumeShieldRole, ISpawnableScp
Inheritance
Scp049Role
Implements
IWrapper<PlayerRoleBase>
ISpawnableScp
Inherited Members
Extension Methods

Properties

AttackAbility

Gets SCP-049's PlayerRoles.PlayableScps.Scp049.Scp049AttackAbility.

public Scp049AttackAbility AttackAbility { get; }

Property Value

Scp049AttackAbility

Base

Gets the PlayerRoles.PlayableScps.Scp049.Scp049Role instance.

public Scp049Role Base { get; }

Property Value

Scp049Role

CallAbility

Gets SCP-049's PlayerRoles.PlayableScps.Scp049.Scp049CallAbility.

public Scp049CallAbility CallAbility { get; }

Property Value

Scp049CallAbility

CallCooldown

Gets or sets the amount of time before SCP-049 can use its Doctor's Call ability again.

public float CallCooldown { get; set; }

Property Value

float

DeadZombies

Gets all the dead zombies.

public IEnumerable<Player> DeadZombies { get; }

Property Value

IEnumerable<Player>

GoodSenseCooldown

Gets or sets the amount of time before SCP-049 can use its Good Sense of the Doctor ability again.

public float GoodSenseCooldown { get; set; }

Property Value

float

HumeShieldModule

Gets a reference to the role's PlayerRoles.PlayableScps.HumeShield.HumeShieldModuleBase.

public HumeShieldModuleBase HumeShieldModule { get; }

Property Value

HumeShieldModuleBase

IsCallActive

Gets a value indicating whether SCP-049's "Doctor's Call" ability is currently active.

public bool IsCallActive { get; }

Property Value

bool

IsRecalling

Gets a value indicating whether SCP-049 is currently reviving a player.

public bool IsRecalling { get; }

Property Value

bool

RecallingPlayer

Gets the player that is currently being revived by SCP-049. Will be null if IsRecalling is false.

public Player RecallingPlayer { get; }

Property Value

Player

RecallingRagdoll

Gets the ragdoll that is currently being revived by SCP-049. Will be null if IsRecalling is false.

public Ragdoll RecallingRagdoll { get; }

Property Value

Ragdoll

RemainingAttackCooldown

Gets or sets the amount of time before SCP-049 can attack again.

public float RemainingAttackCooldown { get; set; }

Property Value

float

RemainingCallDuration

Gets or sets the duration of the PlayerRoles.PlayableScps.Scp049.Scp049CallAbility.

public float RemainingCallDuration { get; set; }

Property Value

float

RemainingGoodSenseDuration

Gets or sets the duration of the PlayerRoles.PlayableScps.Scp049.Scp049SenseAbility.

public float RemainingGoodSenseDuration { get; set; }

Property Value

float

ResurrectAbility

Gets SCP-049's PlayerRoles.PlayableScps.Scp049.Scp049ResurrectAbility.

public Scp049ResurrectAbility ResurrectAbility { get; }

Property Value

Scp049ResurrectAbility

ResurrectedPlayers

Gets all the resurrected players.

public Dictionary<Player, int> ResurrectedPlayers { get; }

Property Value

Dictionary<Player, int>

SenseAbility

Gets SCP-049's PlayerRoles.PlayableScps.Scp049.Scp049SenseAbility.

public Scp049SenseAbility SenseAbility { get; }

Property Value

Scp049SenseAbility

SenseDistance

Gets or sets the distance of the Sense Ability.

public float SenseDistance { get; set; }

Property Value

float

SubroutineModule

Gets the SCP PlayerRoles.Subroutines.SubroutineManagerModule.

public SubroutineManagerModule SubroutineModule { get; }

Property Value

SubroutineManagerModule

TurnedPlayers

Gets a list of players who are turned away from SCP-049 Sense Ability.

public static HashSet<Player> TurnedPlayers { get; }

Property Value

HashSet<Player>

Type

Gets the PlayerRoles.RoleTypeId of this Player.

public override RoleTypeId Type { get; }

Property Value

RoleTypeId

Methods

Attack(Player)

Attacks a Player.

public void Attack(Player player)

Parameters

player Player

The Playerto attack.

CanResurrect(Ragdoll)

Returns a bool indicating whether the ragdoll can be resurrected by SCP-049.

public bool CanResurrect(Ragdoll ragdoll)

Parameters

ragdoll Ragdoll

The ragdoll to check.

Returns

bool

true if the body can be revived; otherwise, false.

CanResurrect(BasicRagdoll)

Returns a bool indicating whether the ragdoll can be resurrected by SCP-049.

public bool CanResurrect(BasicRagdoll ragdoll)

Parameters

ragdoll BasicRagdoll

The ragdoll to check.

Returns

bool

true if the body can be revived; otherwise, false.

GetResurrectionCount(Player)

Gets the amount of resurrections of a Player.

public int GetResurrectionCount(Player player)

Parameters

player Player

The Playerto check.

Returns

int

The amount of resurrections of the checked player.

GetSpawnChance(List<RoleTypeId>)

Gets the Spawn Chance of SCP-049.

public float GetSpawnChance(List<RoleTypeId> alreadySpawned)

Parameters

alreadySpawned List<RoleTypeId>

The List of Roles already spawned.

Returns

float

The Spawn Chance.

IsInRecallRange(Ragdoll)

Returns a bool indicating whether SCP-049 is close enough to a ragdoll to revive it.

public bool IsInRecallRange(Ragdoll ragdoll)

Parameters

ragdoll Ragdoll

The ragdoll to check.

Returns

bool

true if close enough to revive the body; otherwise, false.

Remarks

This method only returns whether SCP-049 is close enough to the body to revive it; the body may have expired. Make sure to check CanResurrect(Ragdoll) to ensure the body can be revived.

IsInRecallRange(BasicRagdoll)

Returns a bool indicating whether SCP-049 is close enough to a ragdoll to revive it.

public bool IsInRecallRange(BasicRagdoll ragdoll)

Parameters

ragdoll BasicRagdoll

The ragdoll to check.

Returns

bool

true if close enough to revive the body; otherwise, false.

Remarks

This method only returns whether SCP-049 is close enough to the body to revive it; the body may have expired. Make sure to check CanResurrect(BasicRagdoll) to ensure the body can be revived.

LoseSenseTarget()

Lose the current target of the Good Sense ability.

public void LoseSenseTarget()

RefreshCallDuration()

Refresh the PlayerRoles.PlayableScps.Scp049.Scp049CallAbility duration.

public void RefreshCallDuration()

Resurrect(Player)

Resurrects a Player.

public bool Resurrect(Player player)

Parameters

player Player

The Playerto resurrect.

Returns

bool

The Resurrected player.

Resurrect(Ragdoll)

Resurrects a Ragdoll owner.

public bool Resurrect(Ragdoll ragdoll)

Parameters

ragdoll Ragdoll

The Ragdoll to resurrect.

Returns

bool

The Resurrected Ragdoll.

Sense(Player)

Trigger the Sense Ability on the specified Player.

public void Sense(Player player)

Parameters

player Player

The Player to sense.