Have AlignPosition.RigidityEnabled be enabled on init

This commit is contained in:
2024-09-13 22:09:23 -04:00
parent 709642d408
commit cc9fae99fd

View File

@@ -101,32 +101,6 @@ local function ElevatorGoingUpDirection(CurrentFloor: number, RequestedFloor: nu
return CurrentFloor<RequestedFloor
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)
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}]:`, ...)
end
local _BoxAttachment,
BoxAlignPosition,
_BoxAlignOrientation = Mover(ElevatorBoxModel, ElevatorConfigurationTable.Responsiveness)
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.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)