protected override bool GameObjectCreated(OptionBehaviour o) { o.transform.FindChild("CheckBox")?.gameObject?.SetActive(false); o.transform.FindChild("Background")?.gameObject?.SetActive(false); return(UpdateGameObject()); }
private static bool OnEnable(OptionBehaviour opt) { if (opt == ExportButton.Setting) { ExportButton.OptionCreated(); return(false); } if (opt == ImportButton.Setting) { ImportButton.OptionCreated(); return(false); } CustomOption customOption = CustomOption.AllOptions.FirstOrDefault(option => option.Setting == opt); // Works but may need to change to gameObject.name check if (customOption == null) { customOption = ExportButton.SlotButtons.FirstOrDefault(option => option.Setting == opt); if (customOption == null) { customOption = ImportButton.SlotButtons.FirstOrDefault(option => option.Setting == opt); if (customOption == null) { return(true); } } } customOption.OptionCreated(); return(false); }
private static void OnChangeDistance(object sender, OptionBehaviour optionBehaviour) { if (sender is CustomNumberOption option) { SetRadius(option.Value); } }
private void OnGameOptionCreated(OptionBehaviour o) { if (o == null) { return; } try { // Could move some logic to this callback, though pointless when the methods leading to this callback to be called are overriden. o.OnValueChanged = new Action <OptionBehaviour>((_) => { }); o.name = o.gameObject.name = ID; //o.gameObject.SetActive(true); GameOptionCreated(o); } catch (Exception e) { EssentialsPlugin.Logger.LogWarning($"Exception in OnGameOptionCreated for option \"{Name}\" ({Type}): {e}"); } GameSetting = o; }
public static void AddOptions() { if (GameOptionMenuPatch.showSheriffOption == null | GameOptionMenuPatch.SheriffCooldown == null) { //we simply copy existing options... var toggleopt = GameObject.FindObjectsOfType <ToggleOption>().ToList().First(); GameOptionMenuPatch.showSheriffOption = GameObject.Instantiate(toggleopt); var killcd = GameObject.FindObjectsOfType <NumberOption>().ToList().First(); GameOptionMenuPatch.SheriffCooldown = GameObject.Instantiate(killcd); OptionBehaviour[] options = new OptionBehaviour[GameOptionMenuPatch.instance.MCAHCPOHNFI.Count + 2]; GameOptionMenuPatch.instance.MCAHCPOHNFI.ToArray().CopyTo(options, 0); options[options.Length - 2] = GameOptionMenuPatch.showSheriffOption; options[options.Length - 1] = GameOptionMenuPatch.SheriffCooldown; GameOptionMenuPatch.instance.MCAHCPOHNFI = new Il2CppReferenceArray <OptionBehaviour>(options); } else { GameOptionMenuPatch.SheriffCooldown.gameObject.SetActive(true); GameOptionMenuPatch.showSheriffOption.gameObject.SetActive(true); } GameOptionMenuPatch.showSheriffOption.TitleText.text = "Show Sheriff"; GameOptionMenuPatch.showSheriffOption.LCDAKOCANPH = CustomGameOptions.showSheriff; GameOptionMenuPatch.showSheriffOption.CheckMark.enabled = CustomGameOptions.showSheriff; GameOptionMenuPatch.SheriffCooldown.TitleText.text = "Sheriff Kill Cooldown"; GameOptionMenuPatch.SheriffCooldown.Value = CustomGameOptions.SheriffKillCD; GameOptionMenuPatch.SheriffCooldown.ValueText.text = CustomGameOptions.SheriffKillCD.ToString(); }
public static void OnValueChanged(OptionBehaviour option) { if (!AmongUsClient.Instance || !AmongUsClient.Instance.AmHost) { return; } foreach (var opt in options) { if (opt.optionTitleName == option.Title) { opt.Update(option); break; } } if (PlayerControl.GameOptions.isDefaults) { PlayerControl.GameOptions.isDefaults = false; UnityEngine.Object.FindObjectOfType <GameOptionsMenu>().Method_16(); //RefreshChildren } var local = PlayerControl.LocalPlayer; if (local != null) { local.RpcSyncSettings(PlayerControl.GameOptions); } }
public static void OnValueChanged(OptionBehaviour option) { if (AmongUsClient.Instance == null || !AmongUsClient.Instance.LKBIPDDGGIF) { return; } foreach (var opt in options) { if (opt.optionTitleName == option.Title) { opt.Update(option); break; } } if (PlayerControl.GameOptions.NMPPODEHDFL) { PlayerControl.GameOptions.NMPPODEHDFL = false; UnityEngine.Object.FindObjectOfType <GameOptionsMenu>().ValueChanged(option); //RefreshChildren } var local = PlayerControl.LocalPlayer; if (local != null) { local.RpcSyncSettings(PlayerControl.GameOptions); } }
private bool OnGameOptionCreated(OptionBehaviour o) { if (o == null) { return(false); } try { o.OnValueChanged = new Action <OptionBehaviour>((_) => { }); o.name = o.gameObject.name = ID; if (!GameOptionCreated(o)) { return(false); } } catch (Exception e) { EssentialsPlugin.Logger.LogWarning($"Exception in OnGameOptionCreated for option \"{Name}\" ({Type}): {e}"); } GameSetting = o; return(true); }
protected override bool GameOptionCreated(OptionBehaviour o) { if (o is ToggleOption toggle) { toggle.TitleText.Text = GetFormattedName(); toggle.CheckMark.enabled = toggle.oldValue = false; toggle.transform.FindChild("CheckBox")?.gameObject?.SetActive(false); return(true); } else if (o is StringOption str) // Display options in menu for non-host { str.TitleText.Text = GetFormattedName(); str.Value = str.oldValue = 0; str.ValueText.Text = GetFormattedValue(); return(true); } return(false); }
public static void AddOptions() { if (GameOptionMenuPatch.showSheriffOption == null | GameOptionMenuPatch.SheriffCooldown == null) { var showAnonymousvote = GameObject.FindObjectsOfType <ToggleOption>().ToList().Where(x => x.TitleText.Text == "Anonymous Votes").First(); GameOptionMenuPatch.showSheriffOption = GameObject.Instantiate(showAnonymousvote); var killcd = GameObject.FindObjectsOfType <NumberOption>().ToList().Where(x => x.TitleText.Text == "Kill Cooldown").First(); GameOptionMenuPatch.SheriffCooldown = GameObject.Instantiate(killcd); OptionBehaviour[] options = new OptionBehaviour[GameOptionMenuPatch.instance.KJLJEKJECCB.Count + 2]; GameOptionMenuPatch.instance.KJLJEKJECCB.ToArray().CopyTo(options, 0); options[options.Length - 2] = GameOptionMenuPatch.showSheriffOption; options[options.Length - 1] = GameOptionMenuPatch.SheriffCooldown; GameOptionMenuPatch.instance.KJLJEKJECCB = new Il2CppReferenceArray <OptionBehaviour>(options); } else { GameOptionMenuPatch.SheriffCooldown.gameObject.SetActive(true); GameOptionMenuPatch.showSheriffOption.gameObject.SetActive(true); } GameOptionMenuPatch.showSheriffOption.TitleText.Text = "Show Sheriff"; GameOptionMenuPatch.showSheriffOption.BEKECNBGEPB = CustomGameOptions.showSheriff; GameOptionMenuPatch.showSheriffOption.CheckMark.enabled = CustomGameOptions.showSheriff; GameOptionMenuPatch.SheriffCooldown.TitleText.Text = "Sheriff Kill Cooldown"; GameOptionMenuPatch.SheriffCooldown.Value = CustomGameOptions.SheriffKillCD; GameOptionMenuPatch.SheriffCooldown.ValueText.Text = CustomGameOptions.SheriffKillCD.ToString(); }
public static void OnValueChanged(OptionBehaviour option) { if (AmongUsClient.Instance == null) { return; } foreach (var opt in options) { if (opt.optionTitleName == option.Title) { opt.Update(option); opt.OnChange.Invoke(opt, option); break; } } /* * if (PlayerControl.GameOptions.BMMDHGDAPEJ) // isDefault * { * PlayerControl.GameOptions.BMMDHGDAPEJ = false; * "Refresh".Log(); * Object.FindObjectOfType<GameOptionsMenu>().ValueChanged(option); //RefreshChildren * }*/ var local = PlayerControl.LocalPlayer; if (local != null && AmongUsClient.Instance.HHBLOCGKFAB) //amHost { local.RpcSyncSettings(PlayerControl.GameOptions); } }
public static void AddOptions() { if (GameOptionMenuPatch.MorphDuration == null | GameOptionMenuPatch.MorphCooldown == null) { var killcd = GameObject.FindObjectsOfType <NumberOption>().ToList().Where(x => x.TitleText.text == "Kill Cooldown").First(); GameOptionMenuPatch.MorphDuration = GameObject.Instantiate(killcd); GameOptionMenuPatch.MorphCooldown = GameObject.Instantiate(killcd); OptionBehaviour[] options = new OptionBehaviour[GameOptionMenuPatch.Instance.MCAHCPOHNFI.Count + 2]; GameOptionMenuPatch.Instance.MCAHCPOHNFI.ToArray().CopyTo(options, 0); options[options.Length - 2] = GameOptionMenuPatch.MorphDuration; options[options.Length - 1] = GameOptionMenuPatch.MorphCooldown; GameOptionMenuPatch.Instance.MCAHCPOHNFI = new Il2CppReferenceArray <OptionBehaviour>(options); GameOptionMenuPatch.CurrentCount = options.Length - 2; } else { GameOptionMenuPatch.MorphDuration.gameObject.SetActive(true); GameOptionMenuPatch.MorphCooldown.gameObject.SetActive(true); } GameOptionMenuPatch.MorphDuration.TitleText.text = "Morph Duration"; GameOptionMenuPatch.MorphDuration.Value = CustomGameOptions.MorphDuration; GameOptionMenuPatch.MorphDuration.ValueText.text = CustomGameOptions.MorphDuration.ToString(); GameOptionMenuPatch.MorphCooldown.TitleText.text = "Morph Cooldown"; GameOptionMenuPatch.MorphCooldown.Value = CustomGameOptions.MorphCooldown; GameOptionMenuPatch.MorphCooldown.ValueText.text = CustomGameOptions.MorphCooldown.ToString(); }
protected override bool GameOptionCreated(OptionBehaviour o) { if (!base.GameOptionCreated(o)) return false; if (o is ToggleOption toggle) toggle.transform.FindChild("Background")?.gameObject?.SetActive(false); return true; }
/// <summary> /// Called when the game object is (re)created for this option. /// <para>Depends on <see cref="UpdateGameObject"/> by default.</para> /// </summary> /// <param name="o">The game object that was created for this option</param> /// <returns>Whether the object is valid, false to destroy.</returns> protected virtual bool GameObjectCreated(OptionBehaviour o) { //EssentialsPlugin.Logger.LogWarning($"Base handler for {nameof(CustomOption)}.{nameof(GameObjectCreated)} was called, game object for option \"{Name}\" from plugin \"{PluginID}\" will be destroyed."); //return false; // Destroy unhandled objects return(UpdateGameObject()); }
public static void Postfix2(GameOptionsMenu __instance) { OptionBehaviour option = __instance.MCAHCPOHNFI[__instance.MCAHCPOHNFI.Count - 2]; if (bothLoversDie != null) { bothLoversDie.transform.position = option.transform.position - new Vector3(0, 0.5f, 0); } }
private protected override void GameOptionCreated(OptionBehaviour o) { if (o is not ToggleOption toggle) { return; } toggle.TitleText.Text = Name; }
public static void Postfix2(GameOptionsMenu __instance) { OptionBehaviour option = __instance.MCAHCPOHNFI[__instance.MCAHCPOHNFI.Count - 3]; if (SheriffCooldown != null & showSheriffOption != null) { showSheriffOption.transform.position = option.transform.position - new Vector3(0, 0.5f, 0); SheriffCooldown.transform.position = option.transform.position - new Vector3(0, 1f, 0); } }
private protected override void GameOptionCreated(OptionBehaviour o) { if (!(o is ToggleOption Title)) { return; } Title.TitleText.Text = $"{Globals.FORMAT_WHITE}{LanguageManager.Get(Name)}" .Argumentize(LocalizationArguments); }
public static void Postfix(GameOptionsMenu __instance) { instance = __instance; defaultBounds = __instance.GetComponentInParent <Scroller>().YBounds.max; option = __instance.Children[__instance.Children.Count - 1]; CustomPlayerMenuPatch.AddOptions(); }
private protected override void GameOptionCreated(OptionBehaviour o) { if (!(o is ToggleOption toggle)) { return; } toggle.TitleText.Text = Name; toggle.CheckMark.enabled = toggle.oldValue = GetValue(); }
protected override void GameOptionCreated(OptionBehaviour o) { if (o is not StringOption str) { return; } str.TitleText.Text = GetFormattedName(); str.Value = str.oldValue = GetValue(); str.ValueText.Text = GetFormattedValue(); }
private protected override void GameOptionCreated(OptionBehaviour o) { if (!(o is ToggleOption toggle)) { return; } toggle.TitleText.Text = $"{Globals.FORMAT_WHITE}{LanguageManager.Get(Name)}" .Argumentize(LocalizationArguments); toggle.CheckMark.enabled = toggle.oldValue = GetValue(); }
private protected override void GameOptionCreated(OptionBehaviour o) { if (!(o is StringOption str)) { return; } str.TitleText.Text = Name; str.Value = str.oldValue = GetValue(); str.ValueText.Text = ToString(); }
public static void Postfix2(GameOptionsMenu __instance) { __instance.GetComponentInParent <Scroller>().YBounds.max = (__instance.MCAHCPOHNFI.Count - 7) * 0.5F + 0.13F; OptionBehaviour option = __instance.MCAHCPOHNFI[CurrentCount - 1]; if (MorphDuration != null & MorphCooldown != null) { MorphDuration.transform.position = option.transform.position - new Vector3(0, 0.5f, 0); MorphCooldown.transform.position = option.transform.position - new Vector3(0, 1f, 0); } }
protected override bool GameObjectCreated(OptionBehaviour o) { if (AmongUsClient.Instance?.AmHost != true || o is not ToggleOption toggle) { return(false); } toggle.transform.FindChild("CheckBox")?.gameObject?.SetActive(false); return(UpdateGameObject()); }
protected override bool GameObjectCreated(OptionBehaviour o) { if (o is not NumberOption number) { return(false); } number.ValidRange = new FloatRange(Min, Max); number.Increment = Increment; return(UpdateGameObject()); }
private protected override void GameOptionCreated(OptionBehaviour o) { if (!(o is StringOption str)) { return; } str.TitleText.Text = $"{Globals.FORMAT_WHITE}{LanguageManager.Get(Name)}" .Argumentize(LocalizationArguments); str.Value = str.oldValue = GetValue(); str.ValueText.Text = ToString(); }
private static void ChangeConnection(object sender, OptionBehaviour e) { var option = sender as CustomToggleOption; if (option?.Value ?? false) { Connect(); } else { Disconnect(); } }
private static bool OnEnable(OptionBehaviour opt) { CustomOption customOption = Options.FirstOrDefault(option => option.GameSetting == opt); if (customOption == null) { return(true); } customOption.OnGameOptionCreated(opt); return(false); }
private protected override void GameOptionCreated(OptionBehaviour o) { if (!(o is NumberOption number)) { return; } number.TitleText.Text = Name; number.ValidRange = new FloatRange(Min, Max); number.Increment = Increment; number.Value = number.oldValue = GetValue(); number.ValueText.Text = ToString(); }