我正在 Roblox 中制作香烟,我希望它能够正常工作
它使 cig 调整到前面。
您可以在这里自己获取: https://filetransfer.io/data-package/qKBHvHxS#link
对于想要代码的人来说,您真正需要看到的是:
for i = bit.Size.X, 0, -0.1 do
local tweenInfo = TweenInfo.new(0.1)
local goal = {}
goal.Size = Vector3.new(i, bit.Size.Y, bit.Size.Z)
local tween = TweenService:Create(bit, tweenInfo, goal)
tween:Play()
wait(0.1)
bit.CFrame = bit.CFrame + bit.CFrame.LookVector * -0.1
end
但说真的,我确实建议下载 RBXM 文件并实际测试它。
它也是一个工具,所以这说明了旋转。
如果您要使用 Tween,请勿将其放入 for 循环中。当两个补间尝试操纵相同的属性时,它们开始相互抵消。
因此,只需将所有调整大小逻辑放入一个补间中,并使其占用完整的时间:
local BURN_RATE = 0.1 -- studs/tick
local cigLength = bit.Size.X
local tweenInfo = TweenInfo.new(cigLength * BURN_RATE) -- take more time based on how long the cig is
local goal = {
Size = Vector3.new(0, bit.Size.Y, bit.Size.Z),
Position = (bit.Position - Vector3.new(cigLength / 2, 0, 0)),
}
local tween = TweenService:Create(bit, tweenInfo, goal)
tween:Play()
-- TODO : if the tool is put away, simply cancel the tween