Roblox Kick Argument 1 缺失

Roblox Kick Argument 1 missing

当我输入我的用户名然后输入原因然后使用下面的这些脚本按下踢球时,我总是缺少参数 1:

本地

local Replicated = game:GetService("ReplicatedStorage")
local reason = script.Parent.Parent.Reason
local player = script.Parent.Parent.Name

script.Parent.MouseButton1Click:Connect(function()
    Replicated.Events.Kick:FireServer(player.Text, reason.Text)
end)

服务器

local KickPlayer = game.ReplicatedStorage.Events.Kick

KickPlayer.OnServerEvent:Connect(function(Name,Reason)
    game.Players:FindFirstChild(Name):Kick(Reason)
end)

编辑:这个可以,但另一个不行

KickPlayer.OnServerEvent:Connect(function(Name,Reason)
    game.Players:FindFirstChild("username"):Kick(Reason)
end)

EDIT2: 这给出 ServerScriptService.Event_Handler:14: 尝试用 'Kick'

索引 nil
KickPlayer.OnServerEvent:Connect(function(Player,Reason)
    game.Players:FindFirstChild(Player):Kick(Reason)
end)

用这个替换服务器脚本

local KickPlayer = game.ReplicatedStorage.Events.Kick

KickPlayer.OnServerEvent:Connect(function(_, Name,Reason) -- "_" is the player instance
    game.Players:FindFirstChild(Name):Kick(Reason)
end)

这是“RemoteEvent.OnServerEvent”的原型

 RBXScriptSignal OnServerEvent ( Instance player , Tuple arguments )