所以,我正在制作一个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)
答案 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
......