Roblox Studio Lua:为杀死剧本赚取现金

时间:2018-06-17 03:58:55

标签: lua

所以,我正在制作一个Roblox游戏,这是一场战斗游戏。我想为杀戮脚本赚钱,这意味着每次杀戮,KILLER获得+10现金,你开始时只需0现金。排行榜上的名称应为现金。有人可以为此制作一个剧本吗?我已尝试过网络上的所有内容,所以我希望你们能提供帮助。请在脚本中包含排行榜Cash。提前谢谢!

更新 我已经包含了脚本的代码,但它不是给我现金,而是给死者提供现金。我该如何解决这个问题?

以下是代码:

game.Players.PlayerAdded:connect(function(player)
local folder = Instance.new("Folder",player)
folder.Name = "leaderstats"
local currency1 = Instance.new("IntValue",folder)
currency1.Name = "Cash"
player.CharacterAdded:connect(function(character)
character:WaitForChild("Humanoid").Died:connect(function()
local tag = character.Humanoid:FindFirstChild("creator")
if tag ~= nil then
if tag.Value ~= nil then
 currency1.Value = currency1.Value + 10 --This is the reward after the player 
 died.
    end
   end
  end)
 end)
end)

2 个答案:

答案 0 :(得分:0)

如果您没有脚本编写经验,这是一项复杂的任务。这需要您的武器系统跟踪谁杀死,并将其提供给排行榜。 如果你使用默认的Roblox武器,这个功能可能已经在你的武器中。如果你正在制作自定义武器,你需要自己实现。

我建议您查看Roblox Wiki以获取排行榜的示例。 This is a relevant article about Leaderboards。 工具箱中还有很多排行榜可供您根据需要进行编辑。在排行榜的“Roblox集”部分中找到的默认排行榜增加了一个名为“杀死”的计数器(使用默认的Roblox武器),你可以编辑它以增加现金。然而 - 再次 - 取决于你如何跟踪你的杀戮。

下次请提供您已尝试过的代码和/或更详细的说明,以便我们更方便地帮助您理解或指导您。现在看起来你自己没有真正搜索过,只是马上发布了你的问题。

答案 1 :(得分:0)

您增加了currency1中的金额。但是currency1属于player,是拥有.Died的人!

假设creator是一个ObjectValue,其Value是杀手的Player实例,我们可以得到那个玩家的“现金”来增加:

....
if tag ~= nil then
    local killer = tag.Value
    if killer ~= nil then
        -- Find the killer's leaderstats folder
        local killerStats = killer:FindFirstChild("leaderstats")

        if killerStats ~= nil then
            -- Find the killer's Cash IntValue
            local killerCash = killerStats:FindFirstChild("Cash")

            -- Increase cash as before
            killerCash.Value = killerCash.Value + 10
        end
   end
end
......