Class Scp079Role
Defines a role that represents SCP-079.
public class Scp079Role : Role, IWrapper<PlayerRoleBase>, ISubroutinedScpRole, ISpawnableScp, IVoiceRole
- Inheritance
-
Scp079Role
- Implements
-
IWrapper<PlayerRoleBase>ISpawnableScp
- Inherited Members
- Extension Methods
Properties
Abilities
Gets or sets SCP-079's abilities. Can be null.
public IScp079AuxRegenModifier[] Abilities { get; set; }
Property Value
- IScp079AuxRegenModifier[]
AuxManager
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079AuxManager.
public Scp079AuxManager AuxManager { get; }
Property Value
- Scp079AuxManager
Base
Gets the game PlayerRoles.PlayableScps.Scp079.Scp079Role.
public Scp079Role Base { get; }
Property Value
- Scp079Role
BlackoutCapacity
Gets the maximum amount of rooms that SCP-079 can black out at its current Level.
public int BlackoutCapacity { get; }
Property Value
BlackoutCount
Gets the amount of rooms that SCP-079 has blacked out.
public int BlackoutCount { get; }
Property Value
BlackoutRoomAbility
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079BlackoutRoomAbility.
public Scp079BlackoutRoomAbility BlackoutRoomAbility { get; }
Property Value
- Scp079BlackoutRoomAbility
BlackoutZoneAbility
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079BlackoutZoneAbility.
public Scp079BlackoutZoneAbility BlackoutZoneAbility { get; }
Property Value
- Scp079BlackoutZoneAbility
BlackoutZoneCooldown
Gets or sets the amount of time until SCP-079 can use its blackout zone ability again.
public float BlackoutZoneCooldown { get; set; }
Property Value
Camera
Gets or sets the camera SCP-079 is currently controlling.
Hcz079ContChamber
Camera if SCP-079's current camera cannot be detected.
public Camera Camera { get; set; }
Property Value
CameraPosition
Gets the Current Camera Position.
public Vector3 CameraPosition { get; }
Property Value
- Vector3
CanTransmit
Gets a value indicating whether SCP-079 can transmit its voice to a speaker.
public bool CanTransmit { get; }
Property Value
CurrentCameraSync
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Cameras.Scp079CurrentCameraSync.
public Scp079CurrentCameraSync CurrentCameraSync { get; }
Property Value
- Scp079CurrentCameraSync
DoorLockChanger
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079DoorLockChanger.
public Scp079DoorLockChanger DoorLockChanger { get; }
Property Value
- Scp079DoorLockChanger
DoorStateChanger
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079DoorAbility.
public Scp079DoorStateChanger DoorStateChanger { get; }
Property Value
- Scp079DoorStateChanger
Energy
Gets or sets SCP-079's energy.
public float Energy { get; set; }
Property Value
EnergyRegenerationSpeed
Gets SCP-079's energy regeneration speed.
public float EnergyRegenerationSpeed { get; }
Property Value
Experience
Gets or sets the amount of experience SCP-079 has.
public int Experience { get; set; }
Property Value
IsLost
Gets a value indicating whether SCP-079's signal is lost due to SCP-2176.
public bool IsLost { get; }
Property Value
Level
Gets or sets SCP-079's level.
public int Level { get; set; }
Property Value
LevelIndex
Gets or sets SCP-079's level index.
public int LevelIndex { get; set; }
Property Value
LockdownRoomAbility
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079LockdownRoomAbility.
public Scp079LockdownRoomAbility LockdownRoomAbility { get; }
Property Value
- Scp079LockdownRoomAbility
LockedDoor
Gets the doors SCP-079 has locked. Can be null.
public Door LockedDoor { get; }
Property Value
LostSignalHandler
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079LostSignalHandler.
public Scp079LostSignalHandler LostSignalHandler { get; }
Property Value
- Scp079LostSignalHandler
LostTime
Gets a value indicating how much more time SCP-079 will be lost.
public float LostTime { get; }
Property Value
MarkedRooms
Gets a list of rooms that have been marked by SCP-079. Marked rooms grant SCP-079 experience if a kill occurs in them.
public IEnumerable<Room> MarkedRooms { get; }
Property Value
MaxEnergy
Gets or sets SCP-079's max energy.
public float MaxEnergy { get; set; }
Property Value
NextLevelThreshold
Gets SCP-079's next level threshold.
public int NextLevelThreshold { get; }
Property Value
PingAbility
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Pinging.Scp079PingAbility.
public Scp079PingAbility PingAbility { get; }
Property Value
- Scp079PingAbility
RelativeExperience
Gets the relative experience.
public float RelativeExperience { get; }
Property Value
RemainingLockdownDuration
Gets the Remaining Lockdown Duration.
public float RemainingLockdownDuration { get; }
Property Value
RewardManager
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Rewards.Scp079RewardManager.
public Scp079RewardManager RewardManager { get; }
Property Value
- Scp079RewardManager
RollRotation
Gets the Roll Rotation of SCP-079.
public float RollRotation { get; }
Property Value
RoomLockdownCooldown
Gets or sets SCP-079's room lockdown cooldown.
public float RoomLockdownCooldown { get; set; }
Property Value
ScannerTracker
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079ScannerTracker.
public Scp079ScannerTracker ScannerTracker { get; }
Property Value
- Scp079ScannerTracker
ScannerZoneSelector
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079ScannerZoneSelector.
public Scp079ScannerZoneSelector ScannerZoneSelector { get; }
Property Value
- Scp079ScannerZoneSelector
Scp2176LostTime
Gets or sets the amount of time that SCP-2176 will disable SCP-079 for.
public float Scp2176LostTime { get; set; }
Property Value
Speaker
Gets the speaker SCP-079 is currently using. Can be null.
public Scp079Speaker Speaker { get; }
Property Value
- Scp079Speaker
SpeakerAbility
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079SpeakerAbility.
public Scp079SpeakerAbility SpeakerAbility { get; }
Property Value
- Scp079SpeakerAbility
SubroutineModule
Gets the SCP PlayerRoles.Subroutines.SubroutineManagerModule.
public SubroutineManagerModule SubroutineModule { get; }
Property Value
- SubroutineManagerModule
TeslaAbility
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079TeslaAbility.
public Scp079TeslaAbility TeslaAbility { get; }
Property Value
- Scp079TeslaAbility
TierManager
Gets SCP-079's PlayerRoles.PlayableScps.Scp079.Scp079TierManager.
public Scp079TierManager TierManager { get; }
Property Value
- Scp079TierManager
TurnedPlayers
Gets a list of players who will be turned away from SCP-079's scan.
public static HashSet<Player> TurnedPlayers { get; }
Property Value
Type
Gets the PlayerRoles.RoleTypeId of this Player.
public override RoleTypeId Type { get; }
Property Value
- RoleTypeId
VoiceModule
Gets the PlayerRoles.Voice.VoiceModuleBase of the role.
public VoiceModuleBase VoiceModule { get; }
Property Value
- VoiceModuleBase
Methods
ActivateTesla(bool)
Trigger the SCP-079's Tesla Gate Ability.
public void ActivateTesla(bool consumeEnergy = true)
Parameters
consumeEnergy
boolIndicates if the energy cost should be consume or not.
AddExperience(int, Scp079HudTranslation)
Grants SCP-079 experience.
public void AddExperience(int amount, Scp079HudTranslation reason = Scp079HudTranslation.ExpGainAdminCommand)
Parameters
amount
intThe amount to grant.
reason
Scp079HudTranslationThe reason to grant experience.
AddExperience(int, Scp079HudTranslation, RoleTypeId)
Grants SCP-079 experience.
public void AddExperience(int amount, Scp079HudTranslation reason, RoleTypeId subject)
Parameters
amount
intThe amount to grant.
reason
Scp079HudTranslationThe reason to grant experience.
subject
RoleTypeIdThe RoleType of the player that's causing it to happen.
BlackoutRoom(bool)
Blackout the current room.
public void BlackoutRoom(bool consumeEnergy = true)
Parameters
consumeEnergy
boolIndicates if the energy cost should be consumed or not.
BlackoutZone(bool)
Blackout the current zone.
public void BlackoutZone(bool consumeEnergy = true)
Parameters
consumeEnergy
boolIndicates if the energy cost should be consumed or not.
CancelLockdown()
Cancels the Actual Lockdown.
public void CancelLockdown()
ClearMarkedRooms()
Clears the list of marked SCP-079 rooms.
public void ClearMarkedRooms()
GetCost(Door, DoorAction)
Gets the cost to modify a door.
public int GetCost(Door door, DoorAction action)
Parameters
door
DoorThe door to get the cost to modify.
action
DoorActionThe action.
Returns
- int
The cost to modify the door.
GetSpawnChance(List<RoleTypeId>)
Gets the spawn chance of SCP-079.
public float GetSpawnChance(List<RoleTypeId> alreadySpawned)
Parameters
alreadySpawned
List<RoleTypeId>The List of Roles already spawned.
Returns
- float
The Spawn Chance.
GetSwitchCost(Camera)
Gets the cost to switch from the current Camera to the provided camera
.
public int GetSwitchCost(Camera camera)
Parameters
camera
CameraThe camera to get the cost to switch to.
Returns
- int
The cost to switch from the current camera to the new camera.
LockDoor(Door)
Locks the provided door
.
public bool LockDoor(Door door)
Parameters
door
DoorThe door to lock.
Returns
LockDoor(Door, bool)
Locks the provided door
.
public bool LockDoor(Door door, bool consumeEnergy = true)
Parameters
door
DoorThe door to lock.
consumeEnergy
boolIndicates if the energy cost should be consumed or not.
Returns
LockdownRoom()
Trigger the Lockdown Room Ability to lock the current room.
public void LockdownRoom()
LoseSignal(float)
Forces SCP-079's signal to be lost for the specified amount of time.
public void LoseSignal(float duration)
Parameters
duration
floatTime to lose SCP-079's signal.
MarkRoom(Room)
Marks a room as being modified by SCP-079 (granting experience if a kill happens in the room).
public void MarkRoom(Room room)
Parameters
room
RoomThe room to mark.
MarkRooms(IEnumerable<Room>)
Marks a array of rooms as being modified by SCP-079 (granting experience if a kill happens in the room).
public void MarkRooms(IEnumerable<Room> rooms)
Parameters
rooms
IEnumerable<Room>The Array of Rooms to mark.
Ping(Vector3, PingType, bool)
Trigger the Ping Ability to ping a RelativePositioning.RelativePosition.
public void Ping(Vector3 position, PingType pingType = PingType.Default, bool consumeEnergy = true)
Parameters
position
Vector3The SyncNormal Position.
pingType
PingTypeThe PingType to return.
consumeEnergy
boolIndicates if the energy cost should be consumed or not.
UnlockAllDoors()
Unlocks all doors that SCP-079 has locked.
public void UnlockAllDoors()
UnlockDoor()
Unlocks the LockedDoor.
public void UnlockDoor()
UnlockDoor(Door)
Unlocks the provided door
.
public void UnlockDoor(Door door)
Parameters
door
DoorThe door to unlock.
UnmarkRoom(Room)
Removes a marked room.
public void UnmarkRoom(Room room)
Parameters
room
RoomThe room to remove.