private static bool Prefix(uGUI_PingEntry __instance, int id, bool visible, PingType type, string name, ref int colorIndex) { CustomPings.Initialize(); __instance.gameObject.SetActive(true); uGUI_PingEntry_id.SetValue(__instance, id); __instance.visibility.isOn = visible; __instance.visibilityIcon.sprite = ((!visible) ? __instance.spriteHidden : __instance.spriteVisible); __instance.UpdateLabel(type, name); for (int i = 0; i < 5; ++i) { Toggle toggle = __instance.colorSelectors[i]; toggle.onValueChanged.RemoveAllListeners(); toggle.isOn = false; toggle.gameObject.SetActive(false); } __instance.colorSelectionIndicator.gameObject.SetActive(false); var controller = __instance.gameObject.GetComponent <PingEntryController>(); if (controller == null) { controller = __instance.gameObject.AddComponent <PingEntryController>(); } controller.OnInitialize(id, type, colorIndex); __instance.icon.sprite = SpriteManager.Get(SpriteManager.Group.Pings, PingManager.sCachedPingTypeStrings.Get(type)); __instance.icon.color = CustomPings.GetColor(colorIndex); return(false); }
private static bool Prefix(ref Atlas.Sprite __result, SpriteManager.Group group, string name) { if (group == SpriteManager.Group.Pings) { if (CustomPings.PingExists(name)) { __result = CustomPings.GetSprite(name); return(false); } } return(true); }
private static bool Prefix(ref string __result, Type enumType, object value) { if (enumType == PingTypeT) { int v = (int)value; if (v > (int)PingType.Sunbeam && CustomPings.PingExists(v)) { __result = CustomPings.GetPingName(v); return(false); } } return(true); }
private static void Postfix(uGUI_PingTab __instance) { CustomPings.Initialize(); var entries = (Dictionary <int, uGUI_PingEntry>)uGUI_PingTab_entries.GetValue(__instance); foreach (var entry in entries) { var id = entry.Key; var pingEntry = entry.Value; var pingInstance = PingManager.Get(id); pingEntry.icon.sprite = SpriteManager.Get(SpriteManager.Group.Pings, PingManager.sCachedPingTypeStrings.Get(pingInstance.pingType)); pingEntry.icon.color = CustomPings.GetColor(pingInstance.colorIndex); pingEntry.UpdateLabel(pingInstance.pingType, pingInstance.GetLabel()); pingEntry.visibility.isOn = pingInstance.visible; pingEntry.visibilityIcon.sprite = ((!pingInstance.visible) ? pingEntry.spriteHidden : pingEntry.spriteVisible); } }
private static void Postfix(uGUI_Pings __instance) { if (staticInstance != __instance) { staticInstance = __instance; pings = (Dictionary <int, uGUI_Ping>)uGUI_Pings_pings.GetValue(__instance); } foreach (var entry in pings) { var ping = PingManager.Get(entry.Key); var guiPing = entry.Value; guiPing.SetColor(CustomPings.GetColor(ping.colorIndex)); var sprite = SpriteManager.Get(SpriteManager.Group.Pings, Enum.GetName(typeof(PingType), ping.pingType)); guiPing.SetIcon(sprite); } }