public static void DeactivateMod() { _isDeactivating = true; ModsConfig.SetActive(Mod.ContentPack.Identifier, false); var runningMods = PrivateAccess.Verse_LoadedModManager_RunningMods(); runningMods.Remove(Mod.ContentPack); var addonMods = new StringBuilder(); foreach (var mod in AddonManager.Mods) { addonMods.AppendLine(mod.Name); ModsConfig.SetActive(mod.Identifier, false); runningMods.Remove(mod); } ModsConfig.Save(); if (Find.WorldObjects.Contains(Instance)) { Find.WorldObjects.Remove(Instance); } const string saveName = "PawnRules_Removed"; GameDataSaveLoader.SaveGame(saveName); var message = addonMods.Length > 0 ? Lang.Get("Button.RemoveModAndAddonsComplete", saveName.Bold(), addonMods.ToString()) : Lang.Get("Button.RemoveModComplete", saveName.Bold()); Find.WindowStack.Add(new Dialog_Alert(message, Dialog_Alert.Buttons.Ok, GenCommandLine.Restart)); }
private static void ResetPlayer(PlayerTopDown.AccelMode accelMode) { sprite.Rotation = 0; player.Position = origPos; player.AccelerationMode = accelMode; player.Speed = 400; player.Acceleration = 800; player.Friction = 1600; player.Drag = 0.01F; V0 = Vector2.Zero; PrivateAccess.Call("UpdateInfo", player); }