public static void initialize() { if (instance == null) { Console.WriteLine("Info: initialize DeadTaiwuManager."); instance = new DeadTaiwuManager(); } }
private static void Prefix(bool newGame, int teachingId, int loadingDateId) { if (!Main.enabled) { return; } if (newGame || loadingDateId != 0) { DeadTaiwuManager.reset(); } }
private static void Prefix(ref int actorId, ref bool die) { if (!Main.enabled) { return; } int taiwu = DateFile.instance.MianActorID(); if (actorId == taiwu && die) { DeadTaiwuManager.initialize(); DeadTaiwuManager.instance.setAsDeadTaiwu(taiwu); } }
private static void Prefix() { if (!Main.enabled) { return; } DeadTaiwuManager.reset(); try { // 初始化死太吾cache DeadTaiwuManager.initialize(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } }
private static void Prefix(bool ___loadingEnd) { if (!Main.enabled) { return; } if (___loadingEnd) { try { // 初始化死太吾cache DeadTaiwuManager.initialize(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } }
static void OnGUI(UnityModManager.ModEntry modEntry) { settings.taiwuBugfix = GUILayout.Toggle(settings.taiwuBugfix, "修复太吾永远不会给继任者托梦的BUG"); settings.lockGenderTaiwu = GUILayout.Toggle(settings.lockGenderTaiwu, "太吾转世性别固定。默认同性。"); settings.lockGenderAll = GUILayout.Toggle(settings.lockGenderAll, "全人物转世性别固定。默认同性。"); settings.lockGenderAlter = GUILayout.Toggle(settings.lockGenderAlter, "转世异性。开启了转世性别锁定的人物会转世为异性。"); settings.lockFaceTaiwu = GUILayout.Toggle(settings.lockFaceTaiwu, "固定太吾相貌,前世为太吾的人物转世后相貌和前世相同(魅力根据相貌随机)。[需开启太吾/全人物转世性别锁定]"); settings.lockFaceAll = GUILayout.Toggle(settings.lockFaceAll, "固定全人物相貌,所有人物转世后相貌和前世相同(魅力根据相貌随机)。[需开启全人物转世性别锁定]"); GUILayout.BeginHorizontal(); GUILayout.Label("[插队投胎] 每个婴儿降生时阴间的太吾都有", GUILayout.ExpandWidth(false)); var taiwuPreemptRate = GUILayout.TextField(settings.taiwuPreemptRate.ToString(), 3, GUILayout.Width(40)); if (GUI.changed) { if (!uint.TryParse(taiwuPreemptRate, out settings.taiwuPreemptRate)) { settings.taiwuPreemptRate = 0; } if (settings.taiwuPreemptRate > 100) { settings.taiwuPreemptRate = 100; } } GUILayout.Label("%的机会抢占转生机会。设置为0时死去的太吾投胎机会和正常人相同。", GUILayout.ExpandWidth(false)); GUILayout.EndHorizontal(); GUILayout.BeginVertical(); //加入手动寻找太吾按钮 bool flag = DateFile.instance == null || DateFile.instance.actorsDate == null || !DateFile.instance.actorsDate.ContainsKey(DateFile.instance.mianActorId); if (flag) { GUILayout.Label("存档未载入!", new GUILayoutOption[0]); } else { bool findlove = GUILayout.Button("手动识别未转生太吾", new GUILayoutOption[] { GUILayout.Width(200f) }); if (findlove) { DeadTaiwuManager.reset(); try { // 初始化死太吾cache DeadTaiwuManager.initialize(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } bool fixbug = GUILayout.Button("手动修复性转bug", new GUILayoutOption[] { GUILayout.Width(200f) }); if (fixbug) { int taiwu = DateFile.instance.MianActorID(); int sex = int.Parse(DateFile.instance.GetActorDate(taiwu, 14, false)); int baseactor = sex; if (int.TryParse(DateFile.instance.GetActorDate(taiwu, 997, false), out baseactor)) { Main.Logger.Log("读取成功……" + baseactor.ToString()); if (int.Parse(DateFile.instance.presetActorDate[baseactor][14]) != sex) { baseactor = (Mathf.Clamp((int.Parse(DateFile.instance.GetActorDate(taiwu, 997, false)) + 1), (0 + sex), (28 + sex))); DateFile.instance.actorsDate[taiwu][997] = baseactor.ToString(); Main.Logger.Log("改写成功……" + baseactor.ToString()); } else { Main.Logger.Log("您没有出BUG哦"); } } else { Main.Logger.Log("读取失败……"); DateFile.instance.actorsDate[taiwu][997] = (UnityEngine.Random.Range(0, 15) * 2 + sex).ToString(); Main.Logger.Log("补写成功……"); } } } GUILayout.EndVertical(); }
public static void reset() { Console.WriteLine("Info: reset DeadTaiwuManager."); instance = null; }
static void OnGUI(UnityModManager.ModEntry modEntry) { settings.taiwuBugfix = GUILayout.Toggle(settings.taiwuBugfix, "修复太吾永远不会给继任者托梦的BUG"); settings.lockGenderTaiwu = GUILayout.Toggle(settings.lockGenderTaiwu, "太吾转世性别固定。默认同性。"); settings.lockGenderAll = GUILayout.Toggle(settings.lockGenderAll, "全人物转世性别固定。默认同性。"); settings.lockGenderAlter = GUILayout.Toggle(settings.lockGenderAlter, "转世异性。开启了转世性别锁定的人物会转世为异性。"); settings.lockFaceTaiwu = GUILayout.Toggle(settings.lockFaceTaiwu, "固定太吾相貌,前世为太吾的人物转世后相貌和前世相同(魅力根据相貌随机)。[需开启太吾/全人物转世性别锁定]"); settings.lockFaceAll = GUILayout.Toggle(settings.lockFaceAll, "固定全人物相貌,所有人物转世后相貌和前世相同(魅力根据相貌随机)。[需开启全人物转世性别锁定]"); GUILayout.BeginHorizontal(); GUILayout.Label("[插队投胎] 每个婴儿降生时阴间的太吾都有", GUILayout.ExpandWidth(false)); var taiwuPreemptRate = GUILayout.TextField(settings.taiwuPreemptRate.ToString(), 3, GUILayout.Width(40)); if (GUI.changed) { if (!uint.TryParse(taiwuPreemptRate, out settings.taiwuPreemptRate)) { settings.taiwuPreemptRate = 0; } if (settings.taiwuPreemptRate > 100) { settings.taiwuPreemptRate = 100; } } GUILayout.Label("%的机会抢占转生机会。设置为0时死去的太吾投胎机会和正常人相同。", GUILayout.ExpandWidth(false)); GUILayout.EndHorizontal(); GUILayout.BeginVertical(); //加入手动寻找太吾按钮 bool flag = DateFile.instance == null || DateFile.instance.actorsDate == null || !DateFile.instance.actorsDate.ContainsKey(DateFile.instance.mianActorId); if (flag) { GUILayout.Label("存档未载入!", new GUILayoutOption[0]); } else { bool findlove = GUILayout.Button("手动识别未转生太吾", new GUILayoutOption[] { GUILayout.Width(200f) }); if (findlove) { DeadTaiwuManager.reset(); try { // 初始化死太吾cache DeadTaiwuManager.initialize(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } } GUILayout.EndVertical(); }