显示零件有多少个立柱的问题
Problem showing how many studs of leght is for a part
我在测试广告牌 GUI 时遇到问题,该 GUI 显示该零件有多少长度的螺柱,但它不显示螺柱,它只是保持为零我尝试使用循环进行测试,但后来没有用尝试使用 RunService 但仍然没有用所以我真的很困惑,因为它没有在输出中显示任何错误所以请帮助
代码:
function setBill(text, parent)
local Loop = {}
local BillboardGui = Instance.new("BillboardGui")
local ScreenGui = Instance.new("ScreenGui")
local Frame = Instance.new("Frame")
local TextLabel = Instance.new("TextLabel")
BillboardGui.Parent = parent
BillboardGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
BillboardGui.Active = true
BillboardGui.AlwaysOnTop = true
BillboardGui.LightInfluence = 1.000
BillboardGui.Size = UDim2.new(0, 205, 0, 55)
BillboardGui.ResetOnSpawn = false
ScreenGui.Parent = BillboardGui
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
Frame.Parent = BillboardGui
Frame.BackgroundColor3 = Color3.fromRGB(71, 71, 71)
Frame.BackgroundTransparency = 1
Frame.BorderColor3 = Color3.fromRGB(255, 255, 255)
Frame.BorderSizePixel = 5
Frame.Size = UDim2.new(0, 150, 0, 50)
TextLabel.Parent = Frame
TextLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
TextLabel.BackgroundTransparency = 1.000
TextLabel.Size = UDim2.new(0, 150, 0, 50)
TextLabel.Font = Enum.Font.Gotham
TextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TextLabel.TextScaled = false
TextLabel.TextSize = 24.000
TextLabel.TextWrapped = true
local function BillLoop()
while wait() do
local pos = math.floor((BillboardGui.Parent.Position - BillboardGui.Parent.Position).magnitude)
TextLabel.Text = text.." Studs : "..tostring(pos)
end
end
Loop = game:GetService("RunService").RenderStepped:Connect(BillLoop)
end
setBill("Shop", game.Workspace["test part"])
local pos = math.floor((BillboardGui.Parent.Position
- BillboardGui.Parent.Position).magnitude)
TextLabel.Text = text.." Studs : "..tostring(pos)
这是您计算和设置 TextLabel 文本的地方。
BillboardGui.Parent.Position
是一个 Vector3。
BillboardGui.Parent.Position - BillboardGui.Parent.Position
是 (0,0,0)
零向量的大小即长度为 0
。
这可能不是您想要计算的。
我在测试广告牌 GUI 时遇到问题,该 GUI 显示该零件有多少长度的螺柱,但它不显示螺柱,它只是保持为零我尝试使用循环进行测试,但后来没有用尝试使用 RunService 但仍然没有用所以我真的很困惑,因为它没有在输出中显示任何错误所以请帮助 代码:
function setBill(text, parent)
local Loop = {}
local BillboardGui = Instance.new("BillboardGui")
local ScreenGui = Instance.new("ScreenGui")
local Frame = Instance.new("Frame")
local TextLabel = Instance.new("TextLabel")
BillboardGui.Parent = parent
BillboardGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
BillboardGui.Active = true
BillboardGui.AlwaysOnTop = true
BillboardGui.LightInfluence = 1.000
BillboardGui.Size = UDim2.new(0, 205, 0, 55)
BillboardGui.ResetOnSpawn = false
ScreenGui.Parent = BillboardGui
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
Frame.Parent = BillboardGui
Frame.BackgroundColor3 = Color3.fromRGB(71, 71, 71)
Frame.BackgroundTransparency = 1
Frame.BorderColor3 = Color3.fromRGB(255, 255, 255)
Frame.BorderSizePixel = 5
Frame.Size = UDim2.new(0, 150, 0, 50)
TextLabel.Parent = Frame
TextLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
TextLabel.BackgroundTransparency = 1.000
TextLabel.Size = UDim2.new(0, 150, 0, 50)
TextLabel.Font = Enum.Font.Gotham
TextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TextLabel.TextScaled = false
TextLabel.TextSize = 24.000
TextLabel.TextWrapped = true
local function BillLoop()
while wait() do
local pos = math.floor((BillboardGui.Parent.Position - BillboardGui.Parent.Position).magnitude)
TextLabel.Text = text.." Studs : "..tostring(pos)
end
end
Loop = game:GetService("RunService").RenderStepped:Connect(BillLoop)
end
setBill("Shop", game.Workspace["test part"])
local pos = math.floor((BillboardGui.Parent.Position
- BillboardGui.Parent.Position).magnitude)
TextLabel.Text = text.." Studs : "..tostring(pos)
这是您计算和设置 TextLabel 文本的地方。
BillboardGui.Parent.Position
是一个 Vector3。
BillboardGui.Parent.Position - BillboardGui.Parent.Position
是 (0,0,0)
零向量的大小即长度为 0
。
这可能不是您想要计算的。