95 lines
1.7 KiB
Plaintext
95 lines
1.7 KiB
Plaintext
scriptName defaultEnableDisableLinkedRef extends ObjectReference
|
|
{
|
|
- This script enables or disables linked ref based on which type user defines in properties.
|
|
- Can be done OnTriggerEnter, or OnActivate, whichever happens first
|
|
- This script only fires once then disables itself (default), or can be told to go to a done state (usually for activators) with the ShouldDisable bool.
|
|
}
|
|
|
|
int property TriggerType auto
|
|
{
|
|
0 (default) - enables linked ref
|
|
1 - disables linked ref
|
|
}
|
|
|
|
bool Property PlayerOnly = TRUE auto
|
|
{
|
|
Does this only trigger for the player? (DEFAULT = TRUE)
|
|
}
|
|
|
|
bool Property Fade = FALSE auto
|
|
{
|
|
Fade in/out when enabled/disabled? (DEFAULT = FALSE)
|
|
}
|
|
|
|
bool Property ShouldDisable = TRUE auto
|
|
{
|
|
Should I disable once triggered/activated? (DEFAULT = TRUE)
|
|
}
|
|
|
|
float Property Delay = 0.0 auto
|
|
{
|
|
Delay before Enable/Disable (DEFAULT = 0.0)
|
|
}
|
|
|
|
ObjectReference myLinkedRef
|
|
|
|
auto State Waiting
|
|
|
|
|
|
Event onTriggerEnter(ObjectReference triggerRef)
|
|
|
|
if (triggerRef == Game.GetPlayer()) || (!PlayerOnly)
|
|
myLinkedRef = GetLinkedRef() as ObjectReference
|
|
|
|
utility.Wait(Delay)
|
|
|
|
if (TriggerType == 0)
|
|
myLinkedRef.enable(Fade)
|
|
elseif (TriggerType == 1)
|
|
myLinkedRef.disable(Fade)
|
|
endif
|
|
|
|
|
|
if (ShouldDisable == TRUE)
|
|
self.disable()
|
|
else
|
|
GoToState("Done")
|
|
endif
|
|
|
|
endif
|
|
|
|
endEvent
|
|
|
|
|
|
Event onActivate(ObjectReference triggerRef)
|
|
|
|
if (triggerRef == Game.GetPlayer()) || (!PlayerOnly)
|
|
myLinkedRef = GetLinkedRef() as ObjectReference
|
|
|
|
utility.Wait(Delay)
|
|
|
|
if (TriggerType == 0)
|
|
myLinkedRef.enable(Fade)
|
|
elseif (TriggerType == 1)
|
|
myLinkedRef.disable(Fade)
|
|
endif
|
|
|
|
|
|
if (ShouldDisable == TRUE)
|
|
self.disable()
|
|
else
|
|
GoToState("Done")
|
|
endif
|
|
|
|
endif
|
|
|
|
endEvent
|
|
|
|
|
|
endState
|
|
|
|
|
|
State Done
|
|
;Do Nothing
|
|
endState
|