Roblox中的"尝试使用'Connect'索引函数"是什么意思?

local Player = game.Players.LocalPlayer
local PlayerCash = Player:WaitForChild("leaderstats"):WaitForChild("Strength")
local Mouse = Player:GetMouse()
local amount = 50

script.Parent.Activate:Connect(function()
game.Players.LocalPlayer.leaderstats.money.Value = game.Players.LocalPlayer.leaderstats.money.Value  + amount
end)

我试图编写一个代码,点击时给Strength。当我按下“播放”时它不起作用。在输出中它只是说 '尝试使用'Connect'索引函数。'

点赞
用户2860267
用户2860267

错误“尝试使用[字段名]索引[类型]”意味着您错误地使用类似对象的东西,并且您正在尝试访问它的某些字段。

在您的情况下,此错误指向行:script.Parent.Activate:Connect。这意味着script.Parent.Activate是一个函数而不是表,您无法在函数上调用Connect。这只是帮助我们找出代码中错误的地方。

由于您正在使用Tools,因此有一个简单的解决方法。不要使用Activate函数,而应该使用Activated事件。所以只需像这样更改那行代码:

script.Parent.Activated:Connect(function()
2020-12-19 17:59:51
用户14593663
用户14593663

它将函数连接到事件上,就像这样:

local tool = script.Parent

-- 它将事件(装备工具)连接到一个函数上。
tool.Equipped:Connect(function()
  -- 代码
end)

另外,上面的答案是你解决问题的方法,并且在这里有一个快捷方式:你已经定义了“Player”,并且可以在函数内部使用它。祝大家有美好的一天,上帝保佑大家。

2020-12-20 18:57:24