Alternative Multi-Stop Elevator

From Valve Developer Community
Jump to navigation Jump to search
Broom icon.png
This article or section needs to be cleaned up to conform to a higher standard of quality because:
Logic isn't fully clear at times. If possible, the article should be simplified for a general 3+ floor elevator design.
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.
This tutorial is based from a six-floor elevator. However, you can any number of floors you wish with some minor changes to the entities.

Theory

Initial Start

When the player first enters the elevator, they will press a button representing a floor. Lets say Elevator_M6_Button_&i (Floor 6) was pressed (Pressing Elevator_F6_Button_&i refer to the same set of commands), it would first trigger the F6_ButtonFunctions_&i commands to trigger Close_AllDoors_&i, F6_TestRelay_&i, LockButtons_&i. Also calling Elevator_&i and Elevator_Weight_&i to SetPosition to 5 (Floor 6 is 5) (func_movelinear always start with 0). As well as calling the Elevator_Chime_&i to PlaySound.

Closing All Doors

Close_AllDoors_&i actually closes one door, but calls on the CompareAll_&i to do its own work of finding the open doors thus preventing refiring all of the doors to animate unnecessarily (or glitch). When CompareAll_&i is triggered, it causes all of logic_compare enities named F1_Compare_&i through F6_Compare_&i to force their comparisons to be made.

F6_TestRelay_&i will trigger the Test_Relay_All_&i(which forces the value of zero and tests it for branches F1_Branch_Button_&i through F6_Branch_Button_&i) and retrigger F6_Branch_Button_&i to have its value set at one and tested.

LockButtons_&i Locks all of the buttons inside and outside of the elevator for the duration of the cycle (prevents the elevator from changing floors while running)

When Elevator_&i gets to the sixth floor, it passes over the F6_Trigger_&i (Passe over others as well) .When the elevator is touching F6_Trigger_&i , it sets the value of 1 and tests it on F6_Branch_Trigger_&i, when it is not touching it sets F6_Branch_Trigger_&i to 0 and tests it. (This also fires other commands but they are not critical to operation).

The F6_Branch_Listener_&i Listens to find if both F6_Branch_Button_&i and F6_Branch_Trigger_&i set to 1. If that is the case it fires F6_Timer_&i to start. After the duration of 3 seconds have passed, it triggers UnlockButtons_&i, 1/6 of a second later it locks both Elevator_F6_Button_&i and Elevator_M6_Button_&i, 5/6 of a second later it disables F6_Timer_&i, and last at 1 5/6 of a second later, Elevator_M_Door_&i is opened and F6_DoorBranch_&i value is set at 1 and tested.

When the'F6_DoorBranch_&i conditions are met ,It triggers F6_DoorTimerOpen_&i to be enabled and fires the timer 1/6 of a second later. When the time is up it fires Elevator_OpenDoor_F6_&i to tigger. Then Elevator_F6_Door_&i is triggered to open, Elevator_Sound_F6_Door_&i PlaySound, and F6_SetAllCompare_&i is triggered setting all of the logic_compare entities F1_Compare_&i Through F6_Compare_&i to 6. When the condition is met, F6_Compare_&i will trigger F6_DoorBranch_&i set the value to 0 and test it.

Final Result

Brush Work Construction

This elevator's surrounding construction follows similar to the MultiStop elevator tutorial, however, the elevator itself is constructed from a func_movelinear. Therefore, you will not need any path_track. This allows the elevator to stop exactly at each point rather than slightly above or below the intended destination. However this method can be time-consuming to make and can be more confusing as well. A majority of the entities used here are for accurate door control, which would make the design fairly worthless for anything less than 3 floors.

What's needed for a six floor elevator:

7 ambient_generic(s)

12 func_button(s)

16 func_door(s)(or 7 prop_dynamic(s)

1 func_movelinear

1 logic_auto

18 logic_branch(es)

6 logic_branch_listener(s)

6 logic_compare(s)

35 logic_relay(s)

18 logic_timer(s)

6 trigger_multiple(s)

Brush Entities

This would be the entity that will move the player to his or her desired floor.

ClassInfo

Class
func_movelinear

Keyvalues

Property Name Value
Name Elevator_&i
Move Direction (Pitch Yaw Roll) -90 0 0
Move Distance 160
Block Damage 2000
Sound played when the brush starts moving (Pick A Sound)
Sound played when the brush stops moving (Pick A Sound)

Outputs

NONE


This entity would be placed on a wall outside of the elevator.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_F1_Button_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F1_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed on a wall outside of the elevator.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_F2_Button_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F2_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed on a wall outside of the elevator.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_F3_Button_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F3_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed on a wall outside of the elevator.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_F4_Button_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F4_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed on a wall outside of the elevator.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_F5_Button_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F5_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed on a wall outside of the elevator.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_F6_Button_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F6_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed inside of the elevator and will move with it.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_M1_Button_&i
Parent Elevator_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F1_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed inside of the elevator and will move with it.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_M2_Button_&i
Parent Elevator_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F2_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed inside of the elevator and will move with it.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_M3_Button_&i
Parent Elevator_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F3_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed inside of the elevator and will move with it.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_M4_Button_&i
Parent Elevator_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F4_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed inside of the elevator and will move with it.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_M5_Button_&i
Parent Elevator_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F5_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This entity would be placed inside of the elevator and will move with it.

ClassInfo

Class
func_button

Keyvalues

Property Name Value
Name Elevator_M6_Button_&i
Parent Elevator_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnPressed F6_ButtonFunctions_&i Trigger 0.00

Flags

☑ Don't move

☑ Use Activates


This is used for detecting the elevator as it passes over. It is mainly used for door control, though it can be used for indicator lights.

Note.pngNote:These must be carefully placed to allow the doors to function properly

ClassInfo

Class
trigger_multiple

Keyvalues

Property Name Value
Name F1_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEndTouch F1_Branch_Trigger_&i SetValueTest 0 0.00
Io11.png OnStartTouch F1_Branch_Trigger_&i SetValueTest 1 0.00
Io11.png OnEndTouch num1_&i Disable 0.00
Io11.png OnStartTouch num1_&i Enable 0.00
Io11.png OnEndTouch F1_Light_&i Color 0 255 0 0.00
Io11.png OnStartTouch F1_Light_&i Color 255 0 0 0.00

Flags

☑ Everything (not including physics debris)


This is used for detecting the elevator as it passes over. It is mainly used for door control, though it can be used for indicator lights.

Note.pngNote:These must be carefully Placed to allow the doors to function properly

ClassInfo

Class
trigger_multiple

Keyvalues

Property Name Value
Name F2_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEndTouch F2_Branch_Trigger_&i SetValueTest 0 0.00
Io11.png OnStartTouch F2_Branch_Trigger_&i SetValueTest 1 0.00
Io11.png OnEndTouch num2_&i Disable 0.00
Io11.png OnStartTouch num2_&i Enable 0.00
Io11.png OnEndTouch F2_Light_&i Color 0 255 0 0.00
Io11.png OnStartTouch F2_Light_&i Color 255 0 0 0.00

Flags

☑ Everything (not including physics debris)


This is used for detecting the elevator as it passes over. It is mainly used for door control, though it can be used for indicator lights.

Note.pngNote:These must be carefully Placed to allow the doors to function properly

ClassInfo

Class
trigger_multiple

Keyvalues

Property Name Value
Name F3_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEndTouch F3_Branch_Trigger_&i SetValueTest 0 0.00
Io11.png OnStartTouch F3_Branch_Trigger_&i SetValueTest 1 0.00
Io11.png OnEndTouch num3_&i Disable 0.00
Io11.png OnStartTouch num3_&i Enable 0.00
Io11.png OnEndTouch F3_Light_&i Color 0 255 0 0.00
Io11.png OnStartTouch F3_Light_&i Color 255 0 0 0.00

Flags

☑ Everything (not including physics debris)


This is used for detecting the elevator as it passes over. It is mainly used for door control, though it can be used for indicator lights.

Note.pngNote:These must be carefully Placed to allow the doors to function properly

ClassInfo

Class
trigger_multiple

Keyvalues

Property Name Value
Name F4_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEndTouch F4_Branch_Trigger_&i SetValueTest 0 0.00
Io11.png OnStartTouch F4_Branch_Trigger_&i SetValueTest 1 0.00
Io11.png OnEndTouch num4_&i Disable 0.00
Io11.png OnStartTouch num4_&i Enable 0.00
Io11.png OnEndTouch F4_Light_&i Color 0 255 0 0.00
Io11.png OnStartTouch F4_Light_&i Color 255 0 0 0.00

Flags

☑ Everything (not including physics debris)


This is used for detecting the elevator as it passes over. It is mainly used for door control, though it can be used for indicator lights.

Note.pngNote:These must be carefully Placed to allow the doors to function properly

ClassInfo

Class
trigger_multiple

Keyvalues

Property Name Value
Name F5_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEndTouch F5_Branch_Trigger_&i SetValueTest 0 0.00
Io11.png OnStartTouch F5_Branch_Trigger_&i SetValueTest 1 0.00
Io11.png OnEndTouch num5_&i Disable 0.00
Io11.png OnStartTouch num5_&i Enable 0.00
Io11.png OnEndTouch F5_Light_&i Color 0 255 0 0.00
Io11.png OnStartTouch F5_Light_&i Color 255 0 0 0.00

Flags

☑ Everything (not including physics debris)


This is used for detecting the elevator as it passes over. It is mainly used for door control, though it can be used for indicator lights.

Note.pngNote:These must be carefully Placed to allow the doors to function properly

ClassInfo

Class
trigger_multiple

Keyvalues

Property Name Value
Name F6_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEndTouch F6_Branch_Trigger_&i SetValueTest 0 0.00
Io11.png OnStartTouch F6_Branch_Trigger_&i SetValueTest 1 0.00
Io11.png OnEndTouch num6_&i Disable 0.00
Io11.png OnStartTouch num6_&i Enable 0.00
Io11.png OnEndTouch F6_Light_&i Color 0 255 0 0.00
Io11.png OnStartTouch F6_Light_&i Color 255 0 0 0.00

Flags

☑ Everything (not including physics debris)

Functional Relays

FunctionalEnts.jpg

These Functional relays were created to reduce the number of commands when operating the elevator, more for organizational purposes. For example, rather than rewriting 6 or 12 commands in roughly 24 diferent places, we can write one command for the same 24 places.

This locks the buttons to prevent players from retriggering while the elevator is operating.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name LockButtons_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F1_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_F2_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_F3_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_F4_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_F5_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_F6_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_M1_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_M2_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_M3_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_M4_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_M5_Button_&i Lock 0.00
Io11.png OnTrigger Elevator_M6_Button_&i Lock 0.00

This unlocks when the elevator is done with the full cycle.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name UnockButtons_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F1_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_F2_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_F3_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_F4_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_F5_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_F6_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_M1_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_M2_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_M3_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_M4_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_M5_Button_&i Unock 0.00
Io11.png OnTrigger Elevator_M6_Button_&i Unock 0.00

This forces all of the logic_compare entities to compare the currently set values to affect the doors on all floors.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name CompareAll_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i Compare 0.00
Io11.png OnTrigger F2_Compare_&i Compare 0.00
Io11.png OnTrigger F3_Compare_&i Compare 0.00
Io11.png OnTrigger F4_Compare_&i Compare 0.00
Io11.png OnTrigger F5_Compare_&i Compare 0.00
Io11.png OnTrigger F6_Compare_&i Compare 0.00

This is to force close all of the doors when the elevator starts its cycle. (Utilizing the CompareAll_&i relay)

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Close_AllDoors_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger CompareAll_&i Trigger 0.00
Io11.png OnTrigger Elevator_M_Door_&i SetAnimation close 0.00

Used for setting all of the values to false (0) the the elevator has a destination change.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Test_Relay_All_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Branch_Button_&i SetValueTest 0 0.00
Io11.png OnTrigger F2_Branch_Button_&i SetValueTest 0 0.00
Io11.png OnTrigger F3_Branch_Button_&i SetValueTest 0 0.00
Io11.png OnTrigger F4_Branch_Button_&i SetValueTest 0 0.00
Io11.png OnTrigger F5_Branch_Button_&i SetValueTest 0 0.00
Io11.png OnTrigger F6_Branch_Button_&i SetValueTest 0 0.00

Used to open the first-floor door when the map starts.

ClassInfo

Class
logic_auto

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnMapSpawn Elevator_M_Door_&i SetAnimation open 0.00
Io11.png OnMapSpawn F1_DoorBranch_&i SetValueTest 1 0.00

Floor Specific Functions

FloorSpacificEnts close 1.jpg
FloorSpacificEnts close 2.jpg
FloorSpacificEnts close 3.jpg
Note.pngNote:For every floor you intend to add, all of these entities need to be present in each additional floor for the elevator to operate correctly.

Floor 1

This triggers the cycle instructions to get to the particular floor (Triggered by one of the two elevator buttons).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F1_ButtonFunctions_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Close_AllDoors_&i Trigger 0.00
Io11.png OnTrigger F1_TestRelay_&i Trigger 0.00
Io11.png OnTrigger LockButtons_&i Trigger 0.00
Io11.png OnTrigger Elevator_Chime_&i PlaySound 0.00
Io11.png OnTrigger Elevator_&i SetPosition 0 2.00
Io11.png OnTrigger Elevator_Weight_&i SetPosition 0 2.00

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F1_TestRelay_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Branch_Button_&i SetValueTest 1 0.01
Io11.png OnTrigger Test_Relay_All_&i Trigger 0 0.00

This branch will only have a True value (1) if the corresponding button has been pressed (ex. if "Elevator_F1_Button_&i" was pressed, F1_Branch_Button_&i would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F1_Branch_Button_&i
Initial value 0

Outputs

NONE


This branch will only have a True value (1) if the corresponding trigger has been tripped (ex. if "F1_Trigger_&i" was pressed, "F1_Branch_Trigger_&i" would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F1_Branch_Trigger_&i
Initial value 0

Outputs

NONE


This listens to the values of both branches on the same floor before triggering the timer control. (This is only set to look for the True (1) value of the branches)

ClassInfo

Class
logic_branch_listener

Keyvalues

Property Name Value
Name F1_Branch_Listener_&i
Logic Branch 01 F1_Branch_Button_&i
Logic Branch 02 F1_Branch_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnAllFalse F1_Timer_&i Disable 0.00
Io11.png OnAllTrue F1_Timer_&i Enable 0.00
Io11.png OnMixed F1_Timer_&i Disable 0.00
Io11.png OnAllTrue F1_Timer_&i FireTimer 0.10

This is used to prevent retriggering the doors, and only activates the following commands after a delay of 3 seconds.

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F1_Timer_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer UnlockButtons_&i Trigger 0.00
Io11.png OnTimer Elevator_F1_Button_&i Lock 0.10
Io11.png OnTimer Elevator_M1_Button_&i Lock 0.10
Io11.png OnTimer F1_Timer_&i Disable 0.50
Io11.png OnTimer Elevator_M_Door_&i SetAnimation open 1.50
Io11.png OnTimer F1_DoorBranch_&i SetValueTest 1 1.50

A set of instructions to open the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_OpenDoor_F1_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F1_Door_&i SetAnimation open 0.00
Io11.png OnTrigger Elevator_Sound_F1_Door_&i PlaySound 0.00
Io11.png OnTrigger F1_SetAllCompare_&i Trigger 0.00

A set of instructions to close the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_CloseDoor_F1_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F1_Door_&i SetAnimation close 0.00
Io11.png OnTrigger Elevator_Sound_F1_Door_&i PlaySound 0.00

Timer delay for opening the door on the specified floor (prevents glitching the animations).

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F1_DoorTimerOpen_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_OpenDoor_F1_&i Trigger 0.00

---

Timer delay for closing the door on the specified floor (prevents glitching the animations).

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F1_DoorTimerClose_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_CloseDoor_F1_&i Trigger 0.00

This controls when the door should be open or closed.

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F1_DoorBranch_&i
Initial value 0

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnFalse F1_DoorTimerClose_&i Enable 0.00
Io11.png OnFalse F1_DoorTimerOpen_&i Disable 0.00
Io11.png OnTrue F1_DoorTimerOpen_&i Enable 0.00
Io11.png OnTrue F1_DoorTimerClose_&i Disable 0.00
Io11.png OnFalse F1_DoorTimerClose_&i FireTimer 0.10
Io11.png OnTrue F1_DoorTimerOpen_&i FireTimer 0.10
Io11.png OnFalse F1_DoorTimerClose_&i Disable 1.00
Io11.png OnTrue F1_DoorTimerOpen_&i Disable 1.00

This sets all of the floors to a certain value (if we were going to floor 6, all of the value are set to six, then only one logic_compare entity is tripped that uses 6 as its compare value therefore only triggering the doors on the sixth floor).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F1_SetAllCompare_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i SetValue 1 0.00
Io11.png OnTrigger F2_Compare_&i SetValue 1 0.00
Io11.png OnTrigger F3_Compare_&i SetValue 1 0.00
Io11.png OnTrigger F4_Compare_&i SetValue 1 0.00
Io11.png OnTrigger F5_Compare_&i SetValue 1 0.00
Io11.png OnTrigger F6_Compare_&i SetValue 1 0.00

Note.pngNote:The Compare value must be changed to the corresponding floor number (If F6_Compare_&i then this value must be set at 6)

ClassInfo

Class
logic_compare

Keyvalues

Property Name Value
Name F1_Compare_&i
Compare value 1

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEqualTo F1_DoorBranch_&i SetValueTest 0 0.00

Floor 2

This triggers the cycle instructions to get to the particular floor (Triggered by one of the two elevator buttons).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F2_ButtonFunctions_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Close_AllDoors_&i Trigger 0.00
Io11.png OnTrigger F2_TestRelay_&i Trigger 0.00
Io11.png OnTrigger LockButtons_&i Trigger 0.00
Io11.png OnTrigger Elevator_Chime_&i PlaySound 0.00
Io11.png OnTrigger Elevator_&i SetPosition 1 2.00
Io11.png OnTrigger Elevator_Weight_&i SetPosition 1 2.00

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F2_TestRelay_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F2_Branch_Button_&i SetValueTest 1 0.01
Io11.png OnTrigger Test_Relay_All_&i Trigger 0 0.00

This branch will only have a True value (1) if the corresponding button has been pressed (ex. if "Elevator_F1_Button_&i" was pressed, F1_Branch_Button_&i would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F2_Branch_Button_&i
Initial value 0

Outputs

NONE


This branch will only have a True value (1) if the corresponding trigger has been tripped (ex. if "F1_Trigger_&i" was pressed, "F1_Branch_Trigger_&i" would be set to true)


ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F2_Branch_Trigger_&i
Initial value 0

Outputs

NONE


This listens to the values of both branches, of the same floor, before triggering the timer control. (This is only set to look for the true value of the branches).

ClassInfo

Class
logic_branch_listener

Keyvalues

Property Name Value
Name F2_Branch_Listener_&i
Logic Branch 01 F2_Branch_Button_&i
Logic Branch 02 F2_Branch_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnAllFalse F2_Timer_&i Disable 0.00
Io11.png OnAllTrue F2_Timer_&i Enable 0.00
Io11.png OnMixed F2_Timer_&i Disable 0.00
Io11.png OnAllTrue F2_Timer_&i FireTimer 0.10

This is used to prevent retriggering the doors, only activates the following commands after a 3 second delay.

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F2_Timer_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer UnlockButtons_&i Trigger 0.00
Io11.png OnTimer Elevator_F2_Button_&i Lock 0.10
Io11.png OnTimer Elevator_M2_Button_&i Lock 0.10
Io11.png OnTimer F2_Timer_&i Disable 0.50
Io11.png OnTimer Elevator_M_Door_&i SetAnimation open 1.50
Io11.png OnTimer F2_DoorBranch_&i SetValueTest 1 1.50

A set of instructions to open the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_OpenDoor_F2_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F2_Door_&i SetAnimation open 0.00
Io11.png OnTrigger Elevator_Sound_F2_Door_&i PlaySound 0.00
Io11.png OnTrigger F2_SetAllCompare_&i Trigger 0.00

A set of instructions to close the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_CloseDoor_F2_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F2_Door_&i SetAnimation close 0.00
Io11.png OnTrigger Elevator_Sound_F2_Door_&i PlaySound 0.00

Timer delay for opening the door on the specified floor (prevents glitching the animations).

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F2_DoorTimerOpen_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_OpenDoor_F2_&i Trigger 0.00

---

Timer delay for closing the door on the specified floor (prevents glitching the animations).

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F2_DoorTimerClose_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_CloseDoor_F2_&i Trigger 0.00

This controls when the door should be open or closed.

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F2_DoorBranch_&i
Initial value 0

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnFalse F2_DoorTimerClose_&i Enable 0.00
Io11.png OnFalse F2_DoorTimerOpen_&i Disable 0.00
Io11.png OnTrue F2_DoorTimerOpen_&i Enable 0.00
Io11.png OnTrue F2_DoorTimerClose_&i Disable 0.00
Io11.png OnFalse F2_DoorTimerClose_&i FireTimer 0.10
Io11.png OnTrue F2_DoorTimerOpen_&i FireTimer 0.10
Io11.png OnFalse F2_DoorTimerClose_&i Disable 1.00
Io11.png OnTrue F2_DoorTimerOpen_&i Disable 1.00

This sets all of the floors to a certain value (if we were going to floor 6, all of the value are set to six, then only one logic_compare enity is tripped that uses 6 as its compare value therefore only triggering the doors on the sixth floor).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F2_SetAllCompare_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i SetValue 2 0.00
Io11.png OnTrigger F2_Compare_&i SetValue 2 0.00
Io11.png OnTrigger F3_Compare_&i SetValue 2 0.00
Io11.png OnTrigger F4_Compare_&i SetValue 2 0.00
Io11.png OnTrigger F5_Compare_&i SetValue 2 0.00
Io11.png OnTrigger F6_Compare_&i SetValue 2 0.00

ClassInfo

Class
logic_compare

Keyvalues

Property Name Value
Name F2_Compare_&i
Compare value 2

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEqualTo F2_DoorBranch_&i SetValueTest 0 0.00

Floor 3

This triggers the cycle instructions to get to the particular floor (Triggered by one of the two elevator buttons).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F3_ButtonFunctions_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Close_AllDoors_&i Trigger 0.00
Io11.png OnTrigger F3_TestRelay_&i Trigger 0.00
Io11.png OnTrigger LockButtons_&i Trigger 0.00
Io11.png OnTrigger Elevator_Chime_&i PlaySound 0.00
Io11.png OnTrigger Elevator_&i SetPosition 2 2.00
Io11.png OnTrigger Elevator_Weight_&i SetPosition 2 2.00



ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F3_TestRelay_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F3_Branch_Button_&i SetValueTest 1 0.01
Io11.png OnTrigger Test_Relay_All_&i Trigger 0 0.00

This branch will only have a True value (1) if the corresponding button has been pressed (ex. if "Elevator_F1_Button_&i" was pressed, F1_Branch_Button_&i would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F3_Branch_Button_&i
Initial value 0

Outputs

NONE


This branch will only have a True value (1) if the corresponding trigger has been tripped (ex. if "F1_Trigger_&i" was pressed, "F1_Branch_Trigger_&i" would be set to true)


ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F3_Branch_Trigger_&i
Initial value 0

Outputs

NONE


This listens to the values of both branches, of the same floor, before triggering the timer control. (This is only set to look for the true value of the branches).

ClassInfo

Class
logic_branch_listener

Keyvalues

Property Name Value
Name F3_Branch_Listener_&i
Logic Branch 01 F3_Branch_Button_&i
Logic Branch 02 F3_Branch_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnAllFalse F3_Timer_&i Disable 0.00
Io11.png OnAllTrue F3_Timer_&i Enable 0.00
Io11.png OnMixed F3_Timer_&i Disable 0.00
Io11.png OnAllTrue F3_Timer_&i FireTimer 0.10

This is used to prevent retriggering the doors, only activates the following commands after a delay of 3 seconds.

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F3_Timer_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer UnlockButtons_&i Trigger 0.00
Io11.png OnTimer Elevator_F3_Button_&i Lock 0.10
Io11.png OnTimer Elevator_M3_Button_&i Lock 0.10
Io11.png OnTimer F3_Timer_&i Disable 0.50
Io11.png OnTimer Elevator_M_Door_&i SetAnimation open 1.50
Io11.png OnTimer F3_DoorBranch_&i SetValueTest 1 1.50

A set of instructions to open the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_OpenDoor_F3_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F3_Door_&i SetAnimation open 0.00
Io11.png OnTrigger Elevator_Sound_F3_Door_&i PlaySound 0.00
Io11.png OnTrigger F3_SetAllCompare_&i Trigger 0.00

A set of instructions to close the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_CloseDoor_F3_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F3_Door_&i SetAnimation close 0.00
Io11.png OnTrigger Elevator_Sound_F3_Door_&i PlaySound 0.00

Timer delay for opening the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F3_DoorTimerOpen_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_OpenDoor_F3_&i Trigger 0.00

---

timer delay for closing the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F3_DoorTimerClose_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_CloseDoor_F3_&i Trigger 0.00

This controls when the door should be open or closed

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F3_DoorBranch_&i
Initial value 0

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnFalse F3_DoorTimerClose_&i Enable 0.00
Io11.png OnFalse F3_DoorTimerOpen_&i Disable 0.00
Io11.png OnTrue F3_DoorTimerOpen_&i Enable 0.00
Io11.png OnTrue F3_DoorTimerClose_&i Disable 0.00
Io11.png OnFalse F3_DoorTimerClose_&i FireTimer 0.10
Io11.png OnTrue F3_DoorTimerOpen_&i FireTimer 0.10
Io11.png OnFalse F3_DoorTimerClose_&i Disable 1.00
Io11.png OnTrue F3_DoorTimerOpen_&i Disable 1.00

This sets all of the floors to a certain value (if we were going to floor 6, all of the value are set to six, then only one logic_compare entity is tripped that uses 6 as its compare value therefor only triggering the doors on the sixth floor)

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F3_SetAllCompare_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i SetValue 3 0.00
Io11.png OnTrigger F2_Compare_&i SetValue 3 0.00
Io11.png OnTrigger F3_Compare_&i SetValue 3 0.00
Io11.png OnTrigger F4_Compare_&i SetValue 3 0.00
Io11.png OnTrigger F5_Compare_&i SetValue 3 0.00
Io11.png OnTrigger F6_Compare_&i SetValue 3 0.00

ClassInfo

Class
logic_compare

Keyvalues

Property Name Value
Name F3_Compare_&i
Compare value 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEqualTo F3_DoorBranch_&i SetValueTest 0 0.00

Floor 4

This triggers the cycle instructions to get to the particular floor (Triggered by one of the two elevator buttons)

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F4_ButtonFunctions_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Close_AllDoors_&i Trigger 0.00
Io11.png OnTrigger F4_TestRelay_&i Trigger 0.00
Io11.png OnTrigger LockButtons_&i Trigger 0.00
Io11.png OnTrigger Elevator_Chime_&i PlaySound 0.00
Io11.png OnTrigger Elevator_&i SetPosition 3 2.00
Io11.png OnTrigger Elevator_Weight_&i SetPosition 3 2.00



ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F4_TestRelay_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F4_Branch_Button_&i SetValueTest 1 0.01
Io11.png OnTrigger Test_Relay_All_&i Trigger 0 0.00

This branch will only have a true value (1) if the corresponging button has been pressed (ex. if "Elevator_F1_Button_&i" was pressed, F1_Branch_Button_&i would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F4_Branch_Button_&i
Initial value 0

Outputs

NONE


This branch will only have a true value (1) if the corresponding trigger has been tripped (ex. if "F1_Trigger_&i" was pressed, "F1_Branch_Trigger_&i" would be set to true)


ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F4_Branch_Trigger_&i
Initial value 0

Outputs

NONE


This listens to the values of both branches, of the same floor, before triggering the timer control. (This is only set to look for the true value of the branches)

ClassInfo

Class
logic_branch_listener

Keyvalues

Property Name Value
Name F4_Branch_Listener_&i
Logic Branch 01 F4_Branch_Button_&i
Logic Branch 02 F4_Branch_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnAllFalse F4_Timer_&i Disable 0.00
Io11.png OnAllTrue F4_Timer_&i Enable 0.00
Io11.png OnMixed F4_Timer_&i Disable 0.00
Io11.png OnAllTrue F4_Timer_&i FireTimer 0.10

This is used to prevent retriggering the doors, only activates the following commands after a delay of 3 seconds.

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F4_Timer_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer UnlockButtons_&i Trigger 0.00
Io11.png OnTimer Elevator_F4_Button_&i Lock 0.10
Io11.png OnTimer Elevator_M4_Button_&i Lock 0.10
Io11.png OnTimer F4_Timer_&i Disable 0.50
Io11.png OnTimer Elevator_M_Door_&i SetAnimation open 1.50
Io11.png OnTimer F4_DoorBranch_&i SetValueTest 1 1.50

A set of instructions to open the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_OpenDoor_F4_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F4_Door_&i SetAnimation open 0.00
Io11.png OnTrigger Elevator_Sound_F4_Door_&i PlaySound 0.00
Io11.png OnTrigger F4_SetAllCompare_&i Trigger 0.00

A set of instructions to close the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_CloseDoor_F4_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F4_Door_&i SetAnimation close 0.00
Io11.png OnTrigger Elevator_Sound_F4_Door_&i PlaySound 0.00

timer delay for opening the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F4_DoorTimerOpen_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_OpenDoor_F4_&i Trigger 0.00

---

Timer delay for closing the door on the specified floor (prevents glitching the animations).

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F4_DoorTimerClose_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_CloseDoor_F4_&i Trigger 0.00

This controls when the door should be open or closed.

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F4_DoorBranch_&i
Initial value 0

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnFalse F4_DoorTimerClose_&i Enable 0.00
Io11.png OnFalse F4_DoorTimerOpen_&i Disable 0.00
Io11.png OnTrue F4_DoorTimerOpen_&i Enable 0.00
Io11.png OnTrue F4_DoorTimerClose_&i Disable 0.00
Io11.png OnFalse F4_DoorTimerClose_&i FireTimer 0.10
Io11.png OnTrue F4_DoorTimerOpen_&i FireTimer 0.10
Io11.png OnFalse F4_DoorTimerClose_&i Disable 1.00
Io11.png OnTrue F4_DoorTimerOpen_&i Disable 1.00

This sets all of the floors to a certain value (if we were going to floor 6, all of the value are set to six, then only one logic_compare enity is tripped that uses 6 as its compare value therefore only triggering the doors on the sixth floor).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F4_SetAllCompare_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i SetValue 4 0.00
Io11.png OnTrigger F2_Compare_&i SetValue 4 0.00
Io11.png OnTrigger F3_Compare_&i SetValue 4 0.00
Io11.png OnTrigger F4_Compare_&i SetValue 4 0.00
Io11.png OnTrigger F5_Compare_&i SetValue 4 0.00
Io11.png OnTrigger F6_Compare_&i SetValue 4 0.00

ClassInfo

Class
logic_compare

Keyvalues

Property Name Value
Name F4_Compare_&i
Compare value 4

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEqualTo F4_DoorBranch_&i SetValueTest 0 0.00

Floor 5

This triggers the cycle instructions to get to the particular floor (Triggered by one of the two elevator buttons).

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F5_ButtonFunctions_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Close_AllDoors_&i Trigger 0.00
Io11.png OnTrigger F5_TestRelay_&i Trigger 0.00
Io11.png OnTrigger LockButtons_&i Trigger 0.00
Io11.png OnTrigger Elevator_Chime_&i PlaySound 0.00
Io11.png OnTrigger Elevator_&i SetPosition 4 2.00
Io11.png OnTrigger Elevator_Weight_&i SetPosition 4 2.00



ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F5_TestRelay_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F5_Branch_Button_&i SetValueTest 1 0.01
Io11.png OnTrigger Test_Relay_All_&i Trigger 0 0.00

This branch will only have a True value (1) if the corresponding button has been pressed (ex. if "Elevator_F1_Button_&i" was pressed, F1_Branch_Button_&i would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F5_Branch_Button_&i
Initial value 0

Outputs

NONE


This branch will only have a True value (1) if the corresponding trigger has been tripped (ex. if "F1_Trigger_&i" was pressed, "F1_Branch_Trigger_&i" would be set to true)


ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F5_Branch_Trigger_&i
Initial value 0

Outputs

NONE


This listens to the values of both branches, of the same floor, before triggering the timer control. (This is only set to look for the true value of the branches)

ClassInfo

Class
logic_branch_listener

Keyvalues

Property Name Value
Name F5_Branch_Listener_&i
Logic Branch 01 F5_Branch_Button_&i
Logic Branch 02 F5_Branch_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnAllFalse F5_Timer_&i Disable 0.00
Io11.png OnAllTrue F5_Timer_&i Enable 0.00
Io11.png OnMixed F5_Timer_&i Disable 0.00
Io11.png OnAllTrue F5_Timer_&i FireTimer 0.10

This was used to prevent retriggering the doors, only activates the following commands after a delay of 3 seconds.

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F5_Timer_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer UnlockButtons_&i Trigger 0.00
Io11.png OnTimer Elevator_F5_Button_&i Lock 0.10
Io11.png OnTimer Elevator_M5_Button_&i Lock 0.10
Io11.png OnTimer F5_Timer_&i Disable 0.50
Io11.png OnTimer Elevator_M_Door_&i SetAnimation open 1.50
Io11.png OnTimer F5_DoorBranch_&i SetValueTest 1 1.50

A set of instructions to open the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_OpenDoor_F5_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F5_Door_&i SetAnimation open 0.00
Io11.png OnTrigger Elevator_Sound_F5_Door_&i PlaySound 0.00
Io11.png OnTrigger F5_SetAllCompare_&i Trigger 0.00

A set of instructions to close the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_CloseDoor_F5_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F5_Door_&i SetAnimation close 0.00
Io11.png OnTrigger Elevator_Sound_F5_Door_&i PlaySound 0.00

Timer delay for opening the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F5_DoorTimerOpen_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_OpenDoor_F5_&i Trigger 0.00

---

Timer delay for closing the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F5_DoorTimerClose_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_CloseDoor_F5_&i Trigger 0.00

This controls when the door should be open or closed.

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F5_DoorBranch_&i
Initial value 0

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnFalse F5_DoorTimerClose_&i Enable 0.00
Io11.png OnFalse F5_DoorTimerOpen_&i Disable 0.00
Io11.png OnTrue F5_DoorTimerOpen_&i Enable 0.00
Io11.png OnTrue F5_DoorTimerClose_&i Disable 0.00
Io11.png OnFalse F5_DoorTimerClose_&i FireTimer 0.10
Io11.png OnTrue F5_DoorTimerOpen_&i FireTimer 0.10
Io11.png OnFalse F5_DoorTimerClose_&i Disable 1.00
Io11.png OnTrue F5_DoorTimerOpen_&i Disable 1.00

This sets all of the floors to a certain value (if we were going to floor 6, all of the value are set to six, then only one logic_compare entity is tripped that uses 6 as its compare value therefore only triggering the doors on the sixth floor)

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F5_SetAllCompare_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i SetValue 5 0.00
Io11.png OnTrigger F2_Compare_&i SetValue 5 0.00
Io11.png OnTrigger F3_Compare_&i SetValue 5 0.00
Io11.png OnTrigger F4_Compare_&i SetValue 5 0.00
Io11.png OnTrigger F5_Compare_&i SetValue 5 0.00
Io11.png OnTrigger F6_Compare_&i SetValue 5 0.00

ClassInfo

Class
logic_compare

Keyvalues

Property Name Value
Name F5_Compare_&i
Compare value 5

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEqualTo F5_DoorBranch_&i SetValueTest 0 0.00

Floor 6

This triggers the cycle instructions to get to the particular floor (Triggered by one of the two elevator buttons)

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F6_ButtonFunctions_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Close_AllDoors_&i Trigger 0.00
Io11.png OnTrigger F6_TestRelay_&i Trigger 0.00
Io11.png OnTrigger LockButtons_&i Trigger 0.00
Io11.png OnTrigger Elevator_Chime_&i PlaySound 0.00
Io11.png OnTrigger Elevator_&i SetPosition 5 2.00
Io11.png OnTrigger Elevator_Weight_&i SetPosition 5 2.00



ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F6_TestRelay_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F6_Branch_Button_&i SetValueTest 1 0.01
Io11.png OnTrigger Test_Relay_All_&i Trigger 0 0.00

This branch will only have a True value (1) if the corresponding button has been pressed (ex. if "Elevator_F1_Button_&i" was pressed, F1_Branch_Button_&i would be set to true)

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F6_Branch_Button_&i
Initial value 0

Outputs

NONE


This branch will only have a True value (1) if the corresponging trigger has been tripped (ex. if "F1_Trigger_&i" was pressed, "F1_Branch_Trigger_&i" would be set to true)


ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F6_Branch_Trigger_&i
Initial value 0

Outputs

NONE


This listens to the values of both branches on the same floor before triggering the timer control. (This is only set to look for the true value of the branches)

ClassInfo

Class
logic_branch_listener

Keyvalues

Property Name Value
Name F6_Branch_Listener_&i
Logic Branch 01 F6_Branch_Button_&i
Logic Branch 02 F6_Branch_Trigger_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnAllFalse F6_Timer_&i Disable 0.00
Io11.png OnAllTrue F6_Timer_&i Enable 0.00
Io11.png OnMixed F6_Timer_&i Disable 0.00
Io11.png OnAllTrue F6_Timer_&i FireTimer 0.10

This was used to prevent retriggering the doors, and only activates the following commands after a delay of 3 seconds.

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F6_Timer_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer UnlockButtons_&i Trigger 0.00
Io11.png OnTimer Elevator_F6_Button_&i Lock 0.10
Io11.png OnTimer Elevator_M6_Button_&i Lock 0.10
Io11.png OnTimer F6_Timer_&i Disable 0.50
Io11.png OnTimer Elevator_M_Door_&i SetAnimation open 1.50
Io11.png OnTimer F6_DoorBranch_&i SetValueTest 1 1.50

A set of instructions to open the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_OpenDoor_F6_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F6_Door_&i SetAnimation open 0.00
Io11.png OnTrigger Elevator_Sound_F6_Door_&i PlaySound 0.00
Io11.png OnTrigger F6_SetAllCompare_&i Trigger 0.00

A set of instructions to close the specified door on the same floor.

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name Elevator_CloseDoor_F6_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger Elevator_F6_Door_&i SetAnimation close 0.00
Io11.png OnTrigger Elevator_Sound_F6_Door_&i PlaySound 0.00

Timer delay for opening the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F6_DoorTimerOpen_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_OpenDoor_F6_&i Trigger 0.00

---

Timer delay for closing the door on the specified floor (prevents glitching the animations)

ClassInfo

Class
logic_timer

Keyvalues

Property Name Value
Name F6_DoorTimerClose_&i
Start Disabled Yes
Refire Interval 3

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTimer Elevator_CloseDoor_F6_&i Trigger 0.00

This controls when the door should be open or closed.

ClassInfo

Class
logic_branch

Keyvalues

Property Name Value
Name F6_DoorBranch_&i
Initial value 0

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnFalse F6_DoorTimerClose_&i Enable 0.00
Io11.png OnFalse F6_DoorTimerOpen_&i Disable 0.00
Io11.png OnTrue F6_DoorTimerOpen_&i Enable 0.00
Io11.png OnTrue F6_DoorTimerClose_&i Disable 0.00
Io11.png OnFalse F6_DoorTimerClose_&i FireTimer 0.10
Io11.png OnTrue F6_DoorTimerOpen_&i FireTimer 0.10
Io11.png OnFalse F6_DoorTimerClose_&i Disable 1.00
Io11.png OnTrue F6_DoorTimerOpen_&i Disable 1.00

This sets all of the floors to a certain value (if we were going to floor 6, all of the value are set to six, then only one logic_compare entity is tripped that uses 6 as its compare value therefore only triggering the doors on the sixth floor)

ClassInfo

Class
logic_relay

Keyvalues

Property Name Value
Name F6_SetAllCompare_&i

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnTrigger F1_Compare_&i SetValue 6 0.00
Io11.png OnTrigger F2_Compare_&i SetValue 6 0.00
Io11.png OnTrigger F3_Compare_&i SetValue 6 0.00
Io11.png OnTrigger F4_Compare_&i SetValue 6 0.00
Io11.png OnTrigger F5_Compare_&i SetValue 6 0.00
Io11.png OnTrigger F6_Compare_&i SetValue 6 0.00

ClassInfo

Class
logic_compare

Keyvalues

Property Name Value
Name F6_Compare_&i
Compare value 6

Outputs

My Output Target Entity Target Input Parameter Delay
Io11.png OnEqualTo F6_DoorBranch_&i SetValueTest 0 0.00