Table of Contents

Class Scp939Role

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

Defines a role that represents SCP-939.

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

Properties

AmnesticCloudAbility

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Scp939AmnesticCloudAbility.

public Scp939AmnesticCloudAbility AmnesticCloudAbility { get; }

Property Value

Scp939AmnesticCloudAbility

AmnesticCloudCooldown

Gets or sets the amount of time before SCP-939 can use its amnestic cloud ability again.

public float AmnesticCloudCooldown { get; set; }

Property Value

float

AmnesticCloudDuration

Gets or sets the duration of the amnestic cloud.

public float AmnesticCloudDuration { get; set; }

Property Value

float

AttackCooldown

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

public float AttackCooldown { get; set; }

Property Value

float

Base

Gets the PlayerRoles.PlayableScps.Scp939.Scp939Role instance.

public Scp939Role Base { get; }

Property Value

Scp939Role

ClawAbility

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Scp939ClawAbility.

public Scp939ClawAbility ClawAbility { get; }

Property Value

Scp939ClawAbility

EnvironmentalMimicry

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Mimicry.EnvironmentalMimicry.

public EnvironmentalMimicry EnvironmentalMimicry { get; }

Property Value

EnvironmentalMimicry

FirearmRippleTrigger

Gets SCP-939's FirearmRippleTrigger.

public FirearmRippleTrigger FirearmRippleTrigger { get; }

Property Value

FirearmRippleTrigger

FocusAbility

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Scp939FocusAbility.

public Scp939FocusAbility FocusAbility { get; }

Property Value

Scp939FocusAbility

FootstepRippleTrigger

Gets SCP-939's FootstepRippleTrigger.

public FootstepRippleTrigger FootstepRippleTrigger { get; }

Property Value

FootstepRippleTrigger

HumeShieldModule

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

public HumeShieldModuleBase HumeShieldModule { get; }

Property Value

HumeShieldModuleBase

IsFocused

Gets a value indicating whether SCP-939 is currently using its focus ability.

public bool IsFocused { get; }

Property Value

bool

IsLunging

Gets a value indicating whether SCP-939 is currently lunging.

public bool IsLunging { get; }

Property Value

bool

LungeAbility

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Scp939LungeAbility.

public Scp939LungeAbility LungeAbility { get; }

Property Value

Scp939LungeAbility

LungeState

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Scp939LungeState.

public Scp939LungeState LungeState { get; }

Property Value

Scp939LungeState

MimicPointController

Gets SCP-939's MimicPointController.

public MimicPointController MimicPointController { get; }

Property Value

MimicPointController

MimicryCooldown

Gets or sets the amount of time before SCP-939 can use any of its mimicry abilities again.

public float MimicryCooldown { get; set; }

Property Value

float

MimicryPointActive

Gets a value indicating whether SCP-939 has a placed mimic point.

public bool MimicryPointActive { get; }

Property Value

bool

MimicryPointPosition

Gets a value indicating the position of SCP-939's mimic point. May be null if MimicryPointActive is false.

public Vector3? MimicryPointPosition { get; }

Property Value

Vector3?

MimicryRecorder

Gets SCP-939's PlayerRoles.PlayableScps.Scp939.Mimicry.MimicryRecorder.

public MimicryRecorder MimicryRecorder { get; }

Property Value

MimicryRecorder

SavedVoices

Gets a value indicating the amount of voices that SCP-939 has saved.

public int SavedVoices { get; }

Property Value

int

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-939 AmnesticCloud 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

VisiblePlayers

Gets a list of players this SCP-939 instance can see regardless of their movement.

public List<Player> VisiblePlayers { get; }

Property Value

List<Player>

Methods

ClearRecordings()

Removes all recordings of player voices.

public void ClearRecordings()

ClearRecordings(Player)

Removes all recordings of player voices. Provide an optional target to remove all the recordings of a single player.

public void ClearRecordings(Player target)

Parameters

target Player

If provided, will only remove recordings of the targeted player.

CreateCloud(float)

Created a Amnestic Cloud at the SCP-939's position.

public void CreateCloud(float duration)

Parameters

duration float

The duration of the Amnestic cloud.

DestroyCurrentMimicPoint()

Destroys the Current Mimic Point.

public void DestroyCurrentMimicPoint()

~Scp939Role()

Finalizes an instance of the Scp939Role class.

protected ~Scp939Role()

GetSpawnChance(List<RoleTypeId>)

Gets the Spawn Chance of SCP-939.

public float GetSpawnChance(List<RoleTypeId> alreadySpawned)

Parameters

alreadySpawned List<RoleTypeId>

The List of Roles already spawned.

Returns

float

The Spawn Chance.

PlaceMimicPoint(Vector3)

Place a Mimic Point at the specified position.

public void PlaceMimicPoint(Vector3 mimicPointPosition)

Parameters

mimicPointPosition Vector3

The Position of the Mimic Point.

PlayRippleSound(UsableRippleType, Vector3, Player)

Plays a Ripple Sound (Usable RippleType: Footstep, FireArm).

public void PlayRippleSound(UsableRippleType ripple, Vector3 position, Player playerToSend)

Parameters

ripple UsableRippleType

The RippleType to play to 939.

position Vector3

The Sync Position to play.

playerToSend Player

The Player to send the Ripple Sound.