Background color not changing

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? I want to make it so when a player clicks “Go” button, the power they landed on will shoot the golf ball at that position.

  2. What is the issue? It doesn’t work, but the prints work??

  3. What solutions have you tried so far? Did you look for solutions on the Developer Hub? Yes. I did. I did not find any solutons.

After that, you should include more details if you have any. Try to make your topic as descriptive as possible, so that it’s easier for people to help you!

-- MADE BY DEVKEIA -----------------------
-- PROPERTY OF GGS (Great Golf Studios) --
-- PLEASE DONT STREAL OUT ASSETS ---------

--// Services
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")

--// Varibles

local Opened = false

--// Objects
local MainGui = script.Parent.MainGUI
local PowerFrame = MainGui:WaitForChild("power")
local GoButton = PowerFrame:WaitForChild("go")

local Remotes = ReplicatedStorage:WaitForChild("Remotes")

--// Text Labels
local Green = PowerFrame:WaitForChild("Green")
local Red = PowerFrame:WaitForChild("Bad")
local DarkBlue = PowerFrame:WaitForChild("DarkBlue")
local Blue = PowerFrame:WaitForChild("Blue")
local Yellow = PowerFrame:WaitForChild("Yellow")
local Orange = PowerFrame:WaitForChild("Orange")
local currentColor = Green
local neededBC = BrickColor.Gray()
local Player = Players.LocalPlayer

print("Test")

task.wait(3)

print("2")

local cc:StringValue = Player.CurrentColor.Value
local guiColor:BrickColorValue = Player.guiColor.Value

local openedFrame = Green

local guiColorObject = Player.guiColor
------------------------------------------------

print("after lines")

--// Main Code

print("got to main code")

while Opened == false do
    
    print("got there...")
    cc = "Green"
    currentColor = Green
    guiColor = BrickColor.Green()
    
    task.wait(0.3)
    
    print("red")
    cc = "Red"
    currentColor = Red
    guiColor = BrickColor.new("Red flip/flop")
    
    task.wait(0.5)
    
    cc = "Orange"
    currentColor = Orange
    guiColor = BrickColor.new("Neon orange")
    
    task.wait(0.4)
    
    cc = "Blue"
    currentColor = Blue
    guiColor = BrickColor.Blue()
    
    task.wait(0.3)
    
    cc = "DarkBlue"
    currentColor = DarkBlue
    guiColor = BrickColor.new("Dark blue")
    
    task.wait(0.6)
    
    cc = "Yellow"
    currentColor = Yellow
    guiColor = BrickColor.new("Yellow flip/flop")
end

guiColorObject:GetPropertyChangedSignal("Value"):Connect(function()
    -- here --
    currentColor.BackgroundColor = guiColorObject.Value
end)

GoButton.MouseButton1Click:Connect(function()
    Opened = true
end)

Please tell me the issue…

local cc:StringValue = Player.CurrentColor.Value
local guiColor:BrickColorValue = Player.guiColor.Value

will only save the value of the ValueBase at that time, and using variables to change it will not replicate to the value itself.
You could remove the .Value from those two lines and put them in your while loop.


    print("got there...")
    cc = "Green"
    currentColor = Green
    guiColor.Value = BrickColor.Green()
    
    task.wait(0.3)
    
    print("red")
    cc = "Red"
    currentColor = Red
    guiColor.Value = BrickColor.new("Red flip/flop")
    
    task.wait(0.5)
    
    cc = "Orange"
    currentColor = Orange
    guiColor.Value = BrickColor.new("Neon orange")
    
    task.wait(0.4)
    
    cc = "Blue"
    currentColor = Blue
    guiColor.Value = BrickColor.Blue()
    
    task.wait(0.3)
    
    cc = "DarkBlue"
    currentColor = DarkBlue
    guiColor.Value = BrickColor.new("Dark blue")
    
    task.wait(0.6)
    
    cc = "Yellow"
    currentColor = Yellow
    guiColor.Value = BrickColor.new("Yellow flip/flop")

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.