I have a guibutton that when clicked, clones and welds a part based on a value within the button. However this doesn't work because the Remote Event that is fired when the button is clicked can't access the players GUI. I read on the Wiki that information can be passed with remote events. How would I do this? Hopefully I didn't word this too terribly and someone has an idea. Thanks in advance for any aid!
--The LocalScript--
local player = game:GetService("Players").LocalPlayer
script.Parent.MouseButton1Click:connect(function()
script.Parent.Parent.SelectedTrim.Value = script.Parent.Haircut.Value -- The value the event normally uses.
player.Character.PlayerData.AttireData.OutfitHelmet.Value = (script.Parent.Haircut.Value)
local e = game.ReplicatedStorage:WaitForChild("HaircutEvent")
e:FireServer()
end)
--The ServerScript--
function DescendList(player)
local DataLoad = player.Character:WaitForChild("PlayerData")
local WD = DataLoad.WeldingAids:FindFirstChild("WeldData")
local Weldee = DataLoad.WeldingAids.Weldee
local Hat = player.Character.PlayerEquipment.FakeHeadComponents
Hat:Destroy()
local Helm = DataLoad.AttireData.OutfitHelmet
local T = DataLoad.CharCustomData.HairStyle -- The value that I'm now using that I want to match the value of the button clicked.
Helm.Value = T.Value
Weldee.Value = Helm.Value
WD.Value = ("FakeHead")
PerformWeld(player)
print("Trimmed")
end
local event = game.ReplicatedStorage:WaitForChild("HaircutEvent") -- make sure the event in in ReplicatedStorage
event.OnServerEvent:connect(function(player) -- OnServerEvent automatically passes the player who fired it as the first argument.
DescendList(player)
end)
