由于目前脚本编写的复杂性以及我的能力,我已经找到了如何在热门MMO“Roblox”中创建滑动门的方法。 我已自动分析脚本,并手动分析,但未发现任何错误。 它在下面:
local Part = workspace.Part
local newPos = Part.Position + Vector3.new(-61.866, 8.551, -97.181)
local Time = 5
local Increment = 0.5
local Debounce = false
local Diff = newPos - Part.Position
local Mag = Diff.magnitude
local Direction = CFrame.new(Part.Position, newPos).lookVector
function MovePart()
if Debounce then return end
Debounce = true
for n = 0, Mag, Increment do
Part.CFrame = Part.CFrame + (Direction * Increment)
wait( (Time/Mag) * Increment )
end
Debounce = false
end
workspace.Button.ClickDetector.MouseClick:connect(MovePart)
当我插入一个内有Clickdetector
的按钮,并试图点击按钮时,没有显示任何结果 - 甚至没有错误!我被困住了,需要帮助。非常感谢。
答案 0 :(得分:1)
替代解决方案:
将按钮,部分和以下脚本放在一个模型中。
local Part = script.Parent.Part
local Button = script.Parent.Button
Part.Anchored = true
local Direction = Part.CFrame.lookVector
local Mag = Part.Size.Z
local Time = 5
local Increment = 0.5 -- Smaller will make smoother 'movement'
local Debounce = false
function MovePart()
if Debounce then return end
Debounce = true
for n = 0, Mag, Increment do
Part.CFrame = Part.CFrame + (Direction * Increment)
wait(Time/(Mag * Increment))
end
for n = 0, Mag, Increment do
Part.CFrame = Part.CFrame + (Direction * -Increment) -- so that it moves back
wait(Time/(Mag * Increment))
end
Debounce = false
end
clickD = Button.ClickDetector or Instance.new("ClickDetector",Button)
clickD.MouseClick:connect(MovePart)
希望有所帮助。
答案 1 :(得分:0)
您所要做的就是在工作区中放置一个部件,将其重命名为" Button"并将clickDetector插入到零件中。