如何制作if命令来更改脚本的功能,该脚本由2种不同的工具激活,以尝试更新不同的领导者统计信息

时间:2019-05-20 22:07:50

标签: scripting roblox

基本上,我试图使两个工具激活相同的功能,除了一个工具使功能更新一个领导者统计信息,而另一个工具使功能更新另一个领导者统计信息

local remote = game.ReplicatedStorage.Give

remote.OnServerEvent:Connect(function(Player)
    local plr = Player
    if Activated by Starterpack.Child.Cloud then
    plr.leaderstats.JumpBoost.Value = plr.leaderstats.JumpBoost.Value +10
    or if Activated by Starterpack.Child.Speed then
        plr.leaderstats.Speed.Value = plr.Leaderstats.Speed.Value +10
    end
end)

我希望它允许一个工具激活与另一个工具相同的功能,但更改不同的领导者统计

1 个答案:

答案 0 :(得分:0)

RemoteEvent.FireServer允许您在调用它时传递任意数量的args。让您的工具各自提供不同的标识符,然后您可以在RemoteEvent.OnServerEvent中取消标识符。

工具1内的LocalScript-云

local remoteGive = game.ReplicatedStorage.Give
local tool = script.Parent
tool.Equipped:Connect(function()
    remoteGive:FireServer("Cloud")
end

工具2中的LocalScript-速度

local remote = game.ReplicatedStorage.Give
local tool = script.Parent
tool.Equipped:Connect(function()
    remote:FireServer("Speed")
end)

服务器脚本

local remote = game.ReplicatedStorage.Give

remote.OnServerEvent:Connect(function(Player, toolId)
    if toolId == "Cloud" then
        Player.leaderstats.JumpBoost.Value = Player.leaderstats.JumpBoost.Value + 10

    elseif toolId == "Speed" then
        Player.leaderstats.Speed.Value = Player.Leaderstats.Speed.Value + 10
    end
end)