Roblox的if语句未运行

我想知道是否能在这个小测试脚本中得到一些帮助。 出于某种原因,if语句未执行,意味着该函数不会运行,即使该值不等于Rinzler。更具体地说,charData是一个StringValue。

local charData = script.Parent.Data.CharacterData
local active = game.Workspace.Part

function change()
    if not charData.Value == "Rinzler" then
        charData.Value = "Rinzler"
        print("角色已更改为Rinzler。")
    end
end

active.Touched:Connect(change)

无论我做什么,"角色已更改为Rinzler"都不会在控制台中打印出来。

点赞
用户5675002
用户5675002

问题在于if not charData.Value == "Rinzler" not运算符在运算符优先级列表中优先级最高。 将代码更新为:

function change()
    if charData.Value ~= "Rinzler" then
        charData.Value = "Rinzler"
        print("角色已经变成了 Rinzler。")
    end
end
2018-09-30 18:41:35