local me = script.Parent
local players = game:GetService("Players")
me.Touched:Connect(function(Hit)
local player = players:GetPlayerFromCharacter(Hit.Parent)
if player.TookMoney.Value == true then
player.TookMoney.Value = false
end
end)
它必须使TookMoney。Value = false但是显示"attempt to index nil with 'TookMoney' -script:6"
touched
事件在所有对象上触发,包括非玩家。因此players:GetPlayerFromCharacter
可以返回nil。执行nil检查,例如:
me.Touched:Connect(function(Hit)
local player = players:GetPlayerFromCharacter(Hit.Parent)
if player and player.TookMoney.Value == true then
player.TookMoney.Value = false
end
end)
根据你的设置,你也可以检查玩家是否有TookMoney
。