--[[
API
===
To run the API, use:
``` API:Fire(<function>, {<arguments>}) ```

Call
----
The Call function sends the elevator to a floor. It takes 3 arguments.

- ` number floor`  - The desired floor that the elevator should go to.
- ` string direction`  - The call direction. This can be "N" for no direction, "U" for up, or "D" for down.
- ` boolean showInEle`  - Determines whether the call button in the elevator should light up.

Example:
``` API:Fire("Call", {2, "D", false}) ```

ClearQueue
----------
The ClearQueue function clears the call queue and unlights all the call buttons. It takes 0 arguments.

Example:
``` API:Fire("ClearQueue") ```

Stop
----
The Stop function will stop the elevator if it is in motion and also clears the call queue. It takes 0 arguments.

Example:
``` API:Fire("Stop") ```

DoorOpen
--------
The DoorOpen function force opens the doors if the elevator is not in motion. It takes 0 arguments.

Example:
``` API:Fire("DoorOpen") ```

DoorClose
---------
The DoorClose function force closes the doors if they are open. It takes 0 arguments.

Example:
``` API:Fire("DoorClose") ```

DoorHold
--------
The DoorHold function keeps the doors open until it's disabled. It takes 1 argument.

- ` boolean enabled` - Determines whether the doors should be held open.

Example:
``` API:Fire("DoorHold", {true}) ```

Lock
----
The Lock function locks select calls and makes them inaccessible until unlocked. It takes 3 arguments.

- ` boolean locked` - Setting to true locks, setting to false unlocks.
- ` number floor` - The floor to lock calls for.
- ` string direction` - The call direction to lock. "U" and "D" locks the respective hall buttons, and "N" locks the car buttons.

Example:
``` API:Fire("Lock", {true, 3, "N"})

---
more will come soon™
]]

script:Destroy() -- the