im having a problem its not working i cant find out why pls i need help
local runService = game:GetService("RunService") local createButton = require(game.ServerScriptService.GameObjects.WireItems.CreateButton)
local doorModule = {}
function doorModule.new(doorList)
for _, door in pairs(doorList) do
local hingeAnchor = door.Anchor
local hinge = door.Hinge
local pos = door.Pos
local posConstraint = door.PosConstraint
local toggleMotor = Instance.new("Motor")
toggleMotor.Part0 = hingeAnchor
toggleMotor.Part1 = hinge
toggleMotor.C0 = CFrame.Angles(-math.pi/2, math.pi, 0) * CFrame.new(hingeAnchor.Size.X / 2, 0, 0)
toggleMotor.C1 = CFrame.Angles(0, math.pi/2, 0) * CFrame.new(hinge.Size.Z / 2, 0, 0)
toggleMotor.MaxVelocity = 0.08
toggleMotor.Parent = toggleMotor.Part0
door.Model:MakeJoints()
local function unanchor(part)
for _, part in pairs(part:GetConnectedParts()) do
if part.Anchored and not (part == hingeAnchor) and part.Parent == door.Model then
part.Anchored = false
unanchor(part)
end
end
end
unanchor(hinge)
if not door.Remote:FindFirstChild("ButtonPrompt") then
print(door.Remote:GetFullName())
end
local doorName = door.Remote.ButtonPrompt.Value
local function toggleSwitch()
toggleMotor.DesiredAngle = pos.Value * math.pi/2
if pos.Value == 0 then
door.Remote.ButtonPrompt.Value = "Open "..string.lower(doorName)
else
door.Remote.ButtonPrompt.Value = "Close "..string.lower(doorName)
end
end
createButton:NewPulse(door.Remote, function(player, wire)
local torso
if not wire then
torso = player.Character and player.Character:FindFirstChild("Torso")
elseif wire then
torso = wire.PrimaryPart
end
if not (pos.Value == 0) or not torso then
pos.Value = 0
else
if posConstraint then
pos.Value = posConstraint
else
local p = hingeAnchor.CFrame:pointToObjectSpace(torso.Position)
if p.Z > 0 then
pos.Value = 1
else
pos.Value = -1
end
end
end
toggleSwitch()
end)
pos.Changed:connect(toggleSwitch)
toggleSwitch()
local seat = door.VehicleSeat
if seat then
seat.Changed:connect(function(property)
if property == "Occupant" then
if seat.Occupant then
pos.Value = 0
else
pos.Value = posConstraint or 1
end
toggleSwitch()
end
end)
end
end
end
return doorModule
