ScriptName GA_00E_DuesterPressureDoor01SCPT Extends ObjectReference ;-- Variables --------------------------------------- ;-- Properties -------------------------------------- ObjectReference Property DoortoOpen Auto Int Property PlateState Auto ObjectReference Property XMarkerStateA Auto ObjectReference Property XMarkerStateB Auto ;-- Functions --------------------------------------- ; Skipped compiler generated GetState ; Skipped compiler generated GotoState Event OnTrigger(ObjectReference triggerRef) If PlateState == 0 XMarkerStateA.Disable(False) Self.DoorState() Debug.Notification("The plate is currently pressed!") PlateState = 1 EndIf EndEvent Event OnTriggerLeave(ObjectReference triggerRef) If PlateState == 1 XMarkerStateA.Enable(False) Self.DoorState() Debug.Notification("The plate is not pressed!") PlateState = 0 EndIf EndEvent Function DoorState() Int openState = DoortoOpen.GetOpenState() If XMarkerStateA.IsDisabled() && XMarkerStateB.IsDisabled() && openState == 3 || openState == 4 Debug.Notification("The door is open!") DoortoOpen.SetOpen(True) ElseIf XMarkerStateA.IsDisabled() && XMarkerStateB.IsEnabled() && openState == 1 || openState == 2 DoortoOpen.SetOpen(False) ElseIf XMarkerStateA.IsEnabled() && XMarkerStateB.IsDisabled() && openState == 1 || openState == 2 DoortoOpen.SetOpen(False) ElseIf XMarkerStateA.IsEnabled() && XMarkerStateB.IsEnabled() && openState == 1 || openState == 2 DoortoOpen.SetOpen(False) EndIf EndFunction