public static bool AddUncategorizedSubCategory(IM __instance)
        {
            ItemSpawnerCategoryDefinitions.SubCategory subcat = new ItemSpawnerCategoryDefinitions.SubCategory
            {
                Subcat              = ItemSpawnerID.ESubCategory.None,
                DisplayName         = "UNCATEGORIZED",
                DoesDisplay_Sandbox = true,
                DoesDisplay_Unlocks = true,
                Sprite              = null
            };

            List <ItemSpawnerCategoryDefinitions.SubCategory> subcats = __instance.CatDefs.Categories[6].Subcats.ToList();

            subcats.Add(subcat);
            __instance.CatDefs.Categories[6].Subcats = subcats.ToArray();

            return(true);
        }
Esempio n. 2
0
        private void SpawnerRefreshElements(string firstMatch = "")
        {
#if !UNITY_EDITOR && !UNITY_STANDALONE
            if (ItemInfo == null || ItemImage == null)
            {
                return;
            }

            if (m_currentFVRObj != null)
            {
                string output = "";
                output += $"{m_currentFVRObj.DisplayName} ({m_currentFVRObj.ItemID}) - {m_currentFVRObj.Category}, {m_currentFVRObj.TagEra}, {m_currentFVRObj.TagSet}";
                output += $"\nSpawned From: {m_currentFVRObj.SpawnedFromId}";
                output += $"\nMass: {m_currentFVRObj.Mass}, Mag Cap: {m_currentFVRObj.MagazineCapacity}, Requires Picatinny Sight: {m_currentFVRObj.RequiresPicatinnySight}";
                output += $"\n   Firearm Tags: {m_currentFVRObj.TagFirearmSize}, {m_currentFVRObj.TagFirearmAction}, {m_currentFVRObj.TagFirearmRoundPower}";
                output += $"\n       Firing Modes - ";
                if (m_currentFVRObj.TagFirearmFiringModes.Count > 0)
                {
                    output += string.Join(", ", m_currentFVRObj.TagFirearmFiringModes.ConvertAll(x => x.ToString()).ToArray());
                }
                output += $"\n       Feed Options - ";
                if (m_currentFVRObj.TagFirearmFeedOption.Count > 0)
                {
                    output += string.Join(", ", m_currentFVRObj.TagFirearmFeedOption.ConvertAll(x => x.ToString()).ToArray());
                }
                output += $"\n             Mounts - ";
                if (m_currentFVRObj.TagFirearmMounts.Count > 0)
                {
                    output += string.Join(", ", m_currentFVRObj.TagFirearmMounts.ConvertAll(x => x.ToString()).ToArray());
                }
                output += $"\nAttachment Tags: {m_currentFVRObj.TagAttachmentMount}, {m_currentFVRObj.TagAttachmentFeature}";
                output += $"\n     Melee Tags: {m_currentFVRObj.TagMeleeStyle}, {m_currentFVRObj.TagMeleeHandedness}";
                output += $"\n   Powerup Tags: {m_currentFVRObj.TagPowerupType}";
                output += $"\n    Thrown Tags: {m_currentFVRObj.TagThrownType}, {m_currentFVRObj.TagThrownDamageType}";

                if (m_currentItemSpawnerID != null)
                {
                    ItemSpawnerCategoryDefinitions.Category    Cat    = Array.Find(ManagerSingleton <IM> .Instance.CatDefs.Categories, x => x.Cat == m_currentItemSpawnerID.Category);
                    ItemSpawnerCategoryDefinitions.SubCategory SubCat = Array.Find(Cat.Subcats, x => x.Subcat == m_currentItemSpawnerID.SubCategory);

                    output += $"\n\n";
                    if (Cat != null)
                    {
                        output += $"{Cat.DisplayName} ({Cat.DoesDisplay_Sandbox}, {Cat.DoesDisplay_Unlocks}) | ";
                    }
                    if (SubCat != null)
                    {
                        output += $"{SubCat.DisplayName} ({SubCat.DoesDisplay_Sandbox}, {SubCat.DoesDisplay_Unlocks}) | ";
                    }
                    output += $"{m_currentItemSpawnerID.DisplayName} ({m_currentItemSpawnerID.ItemID})";
                    output += $"\nSpawns: {m_currentItemSpawnerID.MainObject.DisplayName} on {(!(m_currentItemSpawnerID.UsesLargeSpawnPad || m_currentItemSpawnerID.UsesHugeSpawnPad) ? "Small" : (m_currentItemSpawnerID.UsesLargeSpawnPad ? "Large" : "Huge"))}";
                    if (m_currentItemSpawnerID.SecondObject != null)
                    {
                        output += $", {m_currentItemSpawnerID.SecondObject.DisplayName}";
                    }
                    output          += $"\nUnlock Cost: {m_currentItemSpawnerID.UnlockCost} S.A.U.C.E. {(m_currentItemSpawnerID.IsUnlockedByDefault ? "(Unlocked by default) -" : "-")} Is Reward: {m_currentItemSpawnerID.IsReward}";
                    output          += $"\nSubheading: {m_currentItemSpawnerID.SubHeading}\nDescription: {m_currentItemSpawnerID.Description}";
                    ItemImage.sprite = m_currentItemSpawnerID.Sprite;
                }
                else
                {
                    output          += $"\n\nNo ItemSpawnerID found.";
                    ItemImage.sprite = ItemImageNoIcon;
                }

                ItemInfo.text = output;
            }
            else
            {
                ItemImage.sprite = ItemImageNoIcon;
                ItemInfo.text    = "No FVRObject found.";
                if (m_currentGameObj != null)
                {
                    ItemInfo.text += $"\nThe current object's name is {m_currentGameObj.name}.";
                }
                if (!string.IsNullOrEmpty(firstMatch))
                {
                    ItemInfo.text += $"\nThe match text was {firstMatch}.";
                }
            }
#endif
        }