Esempio n. 1
0
        private static void UpdateLocalPlayerPda(INitroxPlayer player, PingInstance ping)
        {
            PDA          localPlayerPda      = Player.main.GetPDA();
            GameObject   pdaScreenGameObject = localPlayerPda.ui.gameObject;
            GameObject   pingTabGameObject   = pdaScreenGameObject.transform.Find("Content/PingManagerTab").gameObject;
            uGUI_PingTab pingTab             = pingTabGameObject.GetComponent <uGUI_PingTab>();

            MethodInfo updateEntities = typeof(uGUI_PingTab).GetMethod("UpdateEntries", BindingFlags.NonPublic | BindingFlags.Instance);

            updateEntities.Invoke(pingTab,
                                  new object[]
            {
            });

            FieldInfo pingTabEntriesField = typeof(uGUI_PingTab).GetField("entries", BindingFlags.NonPublic | BindingFlags.Instance);
            Dictionary <int, uGUI_PingEntry> pingEntries = (Dictionary <int, uGUI_PingEntry>)pingTabEntriesField.GetValue(pingTab);
            uGUI_PingEntry pingEntry = pingEntries[ping.GetInstanceID()];

            pingEntry.icon.color = player.PlayerSettings.PlayerColor.ToUnity();

            GameObject pingEntryGameObject = pingEntry.gameObject;

            pingEntryGameObject.transform.Find("ColorToggle").gameObject.SetActive(false);

            if (!localPlayerPda.isInUse)
            {
                pdaScreenGameObject.gameObject.SetActive(false);
            }
        }
Esempio n. 2
0
        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);
            }
        }
Esempio n. 3
0
        private static void UpdateLocalPlayerPda(INitroxPlayer player, PingInstance ping)
        {
            PDA          localPlayerPda      = Player.main.GetPDA();
            GameObject   pdaScreenGameObject = localPlayerPda.ui.gameObject;
            GameObject   pingTabGameObject   = pdaScreenGameObject.transform.Find("Content/PingManagerTab").gameObject;
            uGUI_PingTab pingTab             = pingTabGameObject.GetComponent <uGUI_PingTab>();

            pingTab.UpdateEntries();
            Dictionary <int, uGUI_PingEntry> pingEntries = pingTab.entries;
            uGUI_PingEntry pingEntry = pingEntries[ping.GetInstanceID()];

            pingEntry.icon.color = player.PlayerSettings.PlayerColor.ToUnity();

            GameObject pingEntryGameObject = pingEntry.gameObject;

            pingEntryGameObject.transform.Find("ColorToggle").gameObject.SetActive(false);

            if (!localPlayerPda.isInUse)
            {
                pdaScreenGameObject.gameObject.SetActive(false);
            }
        }
Esempio n. 4
0
 static void addToolbar(uGUI_PingTab __instance)
 {
     __instance.gameObject.ensureComponent <PingToggleToolbar>();
 }