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

My terminal script is broken Why?

Asked by
IcyEvil 260 Moderation Voter
10 years ago

Alright, I am trying to make a good terminal script for my groups base but, It isn't working...

local wintime = 1200
local totaltime = 1200
local timegodown = 1 -- how many seconds of time go down for the term
local h = Instance.new("Hint")
script.Parent.Touched:connect(function(hit)
    if hit.Parent:findFirstChild("Humanoid") ~= nil then
        local player = game.Players:GetPlayerFromCharacter(hit.Parent)
        if player then
            if player.TeamColor == BrickColor.new("Really black") then
                script.Parent.BrickColor = BrickColor.new("Really black")
                h.Parent = game.Workspace
                h.Text = "The Necromongers Own the Term!"
                wait(3)
                h:Remove()
            end
            while wait() do
                if script.Parent.BrickColor == BrickColor.new("Really black") then
                    h.Parent = game.Workspace
                    while wait() do

                        h.Text = "The Necromongers have"..wintime-timegodown.." seconds left before Winning!" -- Only goes down 1 seconds and stays at 1199
                    end

                end
            end
        end
    end
end)

2 answers

Log in to vote
1
Answered by 10 years ago

It's because you're telling it to print the same value each time.

wintime = 1200 timegodown = 1

wintime-timegodown = 1199

It's going to output this every time because that's what it equals.

You need to do something like this:

while wait() do
h.Text = "The Necromongers have " .. wintime .. " seconds left before Winning!"
wintime = wintime-timegodown -- This assigns a new value to wintime each time thus dropping it by 1 each time giving you the result I believe you're looking for. 
end

Hope this helped!

0
It works! Thanks!! IcyEvil 260 — 10y
0
Np. I've ran into this problem myself a few times. FudgeFiddle 10 — 9y
Ad
Log in to vote
1
Answered by 10 years ago

You need to add somewhere in your script:

timegodown = timegodown - 1

Answer this question