Hi all! I’ve got a bug that I’m very confused by here so here goes:
Entering into the GUI and changing outfits etc works fine (for the most part - some buggy stuff going on as you can see in the clip shown but that’s just because I’ve been messing around with storing data so its not all working properly) when you first go into the actual GUI
but then it takes a second button press to enter into the GUI on the second time if you press “Save” rather than “Exit”
Disabling the saving in the save button fixes it if you click on another part of the GUI then save, but remains an issue if you don’t click on another part of the GUI - and also does not work if the saving still occurs
Attempting to put in any form of wait does not fix it, the exit button works as intended no matter what
It works as intended besides the issue of requiring 2 presses on the prompt - the prompt shows up normally when you go to it regardless of what you’ve done
I’ve double checked to try and find the root of the issue and it occurs between sending a call to the client and the client actually receiving the event - the first time the client does not receive the event but the second time it does
Anyone got any explanation or fixes for this?
Below is some samples of the code:
-- Proximity Prompt code
script.Parent.ProximityPrompt.Triggered:Connect(function(player)
print("ok")
player.Character.Humanoid:UnequipTools()
local Gui = game.ReplicatedStorage.Guis.MorphChanger:Clone()
Gui.Parent = player.PlayerGui
repeat wait() until player.PlayerGui:FindFirstChild("MorphChanger")
print("Server call...")
game.ReplicatedStorage.Events.ChangeArmour:FireClient(player)
end)
-- Exit button code
script.Parent.Frame.ExitButton.Activated:Connect(function()
active = false
StarterGui:SetCore("TopbarEnabled", true)
StarterGui:SetCoreGuiEnabled("Backpack", true)
StarterGui:SetCore("ResetButtonCallback",true)
script.Parent:Destroy()
Dummy:Destroy()
Camera.CameraType = "Custom"
Camera.CFrame = player.Character.Head.CFrame
end)
-- Save button code
script.Parent.Frame.SaveButton.Activated:Connect(function()
active = false
local playerLoaded = true
if(newHelmetName == nil) then
newHelmetName = "Remove"
end
if newAccessoryName == nil then
newAccessoryName = "Remove"
end
if newVestName == nil then
newVestName = "Remove"
end
if newClothesName == nil then
newClothesName = "Remove"
end
StarterGui:SetCore("TopbarEnabled", true)
StarterGui:SetCoreGuiEnabled("Backpack", true)
StarterGui:SetCore("ResetButtonCallback",true)
script.Parent.Frame.SaveButton.Active = false
Camera.CameraType = "Custom"
Camera.CFrame = player.Character.Head.CFrame
game.ReplicatedStorage.Events.SaveArmour:FireServer(newPlayerHelmet, newPlayerVest, newPlayerClothes, newPlayerBackpack, newPlayerAccessory, newHelmetName, newVestName, newClothesName, newBackpackName, newAccessoryName, playerLoaded)
script.Parent:Destroy()
Dummy:Destroy()
end)