格式化文本标签未显示正确的值

问题描述 投票:0回答:1

我需要有关 Roblox 中汽车油量表的帮助。

设置: DriveSeat (VehicleSeat) 和 GasValue (NumberValue) 属于同一车型。 我有一个带有 TextLabel 的 GasGUI,可以显示气体百分比。 我在

LocalScript
中使用了
TextLabel

问题是,即使我进入汽车,脚本也只显示“Gas:--%”,而我希望它显示汽车中有多少汽油。

local player = game.Players.LocalPlayer
local gasLabel = script.Parent
gasLabel.Text = "Gas: --%"

local function onDriveSeatChanged(driveSeat)
    if driveSeat.Occupant and driveSeat.Occupant.Parent == player.Character then
        local car = driveSeat.Parent
        local gasValue = car:FindFirstChild("GasValue")

        if gasValue then
            gasLabel.Text = "Gas: " .. math.floor(gasValue.Value) .. "%"
            gasValue:GetPropertyChangedSignal("Value"):Connect(function()
                gasLabel.Text = "Gas: " .. math.floor(gasValue.Value) .. "%"
            end)
        else
            gasLabel.Text = "Gas: N/A"
        end
    else
        gasLabel.Text = "Gas: --%" 
    end
end

我不确定什么不起作用。

lua roblox
1个回答
0
投票

在函数中,您不检查

driveSeat
参数是否是座位对象。将其余代码放在 if
if driveseat:IsA("Seat") then
中。此外,您也没有在代码中连接该函数。通过这个
seat.Sat:Connect(OnDriveSeatChanged)
连接该功能。确保您的代码被正确调用并且未知参数被用作对象。

© www.soinside.com 2019 - 2024. All rights reserved.