Example #1
0
        private void ExpandDumpLayout(string[] consoleText)
        {
            string validSubCommands = "currentroom\ncurrentroomhandler\nallknownroomprefabs\ncurrentdungeonlayout";

            if (!m_IsCommandValid(consoleText, validSubCommands, "dump_layout"))
            {
                return;
            }

            if (consoleText[0].ToLower() == "currentroom")
            {
                RoomDebug.DumpCurrentRoomLayout();
            }
            else if (consoleText[0].ToLower() == "currentroomhandler")
            {
                RoomHandler CurrentRoom = GameManager.Instance.PrimaryPlayer.GetAbsoluteParentRoom();
                RoomDebug.DumpCurrentRoomLayout(generatedRoomHandler: CurrentRoom);
            }
            else if (consoleText[0] == "allknownroomprefabs")
            {
                ETGModConsole.Log("Saving room layouts to PNG files. Please wait...");
                foreach (WeightedRoom wRoom in ExpandPrefabs.CastleRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.SewersRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.Gungeon_RoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.AbbeyRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.MinesRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.CatacombsRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.ForgeRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }
                foreach (WeightedRoom wRoom in ExpandPrefabs.BulletHellRoomTable.includedRooms.elements)
                {
                    if (wRoom.room != null)
                    {
                        RoomDebug.LogRoomToPNGFile(wRoom.room);
                    }
                }

                foreach (WeightedRoom wRoom in ExpandPrefabs.SecretRoomTable.includedRooms.elements)
                {
                    RoomDebug.LogRoomToPNGFile(wRoom.room);
                }

                ETGModConsole.Log("Room dump process complete!");
            }
            else if (consoleText[0].ToLower() == "currentdungeonlayout")
            {
                RoomDebug.LogDungeonToPNGFile();
                ETGModConsole.Log("Current Dungeon '" + GameManager.Instance.Dungeon.gameObject.name + "' has been succesfully dumped.");
            }
            else
            {
                ETGModConsole.Log("[ExpandTheGungeon] [dump_layout] ERROR: Unknown sub-command. Valid Commands: \n" + validSubCommands);
                return;
            }
        }