mirror of
https://github.com/unixtensor/Roblox-Elevator-Game.git
synced 2025-12-14 06:41:55 +00:00
Have AlignPosition.RigidityEnabled be enabled on init
This commit is contained in:
@@ -101,32 +101,6 @@ local function ElevatorGoingUpDirection(CurrentFloor: number, RequestedFloor: nu
|
|||||||
return CurrentFloor<RequestedFloor
|
return CurrentFloor<RequestedFloor
|
||||||
end
|
end
|
||||||
|
|
||||||
local function Mover(ElevatorBoxModel: BasePart, Responsiveness: number): (Attachment, AlignPosition, AlignOrientation)
|
|
||||||
local BoxAttachment = Instance.new("Attachment")
|
|
||||||
BoxAttachment.Parent = ElevatorBoxModel
|
|
||||||
|
|
||||||
local BoxAlignPosition = Instance.new("AlignPosition")
|
|
||||||
BoxAlignPosition.Mode = Enum.PositionAlignmentMode.OneAttachment
|
|
||||||
BoxAlignPosition.Attachment0 = BoxAttachment
|
|
||||||
BoxAlignPosition.MaxForce = 1e6
|
|
||||||
BoxAlignPosition.Position = ElevatorBoxModel.Position
|
|
||||||
-- BoxAlignPosition.RigidityEnabled = true
|
|
||||||
-- Lines below are disabled with RigidityEnabled true
|
|
||||||
BoxAlignPosition.Responsiveness = Responsiveness
|
|
||||||
BoxAlignPosition.MaxVelocity = 0
|
|
||||||
--
|
|
||||||
BoxAlignPosition.Parent = ElevatorBoxModel
|
|
||||||
|
|
||||||
local BoxAlignOrientation = Instance.new("AlignOrientation")
|
|
||||||
BoxAlignOrientation.Mode = Enum.OrientationAlignmentMode.OneAttachment
|
|
||||||
BoxAlignOrientation.Attachment0 = BoxAttachment
|
|
||||||
BoxAlignOrientation.RigidityEnabled = true
|
|
||||||
BoxAlignOrientation.CFrame = ElevatorBoxModel.CFrame
|
|
||||||
BoxAlignOrientation.Parent = ElevatorBoxModel
|
|
||||||
|
|
||||||
return BoxAttachment, BoxAlignPosition, BoxAlignOrientation
|
|
||||||
end
|
|
||||||
|
|
||||||
function Elevator.constructor(ElevatorBoxModel, ElevatorConfigurationTable, FloorLevelingPositions)
|
function Elevator.constructor(ElevatorBoxModel, ElevatorConfigurationTable, FloorLevelingPositions)
|
||||||
assert(#FloorLevelingPositions>1, `"{ElevatorConfigurationTable.Name}" requires more floors to operate. Floors={FloorLevelingPositions}, #Floors={#FloorLevelingPositions}.`)
|
assert(#FloorLevelingPositions>1, `"{ElevatorConfigurationTable.Name}" requires more floors to operate. Floors={FloorLevelingPositions}, #Floors={#FloorLevelingPositions}.`)
|
||||||
|
|
||||||
@@ -144,9 +118,25 @@ function Elevator.constructor(ElevatorBoxModel, ElevatorConfigurationTable, Floo
|
|||||||
Out.warnStudio(`[{ElevatorConfigurationTable.Name}]:`, ...)
|
Out.warnStudio(`[{ElevatorConfigurationTable.Name}]:`, ...)
|
||||||
end
|
end
|
||||||
|
|
||||||
local _BoxAttachment,
|
local BoxAttachment = Instance.new("Attachment")
|
||||||
BoxAlignPosition,
|
BoxAttachment.Parent = ElevatorBoxModel
|
||||||
_BoxAlignOrientation = Mover(ElevatorBoxModel, ElevatorConfigurationTable.Responsiveness)
|
|
||||||
|
local BoxAlignPosition = Instance.new("AlignPosition")
|
||||||
|
BoxAlignPosition.Mode = Enum.PositionAlignmentMode.OneAttachment
|
||||||
|
BoxAlignPosition.Attachment0 = BoxAttachment
|
||||||
|
BoxAlignPosition.MaxForce = 1e6
|
||||||
|
BoxAlignPosition.Position = ElevatorBoxModel.Position
|
||||||
|
BoxAlignPosition.Responsiveness = ElevatorConfigurationTable.Responsiveness
|
||||||
|
BoxAlignPosition.MaxVelocity = 0
|
||||||
|
BoxAlignPosition.RigidityEnabled = true
|
||||||
|
BoxAlignPosition.Parent = ElevatorBoxModel
|
||||||
|
|
||||||
|
local BoxAlignOrientation = Instance.new("AlignOrientation")
|
||||||
|
BoxAlignOrientation.Mode = Enum.OrientationAlignmentMode.OneAttachment
|
||||||
|
BoxAlignOrientation.Attachment0 = BoxAttachment
|
||||||
|
BoxAlignOrientation.RigidityEnabled = true
|
||||||
|
BoxAlignOrientation.CFrame = ElevatorBoxModel.CFrame
|
||||||
|
BoxAlignOrientation.Parent = ElevatorBoxModel
|
||||||
|
|
||||||
local RelayAlgorithmConstructor = RelayAlgorithm.constructor(BoxAlignPosition)
|
local RelayAlgorithmConstructor = RelayAlgorithm.constructor(BoxAlignPosition)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user