For some reason this always fires the "else" portion in lines 89-93. I can't figure out why. I printed out "term.owner.Value" right before this line of code and it prints out "none" which is exactly the condition that should make it fire the first part, not the else part.
Btw, I set the StringValue owner to "none" by default.
timer1 = game.Workspace.Timer1
timer2 = game.Workspace.Timer2
clickable = true
term = script.Parent
team_color = nil
function refresh_term()
-- is this needed?
end
function find_team(color)
for i,v in pairs(game.Teams:GetChildren()) do
if v.TeamColor == color then
return v
else
-- n/a
end
end
end
function cappable(player)
if tostring(player.TeamColor) ~= team_color and player.TeamColor ~= "Black" then
team_color = tostring(player.TeamColor)
return true
else
return false
end
end
function proper_grammar_lol(team)
if tostring(team) == "FEAR" or tostring(team) == "fear" then
return "s"
else
return ""
end
end
function start_timer()
end
function stop_timer(Owner, capturer)
-- needs to go backwards
end
function cap_term_first_time(team)
local gui = game.Workspace.GUIpart.SurfaceGui.Frame.MovingFrame
local limit = 350 -- size of underlying frame
local i = 0
local pixels = 3.5 -- pixels per .1 second
gui.BackgroundColor3 = team.TeamColor.Color
while i <= limit do
gui.Size = gui.Size + UDim2.new(0, pixels, 0, 0)
i = i + pixels
wait(.1)
end
term.owner.Value = tostring(team)
timer1.change1.BrickColor = team.TeamColor
timer1.change2.BrickColor = team.TeamColor
timer1.change3.BrickColor = team.TeamColor
timer1.change4.BrickColor = team.TeamColor
timer2.change1.BrickColor = team.TeamColor
timer2.change2.BrickColor = team.TeamColor
timer2.change3.BrickColor = team.TeamColor
timer2.change4.BrickColor = team.TeamColor
gui.Parent.TextLabel.Text = tostring(team).." own"..proper_grammar_lol(team).." the terminal."
gui.Parent.TextLabel.TextColor3 = team.TeamColor.Color
end
function cap_term(team)
local m = Instance.new("Message", workspace)
m.Text = "YES"
end
script.Parent.ClickDetector.MouseClick:connect(function(hit)
if clickable == true then
clickable = false
local player = game.Players:findFirstChild(tostring(hit))
if cappable(player) then
if term.owner.Value == "none" then
cap_term_first_time(find_team(player.TeamColor)) -- CAP TERM FIRST TIME
else
cap_term(find_team(player.TeamColor)) -- CAP TERM ANY OTHER TIME
end
else
-- not cappable
end
else
print("nah b")
end
clickable = true
end)

2 comments
From what I see, you have no function callers.
What do you mean?