So I’ve got this script that basically colours a part if the player touches it. And I also recently made it to give money to the player per colouring via a remote event. However, it gives money every time the player touches the part and not just once when it colours it. How can I fix this?
--COLORS:
local cork = BrickColor.new("Cork")
local green = BrickColor.new("Bright green")
--
local function onGrassTouch(part)
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local remoteEvent = ReplicatedStorage:WaitForChild("GiveMoney")
if part.Name == "Desert" and part.BrickColor ~= "Cork" then
part.BrickColor = cork
part.BrickColorValue.Value = part.BrickColor
remoteEvent:FireServer() -- gives money to the player
else
print("oof")
end
---------------------
if part.Name == "Grass" then
part.BrickColor = green
part.BrickColorValue.Value = part.BrickColor
else
print("oof")
end
end
for _, object in next, character:GetChildren() do
if object:IsA("BasePart") then
object.Touched:Connect(onGrassTouch)
end
end