REDNODE / GAME API

SecuritySystemControllerPS

classscriptedClasssavable

extends DeviceSystemBaseControllerPS › MasterControllerPS › ScriptableDeviceComponentPS › SharedGameplayPS › DeviceComponentPS › GameComponentPS › PersistentState › IScriptable › ISerializable

Properties 29

NameTypeFlags
agentsRegistryref<AgentRegistry>scriptedprivatepersistentsavable
allowSecuritySystemToDisableItselfBoolscriptedprivate
attitudeChangeModeEShouldChangeAttitudescriptedprivatepersistent
attitudeGroupTweakDBIDscriptedprivatepersistent
blacklistarray<ref<BlacklistEntry>>scriptedprivatepersistentsavable
blacklistDelayIDDelayIDscriptedprivatepersistentsavable
blacklistDelayValidBoolscriptedprivatepersistentsavable
currentReprimandIDInt32scriptedprivatepersistentsavable
deescalationEventIDDelayIDscriptedprivatepersistentsavable
delayIDValidBoolscriptedprivatepersistentsavable
entitiesRemainingAtGatearray<EntityID>scriptedprivatepersistentsavable
hideAreasOnMinimapBoolscriptedprivatepersistent
inputsReceivedInt32scriptedprivatepersistentsavable
isUnderStrictQuestControlBoolscriptedprivatepersistent
latestOutputEngineTimeFloatscriptedprivatepersistentsavable
level_0array<SecurityAccessLevelEntry>scriptedprivate
level_1array<SecurityAccessLevelEntry>scriptedprivate
level_2array<SecurityAccessLevelEntry>scriptedprivate
level_3array<SecurityAccessLevelEntry>scriptedprivate
level_4array<SecurityAccessLevelEntry>scriptedprivate
maxGlobalWarningsCountInt32scriptedprivate
outputsSendInt32scriptedprivatepersistentsavable
performAutomaticResetAfterTimescriptedprivate
protectedEntityIDsarray<EntityID>scriptedprivatepersistentsavable
restartDurationInt32scriptedprivate
securitySystemref<SecuritySystemControllerPS>scriptedprivate
securitySystemStateESecuritySystemStatescriptedprivatepersistent
suppressAbilityToModifyAttitudeBoolscriptedprivate
updateIntervalFloatscriptedprivate

Methods 179

private final const func ActionFullSystemRestart() -> ref<FullSystemRestart>scripted
public final const func ActionSecuritySystemBreachResponse(notificationEvent: ref<SecuritySystemInput>) -> ref<SecuritySystemOutput>scripted
protected final const func ActionSecuritySystemStatus() -> ref<SecuritySystemStatus>scripted
protected func ActionThumbnailUI() -> ref<ThumbnailUI>scripted
public final func AddAccessLevelData(entryLevel: ESecurityAccessLevel, opt password: CName, opt keycard: TweakDBID)scripted
private final func AddAccessLevelEntry(level: script_ref<array<SecurityAccessLevelEntry>>, opt password: CName, opt keycard: TweakDBID)scripted
private final func AddAgentRecord(agent: DeviceLink, connectedAreas: script_ref<array<ref<SecurityAreaControllerPS>>>, requestLatestOutput: Bool)scripted
public final const func AuthorizeUser(user: EntityID, opt password: CName) -> Boolscripted
public final const func AuthorizeUser(user: EntityID, level: ESecurityAccessLevel)scripted
private final func BlacklistEntityID(entityID: EntityID, reason: BlacklistReason)scripted
private final func BlacklistEntityID(go: ref<GameObject>, reason: BlacklistReason)scripted
private final func CancelAutomaticDeescalationEvent()scripted
private final func CleanSecuritySystemMemory()scripted
private final func CompileSecurityAgentRegistry()scripted
private final func CreateRegistry()scripted
public final const func Debug_GetPlayerBlacklistReason() -> BlacklistReasonscripted
public final const func Debug_GetPlayerWarningCount() -> Int32scripted
public final const func Debug_GetReprimandID() -> Int32scripted
public final const func DebugGetInputsCount() -> Int32scripted
public final const func DebugGetOutputsCount() -> Int32scripted
private final const func Deescalate(evt: ref<SecuritySystemInput>)scripted
public final const func DetermineSecurityAreaTypeForEntityID(entityID: EntityID) -> ESecurityAreaTypescripted
public final const func DetermineSecuritySystemState(evt: ref<SecuritySystemInput>, opt isSimulation: Bool) -> ESecuritySystemStatescripted
private final func DisableSecuritySystem(wasScheduled: Bool)scripted
private final func ExtractNPCIDsFromQuestNotification(evt: ref<QuestSecuritySystemInput>) -> array<EntityID>scripted
public func GetActions(out actions: array<ref<DeviceAction>>, context: GetActionsContext) -> Boolscripted
protected final const func GetAgentAreas(agentID: PersistentID) -> array<ref<SecurityAreaControllerPS>>scripted
public final const func GetAgentRegistry() -> ref<AgentRegistry>scripted
private final const func GetAttitudeSystem() -> ref<AttitudeSystem>scripted
private final const func GetAttitudeTowards(otherGroup: CName) -> EAIAttitudescripted
private final const func GetAttitudeTowards(target: EntityID) -> EAIAttitudescripted
private final const func GetAttitudeTowards(target: ref<GameObject>) -> EAIAttitudescripted
protected func GetBackgroundTextureTweakDBID() -> TweakDBIDscripted
public const func GetDebugTags() -> Stringscripted
protected func GetDeviceIconTweakDBID() -> TweakDBIDscripted
public const func GetDeviceStatusAction() -> ref<SecuritySystemStatus>scripted
private final const func GetEntityBlacklistIndex(entityID: EntityID) -> Int32scripted
public final const func GetMostDangerousSecurityAreaForEntityID(entityID: EntityID) -> ref<SecurityAreaControllerPS>scripted
public final const func GetMostDangerousSecurityAreaForEntityID(go: ref<GameObject>) -> ref<SecurityAreaControllerPS>scripted
private final const func GetOverlappingAreas(bunch1: script_ref<array<ref<SecurityAreaControllerPS>>>, bunch2: script_ref<array<ref<SecurityAreaControllerPS>>>) -> array<ref<SecurityAreaControllerPS>>scripted
private final const func GetOverlappingAreas(input: ref<SecuritySystemInput>) -> array<ref<SecurityAreaControllerPS>>scripted
private final const func GetPS(agent: script_ref<Agent>) -> ref<DeviceComponentPS>scripted
public final const func GetReprimandPerformer(opt target: EntityID) -> ref<GameObject>scripted
public final const func GetReprimandReceiver(agentID: PersistentID) -> EntityIDscripted
public final const func GetSecurityAccessData(level: ESecurityAccessLevel) -> array<SecurityAccessLevelEntry>scripted
public const func GetSecurityAreas(opt includeInactive: Bool, opt acquireOnlyDirectlyConnected: Bool) -> array<ref<SecurityAreaControllerPS>>scripted
public final const func GetSecurityBlacklist() -> array<ref<BlacklistEntry>>scripted
private final func GetSecurityDataForArea(area: ref<SecurityAreaControllerPS>) -> SecurityAreaDatascripted
public final const func GetSecurityState() -> ESecuritySystemStatescripted
public final const func GetSecuritySystemAttitudeGroupName() -> CNamescripted
public final const func GetSensors() -> array<ref<SensorDeviceControllerPS>>scripted
public final const func GetTurrets(area: ref<SecurityAreaControllerPS>, turrets: script_ref<array<ref<SecurityTurretControllerPS>>>) -> Boolscripted
public const func GetUserAuthorizationLevel(user: EntityID) -> ESecurityAccessLevelscripted
public final const func GetValidRecipients(input: ref<SecuritySystemInput>) -> array<SecuritySystemOutputData>scripted
private final func HandleAreaBeingDisabled(area: ref<SecurityAreaControllerPS>)scripted
private final func HandleAreaBeingEnabled(area: ref<SecurityAreaControllerPS>)scripted
private final func HandleSecuritySystemInput(evt: ref<SecuritySystemInput>)scripted
protected final func HandleSecuritySystemInputByTask(inputEvent: ref<SecuritySystemInput>)scripted
protected final func HandleSecuritySystemInputTask(data: ref<ScriptTaskData>)scripted
public final const func HasEntityBeenSpottedTooManyTimes(reporter: PersistentID, target: EntityID) -> Boolscripted
public final const func HasEntityBeenSpottedTooManyTimes(reporter: PersistentID, target: ref<GameObject>, notificationType: ESecurityNotificationType) -> Boolscripted
public final const func HasSupport(agentID: PersistentID) -> Boolscripted
public final const func HasSurpassedGlobalWarningsCount(target: EntityID) -> Boolscripted
protected func Initialize()scripted
private final func InitiateAgentRegistry()scripted
private final func InitiateAutomaticDeescalationEvent(evt: ref<SecuritySystemInput>)scripted
public final const func IsEntityBlacklisted(entityID: EntityID) -> Boolscripted
public final const func IsEntityBlacklisted(gameObject: ref<GameObject>) -> Boolscripted
public final const func IsEntityBlacklistedForAtLeast(entityID: EntityID, reason: BlacklistReason) -> Boolscripted
public final const func IsEntityBlacklistedForAtLeast(go: ref<GameObject>, reason: BlacklistReason) -> Boolscripted
protected final const func IsEntityBlacklistedForSpecificReason(entityID: EntityID, reason: BlacklistReason) -> Boolscripted
private final func IsEntityInsideAnyArea(entityId: EntityID) -> Boolscripted
public final const func IsHidden() -> Boolscripted
private final const func IsNotificationValid(evt: ref<SecuritySystemInput>) -> Boolscripted
private final const func IsPlayersEntityID(entityID: EntityID) -> Boolscripted
public final const func IsPoliceSecuritySystem() -> Boolscripted
private final const func IsRefreshRequired() -> Boolscripted
private final const func IsRegistryReady() -> Boolscripted
public final const func IsReprimandOngoing() -> Boolscripted
public final const func IsReprimandOngoingAgainst(suspect: EntityID) -> Boolscripted
public final const func IsSystemAlerted() -> Boolquestscripted
private final const func IsSystemClean() -> Boolscripted
public final const func IsSystemInCombat() -> Boolquestscripted
public final const func IsSystemSafe() -> Boolquestscripted
private final const func IsSystemSafeOrUninitialized() -> Boolscripted
public final const func IsTargetTresspassingMyZone(suspect: EntityID, reporter: EntityID) -> Boolscripted
public final const func IsUnderStrictQuestControl() -> Boolscripted
public final const func IsUserAuthorized(user: EntityID, level: ESecurityAccessLevel) -> Boolscripted
public final const func IsUserAuthorized(user: ref<GameObject>, level: ESecurityAccessLevel) -> Boolscripted
private final const func IsUserAuthorizedViaCard(user: EntityID, level: ESecurityAccessLevel) -> Boolscripted
private final const func IsUserAuthorizedViaPassword(password: CName, level: ESecurityAccessLevel) -> Boolscripted
public final const func IsUserInsideSystem(userToBeChecked: EntityID) -> Boolscripted
public final const func IsUserInsideSystem(userToBeChecked: EntityID, out highestSecurityAccessLevel: ESecurityAccessLevel) -> Boolscripted
public final const func IsUserInsideSystem(userToBeChecked: EntityID, out highestSecurityAccessLevel: ESecurityAccessLevel, out highestThreat: ESecurityAreaType) -> Boolscripted
protected final func NotifyAboutAttitudeChange()scripted
public func OnActionForceResetDevice(evt: ref<ActionForceResetDevice>) -> EntityNotificationTypescripted
protected final func OnActionTakeOverSecuritySystem(evt: ref<TakeOverSecuritySystem>) -> EntityNotificationTypescripted
public func OnAddUserEvent(evt: ref<AddUserEvent>) -> EntityNotificationTypescripted
private final func OnAgentSpawned(evt: ref<SecurityAgentSpawnedEvent>) -> EntityNotificationTypescripted
public final func OnAutomaticDeescalationEvent(evt: ref<AutomaticDeescalationEvent>) -> EntityNotificationTypescripted
private final func OnBlacklistPeriodEnded(evt: ref<BlacklistPeriodEnded>) -> EntityNotificationTypescripted
private final func OnDeescalation(evt: ref<DeescalationEvent>) -> EntityNotificationTypescripted
public func OnFullSystemRestart(evt: ref<FullSystemRestart>) -> EntityNotificationTypescripted
protected cb func OnInstantiated() -> Boolscripted
protected final func OnMadnessDebuff(evt: ref<MadnessDebuff>) -> EntityNotificationTypescripted
public func OnMaraudersMapDeviceDebug(sink: ref<MaraudersMapDevicesSink>)scripted
protected final func OnPlayerSpotted(evt: ref<PlayerSpotted>) -> EntityNotificationTypescripted
public final func OnPSInitializeEvent(evt: ref<PSInitializeEvent>) -> EntityNotificationTypescripted
public final func OnPSInstantiateEvent(evt: ref<PSInstantiateEvent>) -> EntityNotificationTypescripted
protected final func OnQuestAuthorizePlayer(evt: ref<AuthorizePlayerInSecuritySystem>) -> EntityNotificationTypescripted
protected final func OnQuestBlackListPlayer(evt: ref<BlacklistPlayer>) -> EntityNotificationTypescripted
protected final func OnQuestChangeSecuritySystemAttitudeGroup(evt: ref<QuestChangeSecuritySystemAttitudeGroup>) -> EntityNotificationTypescripted
protected final func OnQuestCombatActionNotification(evt: ref<QuestCombatActionNotification>) -> EntityNotificationTypescripted
protected final func OnQuestExclusiveQuestControl(evt: ref<SuppressSecuritySystemStateChange>) -> EntityNotificationTypescripted
protected func OnQuestForceON(evt: ref<QuestForceON>) -> EntityNotificationTypescripted
protected final func OnQuestIllegalActionNotification(evt: ref<QuestIllegalActionNotification>) -> EntityNotificationTypescripted
private final func OnRemoveFromBlacklist(evt: ref<RemoveFromBlacklistEvent>) -> EntityNotificationTypescripted
protected final func OnRevokeAuthorization(evt: ref<RevokeAuthorization>) -> EntityNotificationTypescripted
public func OnSecurityAreaCrossingPerimeter(evt: ref<SecurityAreaCrossingPerimeter>) -> EntityNotificationTypescripted
private final func OnSecurityAreaTypeChangedNotification(evt: ref<SecurityAreaTypeChangedNotification>) -> EntityNotificationTypescripted
public final func OnSecuritySystemInput(evt: ref<SecuritySystemInput>) -> EntityNotificationTypescripted
protected final func OnSetSecuritySystemState(evt: ref<SetSecuritySystemState>) -> EntityNotificationTypescripted
protected final func OnSuppressSecuritySystemReaction(evt: ref<SuppressSecuritySystemReaction>) -> EntityNotificationTypescripted
private final const func PerformAuthorizationAttemptUsingKeycard(user: EntityID) -> ESecurityAccessLevelscripted
private final const func PerformAuthorizationAttemptUsingPassword(user: EntityID, password: CName) -> ESecurityAccessLevelscripted
protected final const func ProcessBreachNotificationWithRecipientsList(addresseeList: script_ref<array<EntityID>>, securitySystemInput: ref<SecuritySystemInput>)scripted
private final const func ProcessFriendly(input: ref<SecuritySystemInput>) -> Boolscripted
private final const func ProcessHostile() -> Boolscripted
private final const func ProcessInput(input: ref<SecuritySystemInput>) -> Boolscripted
private final const func ProcessNeutral(input: ref<SecuritySystemInput>) -> Boolscripted
private final func ProduceOutput(input: ref<SecuritySystemInput>, securityStateChanged: Bool)scripted
public final const func PropagateEventToAgents(evt: ref<Event>)scripted
private final const func ProvideAccessDataLevel_0() -> array<SecurityAccessLevelEntry>scripted
private final const func ProvideAccessDataLevel_1() -> array<SecurityAccessLevelEntry>scripted
private final const func ProvideAccessDataLevel_2() -> array<SecurityAccessLevelEntry>scripted
private final const func ProvideAccessDataLevel_3() -> array<SecurityAccessLevelEntry>scripted
private final const func ProvideAccessDataLevel_4() -> array<SecurityAccessLevelEntry>scripted
public final func QuestAuthorizePlayer(evt: ref<AuthorizePlayerInSecuritySystem>)scripted
public final func QuestBlacklistPlayer(evt: ref<BlacklistPlayer>)scripted
public final func QuestChangeSecuritySystemAttitudeGroup(evt: ref<QuestChangeSecuritySystemAttitudeGroup>)scripted
public final func QuestChangeSecuritySystemState(evt: ref<SetSecuritySystemState>)scripted
public final func QuestCombatActionNotification(evt: ref<QuestCombatActionNotification>)scripted
public final func QuestIllegalActionNotification(evt: ref<QuestIllegalActionNotification>)scripted
public final func QuestSuppressSecuritySystem(evt: ref<SuppressSecuritySystemStateChange>)scripted
private final const func ReduceLevelByOne(level: ESecurityAccessLevel) -> ESecurityAccessLevelscripted
private final func ReleaseAllReprimands()scripted
private final func ReleaseCurrentPerformerFromReprimand(instructions: EReprimandInstructions, target: EntityID)scripted
private final const func RemoveFromBlacklist(entityID: EntityID)scripted
public final const func RemoveFromBlacklist(go: ref<GameObject>)scripted
private final func RemoveIndexFromBlacklist(index: Int32)scripted
protected func RemoveUser(user: EntityID) -> Boolscripted
public final const func ReportPotentialSituation(input: ref<SecuritySystemInput>) -> Boolscripted
public final const func RequestLatestOutput(id: PersistentID)scripted
private final func RequestTargetsAssessment(opt providedAgents: array<Agent>, target: ref<GameObject>)scripted
private final func ResetBlacklistWipeCountdown(entityID: EntityID)scripted
private final func ResolveNotificationImmediately(evt: ref<SecuritySystemInput>)scripted
private final const func ResolvePotentialDeescalation() -> Boolscripted
private final func ResolveReprimand(evt: ref<SecuritySystemInput>, determinedState: ESecuritySystemState) -> Boolscripted
private final const func ResolveTransitionFromAlerted(evt: ref<SecuritySystemInput>, opt isSimulation: Bool) -> ESecuritySystemStatescripted
private final const func ResolveTransitionFromCombat(evt: ref<SecuritySystemInput>, opt isSimulation: Bool) -> ESecuritySystemStatescripted
private final const func ResolveTransitionFromSafe(evt: ref<SecuritySystemInput>, opt isSimulation: Bool) -> ESecuritySystemStatescripted
private final func RevokeProtection(entityID: EntityID)scripted
private final const func SecuritySystemLog(evt: ref<ReprimandUpdate>)scripted
private final const func SecuritySystemLog(message: script_ref<String>)scripted
private final func SendReprimandEvent(evt: ref<ReprimandUpdate>)scripted
private final const func SendResponseToCustomRecipients(response: ref<SecuritySystemOutput>)scripted
protected final func SendSupportEvents(opt modifiedAgents: array<Agent>, forceRevokeSupport: Bool)scripted
private final func SetReprimandPerformer(evt: ref<SecuritySystemInput>, instructions: EReprimandInstructions)scripted
private final func SetSecurityState(newState: ESecuritySystemState, opt input: ref<SecuritySystemInput>, opt isComingFromQuest: Bool)scripted
private final func SetSecurityStateAndTriggerResponse(newState: ESecuritySystemState, evt: ref<SecuritySystemInput>, opt isComingFromQuest: Bool) -> Boolscripted
private final func SetSecuritySystemAttitude(desiredAttitude: EAIAttitude, input: ref<SecuritySystemInput>, opt isComingFromQuest: Bool)scripted
protected final func SetSecuritySystemAttitudeGroup(newAttitude: TweakDBID)scripted
public final const func ShouldReactToTarget(suspect: EntityID, reporter: EntityID) -> Boolscripted
private final func ShouldSecuritySystemDisableItself() -> Boolscripted
private final func TriggerBlacklistWipeCountdown(entityID: EntityID)scripted
public final func TryReleaseFromReprimand(entityID: EntityID)scripted
private final func TryUpdateBlackboardAreaDataFor(entityId: EntityID)scripted
private final func UpdateBlackboardAreaDataForPlayer()scripted
private final func UpdateSecurityZoneDataBlackboard(securityAreaData: SecurityAreaData)scripted