/// <summary>
        /// Executed whenever a level completes its loading process.
        /// This mod the activates and patches the game using Hramony library.
        /// </summary>
        /// <param name="mode">The loading mode.</param>
        public override void OnLevelLoaded(LoadMode mode)
        {
            // we no longer need to worry about harmony; we will let citiesharmony help out with harmony

            switch (mode)
            {
            case LoadMode.LoadGame:
            case LoadMode.NewGame:
            case LoadMode.LoadScenario:
            case LoadMode.NewGameFromScenario:
                break;

            default:
                return;
            }

            UnifyHarmonyVersions();
            PatchController.Activate();
        }
 /// <summary>
 /// Executed whenever a map is being unloaded.
 /// This mod then undoes the changes using the Harmony library.
 /// </summary>
 public override void OnLevelUnloading()
 {
     UnifyHarmonyVersions();
     PatchController.Deactivate();
 }