void Awake()
	{
		if (reference == null) 
		{
			reference = this;
			DontDestroyOnLoad (gameObject);

			DialogueController.reference = dialogueController;
			Debug.Log ("Dialogue Controller ref is now " + dialogueController);
			DialogueSystem.reference = dialogueSystem;
			//DialogueSystem.reference.Deactivate ();
			TrainTimeScript.reference = timeController;
			InventorySystem.reference = inventorySystem;
			PauseMenuController.reference = pauseMenu;
			GameSettingsController.reference = gameSettings;
			GameSettingsController.reference.Load();
			GameSettingsController.reference.Update();
			TownController.reference = townController;
			WaystationController.reference = waystationController;
			StrategyMapUIController.reference = strategyMapController;
			SpeedWheelController.reference = speedWheelController;
		}
		else
		{
			Destroy(gameObject);
		}

	}
    void Awake()
    {
        if (reference == null)
        {
            reference = this;
            DontDestroyOnLoad(gameObject);

            DialogueController.reference = dialogueController;
            Debug.Log("Dialogue Controller ref is now " + dialogueController);
            DialogueSystem.reference = dialogueSystem;
            //DialogueSystem.reference.Deactivate ();
            TrainTimeScript.reference        = timeController;
            InventorySystem.reference        = inventorySystem;
            PauseMenuController.reference    = pauseMenu;
            GameSettingsController.reference = gameSettings;
            GameSettingsController.reference.Load();
            GameSettingsController.reference.Update();
            TownController.reference          = townController;
            WaystationController.reference    = waystationController;
            StrategyMapUIController.reference = strategyMapController;
            SpeedWheelController.reference    = speedWheelController;
        }
        else
        {
            Destroy(gameObject);
        }
    }