Ejemplo n.º 1
0
        private static Door BackupDoor(DoorSlot door)
        {
            var ret = new Door
            {
                Icon      = door.GetComponentsInChildren <Image>()[1].sprite,
                Color     = RGBFromColor(door.defaultBackgroundColor).ToString("X6"),
                Locations = new Dictionary <string, Location>
                {
                    ["door"]      = FromV3(door.transform.position),
                    ["card_door"] = FromV3(door.cardPositions[0].position),
                    ["card_1"]    = FromV3(door.cardPositions[1].position),
                    ["card_2"]    = FromV3(door.cardPositions[2].position)
                }
            };

            return(ret);
        }
Ejemplo n.º 2
0
        private static void DoorDeckPostfix(int cardPosition, ref string __result, DoorSlot __instance)
        {
            var mansus = MansusManager.CurrentMansus;

            if (mansus == null)
            {
                Debug.Log("Null mansus!");
                return;
            }
            var decks = mansus.Doors[__instance.portalType.ToString().ToLower()]?.Decks;

            if (decks != null && decks.Count > cardPosition)
            {
                __result = decks[cardPosition];
                Debug.Log("Deck: " + __result + " - " + Registry.Get <Compendium>().GetEntityById <DeckSpec>(__result));
            }
        }
Ejemplo n.º 3
0
        private static void ModifyDoor(DoorSlot door, Door d)
        {
            if (d.Icon != null)
            {
                var img = door.GetComponentsInChildren <Image>()[1];
                img.sprite = d.Icon;
            }

            if (!string.IsNullOrEmpty(d.Color))
            {
                var c = int.Parse(d.Color, NumberStyles.HexNumber);
                door.defaultBackgroundColor = ColorFromRGB(c);
            }

            if (d.Locations != null)
            {
                TrySetLocation(d.Locations, door.transform, "door");
                TrySetLocation(d.Locations, door.cardPositions[0], "card_door");
                TrySetLocation(d.Locations, door.cardPositions[1], "card_1");
                TrySetLocation(d.Locations, door.cardPositions[2], "card_2");
            }
        }