Teleport only works first time I interact with it, but not the second time

I’m making a teleport system that when player interacts with a proximity prompt they get teleported somewhere else.

Explorer (there are multiple folders with multiple teleport parts):
image

Script (TeleportManager):

--Variables
local tele1 = script.Parent.Tele1
local tele2 = script.Parent.Tele2
local tele1d = script.Parent.Tele1Destination
local tele2d = script.Parent.Tele2Destination

local lightval1 = tele1.LightWhenTpedTo
local lightval2 = tele2.LightWhenTpedTo

local camval1 = tele1.CameraType
local camval2 = tele2.CameraType

local lightrems = game:GetService("ReplicatedStorage").LightingRemotes
local camrems = game:GetService("ReplicatedStorage").CamRemotes

--Functions
tele1.ProximityPrompt.Triggered:Connect(function(plr)
	local char = plr.Character
	local humanoidrootpart = char.HumanoidRootPart
	local camval = plr.camval
	
	
	game.ReplicatedStorage.fadeblackui_rem:FireClient(plr)

	wait(0.5)
	
	humanoidrootpart.Position = tele2d.Position

--	tele1.ProximityPrompt.Enabled = false
--	tele2.ProximityPrompt.Enabled = false

	tele1.Sound:Play()

	print("abt to do light")

	if lightval2.Value == "Inside_Normal" then
		lightrems.Inside.INSIDE_DayRemote:FireClient(plr)
	elseif lightval2.Value == "Inside_Dark" then
		lightrems.Inside.INSIDE_NightRemote:FireClient(plr)

	elseif lightval2.Value == "Outside_Normal" then
		lightrems.Outside.OUTSIDE_DayRemote:FireClient(plr)
	elseif lightval2.Value == "Outside_Dark" then
		lightrems.Outside.OUTSIDE_NightRemote:FireClient(plr)

	elseif lightval2.Value == "Shader_Normal" then
		lightrems.Shaders.ShadersDayRemote:FireClient(plr)
	elseif lightval2.Value == "Shader_Dark" then
		lightrems.Shaders.ShadersNightRemote:FireClient(plr)

	end
	
	print("light vals worked")
	
	
	
	
	
	if camval2.Value == "Top" and camval.Value ~= "Top" then
		camval.Value = "Top"
		camrems.Enable_Top_Remote:FireClient(plr)
		
	elseif camval2.Value == "Normal" and camval.Value ~= "Normal" then
		
		if camval.Value == "Top" then
			camrems.Disable_Top_Remote:FireClient(plr)
		elseif camval.Value == "Isometric" then
			camrems.Disable_Isometric_Remote:FireClient(plr)
		elseif camval.Value == "OTS" then
			camrems.Disable_OTShoulder_Remote:FireClient(plr)
		elseif camval.Value == "Side" then
			camrems.Disable_Side_Remote:FireClient(plr)
		end
		
		camval.Value = "Normal"

	elseif camval2.Value == "Side" and camval.Value ~= "Side" then
		camval.Value = "Side"
		camrems.Enable_Side_Remote:FireClient(plr)
		
	elseif camval2.Value == "Isometric" and camval.Value ~= "Isometric" then
		camval.Value = "Isometric"
		camrems.Enable_Isometric_Remote:FireClient(plr)
		
	elseif camval2.Value == "OTS" and camval.Value ~= "OTS" then
		camval.Value = "OTS"
		camrems.Enable_OTShoulder_Remote:FireClient(plr)
		
	else
		print("teleported to another area")
	end
	
	print("cam vals work")
	
	
	
	

	wait(1)

	tele1.ProximityPrompt.Enabled = true
	tele2.ProximityPrompt.Enabled = true

end)





tele2.ProximityPrompt.Triggered:Connect(function(plr)
	local char = plr.Character
	local humanoidrootpart = char.HumanoidRootPart
	local camval = plr.camval

	humanoidrootpart.Position = tele1d.Position
	
	game.ReplicatedStorage.fadeblackui_rem:FireClient(plr)

	wait(0.5)

--	tele1.ProximityPrompt.Enabled = false
--	tele2.ProximityPrompt.Enabled = false
	
	tele2.Sound:Play()
	

	if lightval1.Value == "Inside_Normal" then
		lightrems.Inside.INSIDE_DayRemote:FireClient(plr)
	elseif lightval1.Value == "Inside_Dark" then
		lightrems.Inside.INSIDE_NightRemote:FireClient(plr)
	elseif lightval1.Value == "Outside_Normal" then
		lightrems.Outside.OUTSIDE_DayRemote:FireClient(plr)
	elseif lightval1.Value == "Outside_Dark" then
		lightrems.Outside.OUTSIDE_NightRemote:FireClient(plr)

	elseif lightval1.Value == "Shader_Normal" then
		lightrems.Shaders.ShadersDayRemote:FireClient(plr)
	elseif lightval1.Value == "Shader_Dark" then
		lightrems.Shaders.ShadersNightRemote:FireClient(plr)

	end
	
	
	if camval1.Value == "Top" and camval.Value ~= "Top" then
		camval.Value = "Top"
		camrems.Enable_Top_Remote:FireClient(plr)

	elseif camval1.Value == "Normal" and camval.Value ~= "Normal" then

		if camval.Value == "Top" then
			camrems.Disable_Top_Remote:FireClient(plr)
		elseif camval.Value == "Isometric" then
			camrems.Disable_Isometric_Remote:FireClient(plr)
		elseif camval.Value == "OTS" then
			camrems.Disable_OTShoulder_Remote:FireClient(plr)
		elseif camval.Value == "Side" then
			camrems.Disable_Side_Remote:FireClient(plr)
		end

		camval.Value = "Normal"

	elseif camval1.Value == "Side" and camval.Value ~= "Side" then
		camval.Value = "Side"
		camrems.Enable_Side_Remote:FireClient(plr)

	elseif camval1.Value == "Isometric" and camval.Value ~= "Isometric" then
		camval.Value = "Isometric"
		camrems.Enable_Isometric_Remote:FireClient(plr)

	elseif camval1.Value == "OTS" and camval.Value ~= "OTS" then
		camval.Value = "OTS"
		camrems.Enable_OTShoulder_Remote:FireClient(plr)

	else
		print("teleported to another area")
	end
	
	
	
	wait(1)

	tele1.ProximityPrompt.Enabled = true
	tele2.ProximityPrompt.Enabled = true

end)

When I interact with Teleport 1, it teleports me and works basically perfectly. when i interact with teleport 2, it doesnt.

no error in output or f9 menu