我查看了许多其他问题及其答案,但我似乎仍然无法修复此错误消息。我正在编写一个脚本,允许一个玩家更改另一个玩家的面孔。由于新的ROBLOX更新与FE兼容,因此即使服务器脚本中存在错误,我也将本地脚本和服务器脚本放在下面。
本地脚本:
plr = script.Parent.Parent.Parent.NameInput.Text
script.Parent.MouseButton1Click:Connect(function()
script.Parent.RemoteEvent:FireServer(plr)
end)
服务器脚本:
faceid = script.Parent.FaceID.Value
script.Parent.RemoteEvent.OnServerEvent:Connect(function(plr)
script.Parent.PName.Value = plr
local plrname = script.Parent.PName.Value
print (plrname)
game.Players[script.Parent.PName.Value].Character.Face.Texture = faceid
end)
层次结构: This is the image of the hierarch of the GUI I am creating
服务器脚本有点混乱,因为我尝试了几种不同的方法来解决此错误,因此,如果您认为我可以更改任何内容或添加/删除任何内容,我将感谢您的反馈。但是,当前的主要问题是我在第4行上遇到的错误。第7行上也有一个先前的错误,其中说“错误的参数2到'?”。 (期望字符串,得到Object)”,但我想先解决此问题。如果尝试帮助我的人认为有必要,通常会对脚本提供帮助。
预先感谢您, 罗汉
答案 0 :(得分:1)
您应该使用plr
来获得plr.Name
的名称,而不是使用faceid = script.Parent.FaceID.Value
script.Parent.RemoteEvent.OnServerEvent:Connect(function(plr)
script.Parent.PName.Value = plr.Name -- edit was here
local plrname = script.Parent.PName.Value
print (plrname)
game.Players[script.Parent.PName.Value].Character.Face.Texture = faceid
end)
。这样,您将告诉系统播放器的名称而不是获取对象。< / p>
$request