function onTalk()
	local location = ""
	local hasgolden = getFlag("flag_golden")
	if arguments and type(arguments) == 'string' then
		location = arguments
	end
	if hasgolden == true then
		wait(0.2)
		teleport(232, 152, "GymHub")
		endCutscene()
	end
	disableMovement()
	choiceDialog({
	{
		"Violet_HardlistGyms_Close",
		onChosen = function ()
				closeChoiceDialog()
		end
	},
	{
		"Violet_HardlistGyms_Hub",
		onChosen = function ()
				teleport(232, 152, "GymHub")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_0",
		requires =
		function ()
			if location == "Obscure_0" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(-200, 152, "RetentionTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_1",
		requires =
		function ()
			if location == "Obscure_1" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(0, 152, "RetentionTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_2",
		requires =
		function ()
			if location == "Obscure_2" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(500, 152, "RetentionTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_3",
		requires =
		function ()
			if location == "Obscure_3" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(300, 100, "ObscureTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_4",
		requires =
		function ()
			if location == "Obscure_4" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(500, 100, "ObscureTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_5",
		requires =
		function ()
			if location == "Obscure_5" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(700, 100, "ObscureTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_6",
		requires =
		function ()
			if location == "Obscure_6" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(1000, 152, "ObscureTech")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_7",
		requires =
		function ()
			if location == "Obscure_7" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(-1000, 0, "ObscureTech2")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_8",
		requires =
		function ()
			if location == "Obscure_8" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(0, 0, "ObscureTech2")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	},
	{
		"Violet_PlusOneGym_Obscure_loc_9",
		requires =
		function ()
			if location == "Obscure_9" then
				return false
			end
			return true
		end,
		onChosen = function ()
				teleportTo(0, 0, "ObscureTech3")
		end,
		onEnd = function ()
                closeChoiceDialog()
		end
	}
	})
	enableMovement()
end

function onEnd(room, wasSkipped)
    if wasSkipped then
        enableMovement()
    end
end

