So I have a script that removes a first (character selection) gui and makes adjustments to a second gui. I use a client to server RemoteEvent technique.
script 'GameIntroHandler': (located in ReplicatedStorage -> gui: ScreenGui -> the script: GameIntroHandler
local RepStore = game:GetService("ReplicatedStorage") local GameIntroEvent = RepStore:WaitForChild("GameIntroEvent") local screen = script.Parent:WaitForChild("Screen") local MadeByText = screen:FindFirstChild("MadeBy") local GameLogo = screen:FindFirstChild("Image") local Sound = script.HorrorSound GameIntroEvent.OnServerEvent:Connect(function(Player) print("Screen Is Visible") wait(1) for i = 1,100 do wait(.004) MadeByText.TextTransparency = MadeByText.TextTransparency -.01 end wait(1) for i = 1,100 do wait(.004) MadeByText.TextTransparency = MadeByText.TextTransparency +.01 end wait(2.5) Sound:Play() wait(0.1) GameLogo.ImageTransparency = 0 MadeByText.Visible = false wait(3) for i = 1,100 do wait(.004) screen.BackgroundTransparency = screen.BackgroundTransparency +.01 end wait(0.5) for i = 1,100 do wait(.004) GameLogo.ImageTransparency = GameLogo.ImageTransparency +.01 end GameLogo.Visible = false screen.Visible = false end)
local script 'LocalCharacterChoice': (located in StarterPlayer -> StarterPlayerScripts -> the script: LocalCharacterChoice
local RepStore = game:GetService("ReplicatedStorage") local ChoiceEvent = RepStore:WaitForChild("ChoiceEvent") local GameIntroEvent = RepStore:WaitForChild("GameIntroEvent") local Player = game:GetService("Players").LocalPlayer local PlayerGui = Player:WaitForChild("PlayerGui") local StarterGui = game:GetService("StarterGui") local ScreenGui = RepStore:WaitForChild("ScreenGui"):Clone() ScreenGui.Parent = PlayerGui local gui = ScreenGui.Main local secondgui = ScreenGui.Screen local guiCharacter1 = gui.Character1 local guiCharacter2 = gui.Character2 local guiCharacter3 = gui.Character3 local whitetext = gui.WhiteText local redtext = gui.RedText local soundservice = game:GetService("SoundService") local soundeffect = soundservice:WaitForChild("SelectSoundEffect") local b1, b2, b3 = gui.Character1, gui.Character2, gui.Character3 b1.MouseButton1Click:Connect(function() ChoiceEvent:FireServer(1) soundeffect:Play() wait(1) for i = 0,1,.01 do guiCharacter1.ImageTransparency = i guiCharacter2.ImageTransparency = i guiCharacter3.ImageTransparency = i whitetext.TextTransparency = i whitetext.TextStrokeTransparency = i redtext.TextTransparency = i redtext.TextStrokeTransparency = i wait(0.01) end gui.Visible = false secondgui.Visible = true GameIntroEvent:FireServer() end) b2.MouseButton1Click:Connect(function() ChoiceEvent:FireServer(2) soundeffect:Play() wait(1) for i = 0,1,.01 do guiCharacter1.ImageTransparency = i guiCharacter2.ImageTransparency = i guiCharacter3.ImageTransparency = i whitetext.TextTransparency = i whitetext.TextStrokeTransparency = i redtext.TextTransparency = i redtext.TextStrokeTransparency = i wait(0.01) end gui.Visible = false secondgui.Visible = true GameIntroEvent:FireServer() end) b3.MouseButton1Click:Connect(function() ChoiceEvent:FireServer(3) soundeffect:Play() wait(1) for i = 0,1,.01 do guiCharacter1.ImageTransparency = i guiCharacter2.ImageTransparency = i guiCharacter3.ImageTransparency = i whitetext.TextTransparency = i whitetext.TextStrokeTransparency = i redtext.TextTransparency = i redtext.TextStrokeTransparency = i wait(0.01) end gui.Visible = false secondgui.Visible = true GameIntroEvent:FireServer() end)
I do not get errors and the first gui disappears but nothing shows up on the second gui. The gui loads in but the function is not called. What is the solution?
Thank you in advance!