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!
