Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Can someone help me with checkpoint system - almost done?

Asked by 9 years ago

Hello, I have problem with checkpoint system to my game. I think succesfully connected two scripts, but you guys should check it. Now my problem is with checkpoint pad, which should player spawn there and add next checkpoint to leaderboard... im using checkpoint leaderboard gui.

Here is script with my leaderboard, i know it's long script:

game.Players.PlayerAdded:connect(function(player)
    local leaderstats = Instance.new("IntValue",player)
    leaderstats.Name = "leaderstats"

    local points = Instance.new("NumberValue",leaderstats)
    points.Name = "Points"
    points.Value = 0

    local P = game.StarterGui.Points.Frame.Point
    P.Text = " "..points.Value

end)

    function oa (object)
    local player = game.Players:GetPlayerFromCharacter(object)
    if player ~= nil then
        local ls = player.leaderstats
        local sl = game.Workspace:FindFirstChild(ls.Checkpoints.Value)
        print ("Run")
        object.Torso.CFrame = object.Torso.CFrame + Vector3.new(0,3,0)
        wait()
        object.Torso.CFrame = sl.CFrame + Vector3.new(0,3,0)
    end
end

    function oe (object)
    if object.ClassName == "Player" then
        local leaderstats = Instance.new("IntValue")
        leaderstats.Name = "leaderstats"
        local checkpoint = Instance.new("NumberValue")
        checkpoint.Name = "Checkpoints"
        checkpoint.Value = 1
        checkpoint.Parent = leaderstats
        leaderstats.Parent = object

    local C = game.StarterGui.Checkpoints.Frame.Check
    C.Text = " "..checkpoint.Value
    end
end
game.Players.ChildAdded:connect(oe)
game.Workspace.ChildAdded:connect(oa)

Here is script with pad:

function cp (hit)
    if hit.Parent ~= nil then
        local player = game.Players:GetPlayerFromCharacter(hit.Parent)
        if player ~= nil then
            if player.leaderstats.Checkpoints.Value == script.Parent.Name - 1 then
                local s = hit.Parent:FindFirstChild("Humanoid")
                if s ~= nil then
                    if s.Health ~= 0 then
                        player.leaderstats.Checkpoints.Value = script.Parent.Name
                    end
                end
            end
        end
    end
end

script.Parent.Touched:connect(cp)

So please help me fix it or just say what's wrong is with this.

Answer this question