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

How do i fix this? On the GUI it says 4 players but there is 2 and it does not give you money!?

Asked by 5 years ago
Edited by M39a9am3R 5 years ago

I need help please this does not work on the GUI it says 4 players but there is 2 and at the end of every match it does not give you Bucks (game money). And it does not teleport the players back when a player has won and it does not say the name on the GUI to show the player won! Please help me!

The script is here...

-- Define variables

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local ServerStorage = game:GetService("ServerStorage")

local MapsFolder = ServerStorage:WaitForChild("Maps")

local Status = ReplicatedStorage:WaitForChild("Status")

local GameLength = 100

local reward = 25

-- Game loop

while true do

    Status.Value = "Waiting for enough players..."

    repeat wait(1) until game.Players.NumPlayers >= 2 

    Status.Value = "Intermission"

    wait(10)

    local plrs = {}

    for i,player in pairs(game.Players:GetPlayers()) do
        if player then
            table.insert(plrs,player) -- Add each player into plrs table
        end
    end

    wait(2)

    local AvailableMaps = MapsFolder:GetChildren()

    local ChosenMap = AvailableMaps[math.random(1,#AvailableMaps)]

    Status.Value = ChosenMap.Name.." Chosen"

    local ClonedMap = ChosenMap:Clone()
    ClonedMap.Parent = workspace

    -- Teleport players to the map 

    local SpawnPoints = ClonedMap:FindFirstChild("SpawnPoints")

    if not SpawnPoints then
        print("SpawnPoints not found!")
    end

    local AvailableSpawnPoints = SpawnPoints:GetChildren()

    for i,player in pairs(game.Players:GetPlayers()) do
        if player then
            table.insert(plrs,player)
            character = player.Character

            if character then
                -- Teleport them

                character:FindFirstChild("HumanoidRootPart").CFrame = AvailableSpawnPoints[1].CFrame
            table.remove(AvailableSpawnPoints,1)


                -- Give them a sword 

                local sword = ServerStorage.Sword:Clone()
                sword.Parent = player.Backpack

                local GameTag = Instance.new("BoolValue")
                GameTag.Name = "GameTag"
                GameTag.Parent = player.Character

            else
                -- There is no character
                if not player then 
                    table.remove(plrs,i)
                end
            end
        end
    end

Status.Value = "Get ready to play!"

wait(2)

for i = GameLength,0,-1 do

    for x, player in pairs(plrs) do
        if player then

            character = player.Character

            if not character then 
                -- Left the game
            else
                if character:FindFirstChild("GameTag") then
                    -- They are still alive
                    print(player.Name.." is still in the game!")
                else
                    -- They are dead
                    table.remove(plrs,x)
                    print(player.Name.."has been removed!")
                end
            end

        else
            table.remove(plrs,x)
            print(player.Name.."has been removed!")
        end
    end

    Status.Value = "There are "..i.." seconds reamaining, and "..#plrs.." left"
    if #plrs == 1 then
        -- Last person standing
        Status.Value = "The winner is"..plrs[1].Name
        plrs[1].leaderstats.Bucks.Value = plrs[1].leaderstats.Bucks.Value + 50
        break
    elseif #plrs == 0 then
        Status.Value = "Nobody won!"
        break
    elseif i == 0 then
        Status.Value = "Time up!"
        break
    end

    wait(1)

  end

print("End of game")

for i, player in pairs(game.Players:GetPlayers()) do
    character = player.Character

    if not character then
        -- Ignore them
    else
        if character:FindFirstChild("GameTag") then
            character.GameTag:Destroy()
        end

        if player.Backpack:FindFirstChild("Sword") then
        player.Backpack.Sword:Destroy() 
        end

        if character:FindFirstChild("Sword") then
         character.Sword:Destroy()
        end

    end

    player:LoadCharacter()
end

ClonedMap:Destroy()

Status.Value = "Game ended"

wait(2)

end
0
Sorry, way too long scripts to read right now. FrostedFlakes67 71 — 5y
0
Is this from the AlvinBlox Sword Game Tutorial? RedstonecraftHD 25 — 5y
0
Edited for code block. M39a9am3R 3210 — 5y
0
Yes this is from AlinBlox but i have corrected some parts based on feedback from here but still it does not work fully! Cleverwolfano -10 — 5y
0
Please help!! Cleverwolfano -10 — 5y

Answer this question