How do I change a value in a tool from a GUI

Hello, I am trying to make one of those Free Building games, and I want the player to change what color a new part will be. However, It only stays white (default)

Here is my local script in the tool

local sp = script.Parent
local m = game.ReplicatedStorage.make

sp.Activated:Connect(function()
	
	local plr = game.Players.LocalPlayer
	local mouse = plr:GetMouse()
	local rpos = Vector3.new(math.floor(mouse.Hit.p.x / 2 + 0.5) * 2, (math.floor(mouse.Hit.p.y / 2 + 0.5) * 2)+1, math.floor(mouse.Hit.p.z / 2 + 0.5) * 2)
	
		m:FireServer(rpos,sp.BrickColor.Value);
	
	
end)
-- Trimmed to remove the selection thing

Server script for the RemoteEvent

local e = game.ReplicatedStorage.make
e.OnServerEvent:Connect(function(plr,pos,color)
	
	local p = game.ReplicatedStorage.Part:Clone()
	p.Position =  pos
	p.Parent = workspace[plr.Name.."p"] -- In player folder so nobody else can delete it
	p.Color = color -- Stays 255,255,255
end)
-- Trimmed
	
end)

Script in the GUI

local sp = script.Parent
local plr = sp.Parent.Parent.Parent.Parent -- server script
sp.MouseButton1Down:Connect(function()
	plr.Character.Build.BrickColor.Value = sp.BackgroundColor3
end)
1 Like

is the BrickColor instance a BrickValue, not a Color3 value?
part.Color is probably a Color3 value, not a BrickColor value

1 Like

The BrickColor Color3Value is located in the tool. It defaults to 255,255,255 and thats whats used for the part color.

1 Like

Do you used a color value for the BrickColor.Value ?

1 Like

Yes. (insert some garbage here to make this 30 chcracters)

I think its because you are changing the value without a remote event. Try firing a remite event which changes the color of the value

Okay. just some random text here lol