Files
Roblox-Elevator-Game/src/server/main/Elevators/Otis1960/main.lua

54 lines
1.7 KiB
Lua

--!optimize 2
--!native
--!strict
local Otis1960_main = {}
Otis1960_main.__index = Otis1960_main
local Elevator = script.Parent
local Elevators = Elevator.Parent
local RS = game:GetService("ReplicatedStorage")
local TagsModule = require(RS:WaitForChild("Tags"))
local Leveling = require(Elevators:WaitForChild("Leveling"))
local Doors = require(Elevator:WaitForChild("Doors"))
local ElevatorMover = require(Elevators:WaitForChild("Mover"))
local Tags = TagsModule.constructor().Exports
local ElevatorBox_1960 = Tags.ElevatorMover_1960
local ElevatorBox = Tags.ElevatorMover_1960 :: BasePart
local ElevatorDoor1 = Tags.ElevatorDoor_1960_1 :: BasePart
local ElevatorDoor2 = Tags.ElevatorDoor_1960_2 :: BasePart
local ElevatorDoorSensor = Tags.ElevatorDoor_Sensor_1960 :: Folder
local ElevatorBoxStartPos = ElevatorBox_1960.Position
local _BoxAttachment, BoxAlignPosition, _BoxAlignOrientation = ElevatorMover(ElevatorBox_1960, ElevatorBoxStartPos)
local ElevatorDoors = Doors.constructor(ElevatorBox, ElevatorDoor1, ElevatorDoor2, ElevatorDoorSensor)
local function MoveFloors(level: number)
local ElevatorBoxCurrentPos = ElevatorBox.Position
--Its gonna use raycasting inside of the shaft to detect when its near and when to stop
BoxAlignPosition.Position = Vector3.new(ElevatorBoxCurrentPos.X, level, ElevatorBoxCurrentPos.Z)
end
local function GoTo_Level(requested_level: number)
local level: number = Leveling[requested_level]
if level then
MoveFloors(level)
end
end
print("[DEBUG]: Tags:",Tags)
-- while true do
-- task.wait(2)
-- ElevatorDoors:Opening(true)
-- task.wait(2)
-- ElevatorDoors:Opening(false)
-- end
return Otis1960_main