local enabled = true
local ding = game.Workspace.Sounds.Ding -- sound
local part = game.Workspace.Configuration.DesertScout1 -- name
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local UserInputService = game:GetService("UserInputService")
local PlayerGui = player:WaitForChild("PlayerGui")
local toolup = PlayerGui:WaitForChild("clickE")
local maxpickup = 20
local gui = PlayerGui.HatUI.DesertScoutAdd
UserInputService.InputBegan:Connect(function(input,gameProccesedEvent)
local item = mouse.Target
local distance = player:DistanceFromCharacter(item.Position)
if mouse.Target == part and enabled == true and distance <= maxpickup and input.KeyCode == Enum.KeyCode.E then
ding:Play()
gui.Enabled = true
part.Position = Vector3.new(100,100,100)
enabled = false
part.Transparency = 1
part.CanCollide = false
game.ReplicatedStorage.HatEvent.DesertScoutEvent:FireServer()
wait(1)
gui.Enabled = false
enabled = true
part.Transparency = 0
part.CanCollide = true
end
end)
COMMUNITY QUESTION
For some reason the 'gui' is destroyed on respawn, no scripts or property is destroying it?
1 answer
Hello. All gui's reset on spawn unless you set its ResetOnSpawn property to false. You don't even need a script for that.
This discussion is preserved as it was. New answers, comments, and votes are closed.

2 comments
I know, it is set to false
Well, you should've said more than just giving us your script.