I am curious as to why you don’t want to use Color3. Are you facing issues understanding how to use it or is it some other reason? Usually it makes life easier rather than having to do this.
Judging by @Ankur_007’s code, I think that’s the easiest way to get BrickColor from Color3.
I also modified it slightly to add a secondary color variable - if you want to use it in an ImageButton, do so and add the following code in a LocalScript under an ImageButton:
local primaryButton = script.Parent
local Primary_Color = BrickColor.new("Really red")
local Secondary_Color = BrickColor.new("Institutional white")
primaryButton.MouseButton1Click:Connect(function()
primaryButton.ImageColor3 = Primary_Color.Color
wait(3)
primaryButton.ImageColor3 = Secondary_Color.Color
end)
Edit the code however you like. If you’re instead planning to use an ImageLabel, delete lines 5 and 9 (the function).