Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
✓ ANSWER ACCEPTED

BackgroundColor3 On My Frame Not Changing, Help?

function ColourChange()
	repeat R = R+1 wait(0.1) game.StarterGui.Intro.Background.BackgroundColor3 = Color3.new(R,G,B) until R == 255
	if R == 255 then
	repeat B = B+1 wait(0.1) game.StarterGui.Intro.Background.BackgroundColor3 = Color3.new(R,G,B) until B == 255
	if R == 255 and B == 255 then
	repeat G = G+1 wait(0.1) game.StarterGui.Intro.Background.BackgroundColor3 = Color3.new(R,G,B) until G == 255
	if R == 255 and B == 255 and G == 255 then
	repeat R = R-1 wait(0.1) game.StarterGui.Intro.Background.BackgroundColor3 = Color3.new(R,G,B) until R == 0
	if R == 0 and B == 255 and G == 255 then
	repeat B = B-1 wait(0.1) game.StarterGui.Intro.Background.BackgroundColor3 = Color3.new(R,G,B) until B == 0
	if R == 0 and B == 0 and G == 255  then
	repeat G = G-1 wait(0.1) game.StarterGui.Intro.Background.BackgroundColor3 = Color3.new(R,G,B) until G == 0
	end
		
	end
	end
end

game.Players.PlayerAdded:connect(function()

repeat wait() until game.Players.LocalPlayer:FindFirstChild("PlayerGui")

 R = 0
 B = 0
 G = 0



repeat ColourChange() until game.StarterGui:FindFirstChild("Intro")

end)

I don't understand why it wont work. Basically I'm making An Intro and I want my background to change color gradually over time... The Parent Of This Script Is Workspace. Is it because I'm changing the starter gui and not the player gui or something else????????? I'm Really Stuck With This One

1 comment

0

Ding! Ding! Ding! You guessed it. Changes made in StarterGui won't follow over to the player.

1 answer

✓ Accepted answer

It's probably because the Color3 constructor takes three numbers between 0 and 1. You could divide your numbers by 255, or use Color3.fromRGB.

Apart from that, there's also a Color3:lerp method that would work much better than what you're currently doing.

Here's an example:

local StartColor = Color3.new(1,0,0)-- Red
local EndColor = Color3.new(0,0,1)-- Blue

local Frame = script.Parent

for i = 0,1,0.03 do
	wait()
	Frame.BackgroundColor3 = StartColor:lerp(EndColor,i)
end

This discussion is preserved as it was. New answers, comments, and votes are closed.