Hey!
So I made this kill counter which appears in the leaderstats, and for some reason it doesn’t work! Whenever I kill someone, my kills stay 0, and everyone else’s kills are just -. does anyone have a fix for this?
game.Players.PlayerAdded:Connect(function(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local kills = Instance.new("IntValue")
kills.Name = "Kills"
kills.Value = 0
kills.Parent = leaderstats
player.CharacterAdded:Connect(function(Character)
Character.Humanoid.Died:Connect(function(Died)
local creator = Character.Humanoid:FindFirstChild("creator")
local leaderstats = creator.Value:FindFirstChild("leaderstats")
if creator ~= nil and creator.Value ~= nil then
leaderstats.Kills.Value = leaderstats.Kills.Value + 1
end
end)
end)
end)
So I tested this script in a random game of mine just to see if it works before adding it into the current game, and for some reason it works. But, when I copy everything onto my current game, even the sword, it doesn’t work.
Your random game probably consisted of using a different leaderboard system, can you check if the sword will give the Target a creator ObjectValue when hit?
I don’t think this will work as you intend it to. It would be best to add a part in the sword script where it causes damage to things.
Something like:
sword.Touched:Connect(function(hit)
if hit.Parent and hit.Parent:FindFirstChild("Humanoid") then
if game.Players:GetPlayerFromCharacter(hit.Parent) then
local hum = hit.Parent:FindFirstChild("Humanoid")
if hum.Health > 0 then
if damage >= hum.Health then -- It would be best to have a variable to store the damage amount.
-- You can add some function to handle changing kills here as this would detect a death
hum:TakeDamage(damage)
else if damage < hum.Health then
hum:TakeDamage(damage)
end
end
end
end
end
end)
I just had an idea. So you know how at the beginning of the script it created a new folder? I have another leaderstat, which is wins. If there are two folders within leaderstats, does one break?