Exemple #1
0
        private void makeMagicBookWeapons()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.WaterBolt, 1);

            workingCategories = makeWeaponsCategories(magicDamageKeyword, bookWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, ItemID.DemonScythe, 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, bookWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 50, ItemID.WaterBolt, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 10);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, bookWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #2
0
        private void makeMagicWeaponRecipes()
        {
            makeMagicStaffWeapons();
            makeMagicBookWeapons();

            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 30, ItemID.UnholyTrident, 1);

            working.addPart(ModContent.ItemType <HardmodePart>(), 5);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, spearWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 40, ItemID.ToxicFlask, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 25);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <MarbleUndergroundPart>(), 40, ItemID.MedusaHead, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 10);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, marbleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
        public override void AddRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            List <string> boxes = new List <string>()
            {
                "CalamityModMusic:AbyssLowerMusicbox",
                "CalamityModMusic:AcidRain2Musicbox",
                "CalamityModMusic:AquaticScourgeMusicbox",
                "CalamityModMusic:AstrageldonMusicbox",
                "CalamityModMusic:AstralMusicbox",
                "CalamityModMusic:AstralUndergroundMusicbox",
                "CalamityModMusic:AstrumDeusMusicbox",
                "CalamityModMusic:BoomerDukeMusicbox",
                "CalamityModMusic:BrimmyMusicbox",
                "CalamityModMusic:BumblebirbMusicbox",
                "CalamityModMusic:CalamitasMusicbox",
                "CalamityModMusic:CeaselessVoidMusicbox",
                "CalamityModMusic:CrabulonMusicbox",
                "CalamityModMusic:CragMusicbox",
                "CalamityModMusic:CryogenMusicbox",
                "CalamityModMusic:DesertScourgeMusicbox",
                "CalamityModMusic:DoGMusicbox",
                "CalamityModMusic:DoGP2Musicbox",
                "CalamityModMusic:HigherAbyssMusicbox",
                "CalamityModMusic:HiveMindMusicbox",
                "CalamityModMusic:LeviathanMusicbox",
                "CalamityModMusic:PerforatorMusicbox",
                "CalamityModMusic:PlaguebringerMusicbox",
                "CalamityModMusic:PolterghastMusicbox",
                "CalamityModMusic:ProfanedGuardianMusicbox",
                "CalamityModMusic:ProvidenceMusicbox",
                "CalamityModMusic:RavagerMusicbox",
                "CalamityModMusic:SCalAMusicbox",
                "CalamityModMusic:SCalEMusicbox",
                "CalamityModMusic:SCalGMusicbox",
                "CalamityModMusic:SCalLMusicbox",
                "CalamityModMusic:SignusMusicbox",
                "CalamityModMusic:SirenIdleMusicbox",
                "CalamityModMusic:SirenMusicbox",
                "CalamityModMusic:SlimeGodMusicbox",
                "CalamityModMusic:StormWeaverMusicbox",
                "CalamityModMusic:SulphurousMusicbox",
                "CalamityModMusic:SunkenSeaMusicbox",
                "CalamityModMusic:VoidMusicbox",
                "CalamityModMusic:Yharon1Musicbox",
                "CalamityModMusic:Yharon3Musicbox"
            };

            foreach (string box in boxes)
            {
                PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <MusicBoxPart>(), 1, box, 1);
                workingCategories = makeFurnitureCategories(musicBoxKeyword);
                workingCategories.AddRange(makeAccessoryCategories(musicBoxKeyword));
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Calamity Music"));
                PartRecipes.addRecipe(working);
            }
        }
Exemple #4
0
        private void makeBowRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 30, ItemID.Marrow, 1);

            working.addPart(ModContent.ItemType <HardmodePart>(), 5);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, bowWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, ItemID.HellwingBow, 1);
            working.addPart(ModContent.ItemType <DungeonUndergroundPart>(), 5);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, bowWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #5
0
        private void makeSummonerWeaponRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SlimeRainPart>(), 25, ItemID.SlimeStaff, 1);

            workingCategories = makeWeaponsCategories(summonerDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, slimeRainKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 40, ItemID.DeadlySphereStaff, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 25);
            workingCategories = makeWeaponsCategories(summonerDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #6
0
        private void makeFlailRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;
            PartRecipe        working = PartRecipe.SimplePartRecipe(ModContent.ItemType <CorruptionSurfacePart>(), 25, ItemID.BallOHurt, 1);

            workingCategories = makeWeaponsCategories(meleeDamageKeyword, flailWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.BlueMoon, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, flailWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, ItemID.Sunfury, 1);
            working.addPart(ModContent.ItemType <DungeonUndergroundPart>(), 5);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, flailWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #7
0
        private void makeRangedWeaponRecipes()
        {
            makeGunRecipes();
            makeBowRecipes();
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <GoblinArmyPart>(), 25, ItemID.Harpoon, 1);

            workingCategories = makeWeaponsCategories(rangedDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, goblinArmyKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 20, ItemID.Blowpipe, 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, dartsWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceUndergroundPart>(), 20, ItemID.SnowballCannon, 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #8
0
        private void makeLightPetsRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;
            PartRecipe        working = PartRecipe.SimplePartRecipe(ModContent.ItemType <CorruptionSurfacePart>(), 25, ItemID.ShadowOrb, 1);

            workingCategories = makePetsCategories(lightPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <CrimsonSurfacePart>(), 25, ItemID.CrimsonHeart, 1);
            workingCategories = makePetsCategories(lightPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 50, ItemID.WispinaBottle, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 10);
            workingCategories = makePetsCategories(lightPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #9
0
        private void makeGunRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <CorruptionSurfacePart>(), 25, ItemID.Musket, 1);

            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <CrimsonSurfacePart>(), 25, ItemID.TheUndertaker, 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.Handgun, 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 25, ItemID.Boomstick, 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 20, ItemID.FlareGun, 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 50, ItemID.Uzi, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 10);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 40, ItemID.NailGun, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 25);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #10
0
        public static PartRecipe makeSimpleEventPartRecipe(String mod, string biome, String itemTag, int amountItem, int partId, int amountPart, List <string> categories, Func <bool> available = null)
        {
            PartRecipe working = PartRecipe.SimplePartRecipe(partId, amountPart, ARareItemSwapJPANs.getItemTypeFromTag(itemTag), amountItem);

            if (available != null)
            {
                working.setAvailableFunction(available);
            }
            working.addCategoryAndSubcategories(categories);
            working.addCategoryAndSubcategories(makeByEventCategories(categories, biome));
            working.addCategoryAndSubcategories(makeByModCategories(categories, mod));
            return(working);
        }
Exemple #11
0
        private void makeNormalPetsRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceUndergroundPart>(), 30, ItemID.Fish, 1);

            workingCategories = makePetsCategories(normalPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 100, ItemID.Seaweed, 1);
            workingCategories = makePetsCategories(normalPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonGuardianPart>(), 5, ItemID.BoneKey, 1);
            workingCategories = makePetsCategories(normalPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBossCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 100, ItemID.LizardEgg, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 50);
            working.available = () => NPC.downedPlantBoss;
            workingCategories = makePetsCategories(normalPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 300, ItemID.AmberMosquito, 1);
            workingCategories = makePetsCategories(normalPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 50, ItemID.EyeSpring, 1);
            workingCategories = makePetsCategories(normalPetsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #12
0
        public static PartRecipe makePartRecipe(String mod, Item toAdd, int itemAmount, Item[] parts, int[] amounts, List <string> categories, Func <bool> available = null)
        {
            PartRecipe working = PartRecipe.SimplePartRecipe(parts[0].type, amounts[0], toAdd.type, itemAmount);

            for (int i = 1; i < parts.Length; i++)
            {
                working.addPart(parts[i].type, amounts[i]);
            }
            if (available != null)
            {
                working.setAvailableFunction(available);
            }
            working.addCategoryAndSubcategories(categories);
            working.addCategoryAndSubcategories(makeByModCategories(categories, mod));
            return(working);
        }
Exemple #13
0
        private void makeVanityAccessoryRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 50, ItemID.WhoopieCushion, 1);

            workingCategories = makeVanityCategories(accessoryKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #14
0
        public static PartRecipe makeSimpleBossPartRecipe(String mod, string boss, String itemTag, int amountItem, List <int> partsAndAmounts, List <string> categories, Func <bool> available = null)
        {
            if (partsAndAmounts == null || partsAndAmounts.Count < 2 || ((partsAndAmounts.Count & 1) == 1))
            {
                throw new ArgumentException("partsAndAmmounts must be non-null, non-empty, and contain an even number of contents ((partID, AmmountOfPart) pairs).");
            }
            PartRecipe working = PartRecipe.SimplePartRecipe(partsAndAmounts[0], partsAndAmounts[1], ARareItemSwapJPANs.getItemTypeFromTag(itemTag), amountItem);

            for (int i = 2; i < partsAndAmounts.Count; i++)
            {
                working.addPart(partsAndAmounts[i], partsAndAmounts[i + 1]);
                i++;
            }
            if (available != null)
            {
                working.setAvailableFunction(available);
            }
            working.addCategoryAndSubcategories(categories);
            working.addCategoryAndSubcategories(makeByBossCategories(categories, boss));
            working.addCategoryAndSubcategories(makeByModCategories(categories, mod));
            return(working);
        }
Exemple #15
0
        private void makeSpearRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, ItemID.DarkLance, 1);

            working.addPart(ModContent.ItemType <DungeonUndergroundPart>(), 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, spearWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <CrimsonSurfacePart>(), 25, ItemID.TheRottedFork, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, spearWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <OceanSurfacePart>(), 20, ItemID.Trident, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, spearWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, oceanBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 20, ItemID.Spear, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, spearWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, oceanBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #16
0
        private void makeBoomerangRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 25, ItemID.EnchantedBoomerang, 1);

            workingCategories = makeWeaponsCategories(meleeDamageKeyword, boomerangWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 20, ItemID.WoodenBoomerang, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, boomerangWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceUndergroundPart>(), 20, ItemID.IceBoomerang, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, boomerangWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 30, ItemID.Bananarang, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 3);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, boomerangWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #17
0
        private void makeThrowingWeaponRecipes()
        {
            makeExplosiveWeaponRecipes();

            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <GoblinArmyPart>(), 1, ItemID.SpikyBall, 25);

            workingCategories = makeWeaponsCategories(throwingDamageKeyword, thrownWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, goblinArmyKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MarbleUndergroundPart>(), 1, ItemID.Javelin, 15);
            workingCategories = makeWeaponsCategories(throwingDamageKeyword, thrownWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, marbleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);
            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #18
0
        private void makeYoyoRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.Valor, 1);

            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.Kraken, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 10);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 50, ItemID.Cascade, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 50, ItemID.HelFire, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 10);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 20, ItemID.Rally, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleSurfacePart>(), 50, ItemID.Yelets, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 10);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 50, ItemID.Amarok, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 10);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 25, ItemID.TheEyeOfCthulhu, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, yoyoWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #19
0
        private void makeDyeRecipes()
        {
            List <int> dyes = new List <int>()
            {
                ItemID.TeamDye,
                ItemID.TeamHairDye,
                ItemID.HairDyeRemover,
                ItemID.MartianHairDye,
                ItemID.MartianArmorDye,
                ItemID.ReflectiveDye,
                ItemID.TwilightHairDye,
                3597,
                3598,
                3600
            };

            for (int i = 1007; i <= 1070; i++)
            {
                dyes.Add(i);
            }

            for (int i = 1977; i <= 1986; i++)
            {
                dyes.Add(i);
            }
            for (int i = 2869; i <= 2879; i++)
            {
                dyes.Add(i);
            }
            for (int i = 2883; i <= 2885; i++)
            {
                dyes.Add(i);
            }
            for (int i = 3025; i <= 3028; i++)
            {
                dyes.Add(i);
            }
            for (int i = 3038; i <= 3042; i++)
            {
                dyes.Add(i);
            }
            for (int i = 3526; i <= 3530; i++)
            {
                dyes.Add(i);
            }
            for (int i = 3533; i <= 3535; i++)
            {
                dyes.Add(i);
            }
            for (int i = 3550; i <= 3562; i++)
            {
                dyes.Add(i);
            }

            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            foreach (int dye in dyes)
            {
                PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DyePart>(), 1, dye, 1);
                workingCategories = makeVanityCategories(dyeKeyword);
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); PartRecipes.addRecipe(working);
            }
        }
Exemple #20
0
        private void makeVanityHeadRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 25, ItemID.JungleRose, 1);

            workingCategories = makeVanityCategories(armorHeadKeyword);
            workingCategories.AddRange(makeMaterialCategories(plantsMaterialKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 5, ItemID.BunnyHood, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 25, ItemID.TopHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 1, ItemID.TopHat, 1);
            working.addPart(ModContent.ItemType <RareEnemyPart>(), 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 25, ItemID.ArchaeologistsHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 40, ItemID.PlumbersHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleSurfacePart>(), 40, ItemID.RobotHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 25, ItemID.TheBrideHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 1, ItemID.TheBrideHat, 1);
            working.addPart(ModContent.ItemType <RareEnemyPart>(), 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 40, ItemID.PharaohsMask, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 80, ItemID.EskimoHood, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 40, ItemID.GreenCap, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 40, ItemID.MummyMask, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 100, ItemID.Skull, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <RainPart>(), 25, ItemID.RainHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <RainPart>(), 25, ItemID.UmbrellaHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.EyePatch, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.SailorHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.BuccaneerBandana, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PumpkinMoonPart>(), 15, ItemID.ScarecrowHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pumpkinMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 20, ItemID.MoonMask, 1);
            working.addPart(ModContent.ItemType <CorruptionUndergroundPart>(), 10);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 20, ItemID.MoonMask, 1);
            working.addPart(ModContent.ItemType <CrimsonUndergroundPart>(), 10);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 30, ItemID.SunMask, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 50, ItemID.LamiaHat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MartianInvasionPart>(), 30, ItemID.MartianCostumeMask, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, martianInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MartianInvasionPart>(), 30, ItemID.MartianUniformHelmet, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, martianInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 20, ItemID.PedguinHat, 1);
            working.addPart(ModContent.ItemType <CrimsonSurfacePart>(), 20);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 20, ItemID.PedguinHat, 1);
            working.addPart(ModContent.ItemType <CorruptionSurfacePart>(), 20);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PresentPart>(), 5, ItemID.GiantBow, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, christmasKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PumpkinMoonPart>(), 10, ItemID.JackOLanternMask, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pumpkinMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #21
0
        private void makeVanityBodyRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 25, ItemID.TheBrideDress, 1);

            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 1, ItemID.TheBrideDress, 1);
            working.addPart(ModContent.ItemType <RareEnemyPart>(), 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 40, ItemID.PharaohsRobe, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 80, ItemID.EskimoCoat, 1);
            workingCategories = makeVanityCategories(armorHeadKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 40, ItemID.MummyShirt, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <RainPart>(), 25, ItemID.RainCoat, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.SailorShirt, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.BuccaneerShirt, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PumpkinMoonPart>(), 15, ItemID.ScarecrowShirt, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pumpkinMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 50, ItemID.LamiaShirt, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MartianInvasionPart>(), 30, ItemID.MartianCostumeShirt, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, martianInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MartianInvasionPart>(), 30, ItemID.MartianUniformTorso, 1);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, martianInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 20, ItemID.PedguinShirt, 1);
            working.addPart(ModContent.ItemType <CrimsonSurfacePart>(), 20);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 20, ItemID.PedguinShirt, 1);
            working.addPart(ModContent.ItemType <CorruptionSurfacePart>(), 20);
            workingCategories = makeVanityCategories(armorBodyKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
        private void makeDeveloperRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            List <string> armors = new List <string>()
            {
                "ModLoader:toplayz_Head",
                "ModLoader:toplayz_Body",
                "ModLoader:toplayz_Legs",
                "ModLoader:KittyKitCatCat_Head",
                "ModLoader:KittyKitCatCat_Body",
                "ModLoader:KittyKitCatCat_Legs",
                "ModLoader:Polyblank_Head",
                "ModLoader:Polyblank_Body",
                "ModLoader:Polyblank_Legs",
                "ModLoader:dinidini_Head",
                "ModLoader:dinidini_Body",
                "ModLoader:dinidini_Legs",

                "ModLoader:Remeus_Head",
                "ModLoader:Remeus_Body",
                "ModLoader:Remeus_Legs",
                "ModLoader:Saethar_Head",
                "ModLoader:Saethar_Body",
                "ModLoader:Saethar_Legs",

                "ModLoader:Orian_Head",
                "ModLoader:Orian_Body",
                "ModLoader:Orian_Legs",
                "ModLoader:Glory_Head",
                "ModLoader:Glory_Body",
                "ModLoader:Glory_Legs",
                "ModLoader:POCKETS_Head",
                "ModLoader:POCKETS_Body",
                "ModLoader:POCKETS_Legs",

                "ModLoader:PowerRanger_Head",
                "ModLoader:PowerRanger_Body",
                "ModLoader:PowerRanger_Legs"
            };

            List <string> wings = new List <string>()
            {
                "ModLoader:dinidini_Wings",
                "ModLoader:Saethar_Wings",
                "ModLoader:POCKETS_Wings"
            };

            PartRecipe working;

            for (int i = 0; i < armors.Count; i++)
            {
                working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DeveloperPart>(), 1, ARareItemSwapJPANs.getItemTypeFromTag(armors[i]), 1);
                workingCategories = makeVanityCategories(armorHeadKeyword);
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "ModLoader"));
                PartRecipes.addRecipe(working);
                i++;
                working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DeveloperPart>(), 1, ARareItemSwapJPANs.getItemTypeFromTag(armors[i]), 1);
                workingCategories = makeVanityCategories(armorBodyKeyword);
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "ModLoader"));
                PartRecipes.addRecipe(working);
                i++;
                working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DeveloperPart>(), 1, ARareItemSwapJPANs.getItemTypeFromTag(armors[i]), 1);
                workingCategories = makeVanityCategories(armorLegsKeyword);
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "ModLoader"));
                PartRecipes.addRecipe(working);
            }

            for (int i = 0; i < wings.Count; i++)
            {
                working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DeveloperPart>(), 1, ARareItemSwapJPANs.getItemTypeFromTag(wings[i]), 1);
                workingCategories = makeAccessoryCategories(movementKeyword, movementFlyingKeyword);
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "ModLoader"));
                PartRecipes.addRecipe(working);
            }
        }
Exemple #23
0
        private void makeMeleeWeaponRecipes()
        {
            makeBoomerangRecipes();
            makeSwordRecipes();
            makeFlailRecipes();
            makeSpearRecipes();
            makeYoyoRecipes();

            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 25, ItemID.StaffofRegrowth, 1);

            workingCategories = makeWeaponsCategories(meleeDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceUndergroundPart>(), 25, ItemID.IceSickle, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 2);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <BloodMoonPart>(), 50, ItemID.KOCannon, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 2);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, bloodMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 50, ItemID.BonePickaxe, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, pickaxeWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 25, ItemID.DeathSickle, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 40, ItemID.ButchersChainsaw, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 25);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, axeWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 40, ItemID.ChainKnife, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #24
0
        private void makeSwordRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SkySurfacePart>(), 25, ItemID.Starfury, 1);

            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, skyBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.Muramasa, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceUndergroundPart>(), 20, ItemID.IceBlade, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 50, ItemID.BeamSword, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 5);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.Keybrand, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 5);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 50, ItemID.BoneSword, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 25, ItemID.ZombieArm, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SolarEclipsePart>(), 40, ItemID.PsychoKnife, 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 25);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, solarEclipseKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 100, ItemID.Arkhalis, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 20, ItemID.EnchantedSword, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 30, ItemID.AntlionClaw, 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, swordWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #25
0
        private void makeVanityLegsRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 80, ItemID.EskimoPants, 1);

            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 40, ItemID.MummyPants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.SailorPants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PirateInvasionPart>(), 25, ItemID.BuccaneerPants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pirateInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <PumpkinMoonPart>(), 15, ItemID.ScarecrowPants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, pumpkinMoonKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 50, ItemID.LamiaPants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MartianInvasionPart>(), 30, ItemID.MartianCostumePants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, martianInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <MartianInvasionPart>(), 30, ItemID.MartianUniformPants, 1);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByEventCategories(workingCategories, martianInvasionKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 20, ItemID.PedguinPants, 1);
            working.addPart(ModContent.ItemType <CrimsonSurfacePart>(), 20);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <IceSurfacePart>(), 20, ItemID.PedguinPants, 1);
            working.addPart(ModContent.ItemType <CorruptionSurfacePart>(), 20);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, iceBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 20, ItemID.DjinnsCurse, 1);
            working.addPart(ModContent.ItemType <CorruptionSurfacePart>(), 20);
            working.addPart(ModContent.ItemType <HardmodePart>(), 20);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertUndergroundPart>(), 20, ItemID.DjinnsCurse, 1);
            working.addPart(ModContent.ItemType <CrimsonSurfacePart>(), 20);
            working.addPart(ModContent.ItemType <HardmodePart>(), 20);
            workingCategories = makeVanityCategories(armorLegsKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
        private void makeChestRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            //wooden chest
            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 25, "ThoriumMod:FortifyingWand", 1);

            workingCategories = makeWeaponsCategories(HealerKeyword, staffWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 25, "ThoriumMod:Flute", 1);
            workingCategories = makeWeaponsCategories(bardKeyword, windInstrumentKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //web chest
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <SpiderCaveUndergroundPart>(), 25, "ThoriumMod:Webgun", 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, gunWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, spiderCaveBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //gold chest (underground)
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 25, "ThoriumMod:EnchantedArmor", 1);
            workingCategories = new List <string>()
            {
                utilityKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 25, "ThoriumMod:EnchantedKnife", 1);
            workingCategories = makeWeaponsCategories(throwingDamageKeyword, thrownWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 100, "ThoriumMod:EnchantedPickaxe", 1);
            workingCategories = makeWeaponsCategories(meleeDamageKeyword, pickaxeWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //living wood
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 25, "ThoriumMod:LivingWoodSap", 1);
            workingCategories = makeAccessoryCategories(summonerDamageKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //ivy
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 25, "ThoriumMod:ForestOcarina", 1);
            workingCategories = makeWeaponsCategories(bardKeyword, windInstrumentKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <JungleUndergroundPart>(), 25, "ThoriumMod:TheDigester", 1);
            workingCategories = makeWeaponsCategories(HealerKeyword, gunWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //water chest
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 25, "ThoriumMod:BubbleMagnet", 1);
            workingCategories = new List <string>()
            {
                utilityKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, oceanBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <OceanSurfacePart>(), 25, "ThoriumMod:BubbleMagnet", 1);
            workingCategories = new List <string>()
            {
                utilityKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, oceanBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //locked chest
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, "ThoriumMod:NaiadShiv", 1);
            workingCategories = makeWeaponsCategories(throwingDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, "ThoriumMod:StreamSting", 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, bowWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, "ThoriumMod:HighTide", 1);
            workingCategories = makeWeaponsCategories(rangedDamageKeyword, bowWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, "ThoriumMod:StrongestLink", 1);
            workingCategories = makeWeaponsCategories(summonerDamageKeyword, flailWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, "ThoriumMod:BoneReaper", 1);
            workingCategories = makeWeaponsCategories(HealerKeyword, scytheWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, "ThoriumMod:BoneReaper", 1);
            workingCategories = makeWeaponsCategories(HealerKeyword, scytheWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //shadowChest
            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, "ThoriumMod:Nocturne", 1);
            working.addPart(ModContent.ItemType <DungeonUndergroundPart>(), 5);
            workingCategories = makeWeaponsCategories(bardKeyword, stringInstrumentKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //depth chest
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 25, "ThoriumMod:MagicConch", 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, brassInstrumentKeyword);  working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 25, "ThoriumMod:SteelDrum", 1);
            workingCategories = makeWeaponsCategories(bardKeyword, percursionInstrumentKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 25, "ThoriumMod:AnglerBowl", 1);
            workingCategories = makeAccessoryCategories(lightSourceKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 25, "ThoriumMod:SeaTurtlesBulwark", 1);
            workingCategories = makeAccessoryCategories(defenseKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 25, "ThoriumMod:RainStone", 1);
            workingCategories = new List <string>()
            {
                utilityKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //scarlet chest
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, "ThoriumMod:MixTape", 1);
            workingCategories = makeAccessoryCategories(bardKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 45, "ThoriumMod:MixTape", 1);
            workingCategories = makeAccessoryCategories(bardKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, "ThoriumMod:MaggotItem", 1);
            workingCategories = new List <string>()
            {
                mountKeyword + "/" + transformationKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 45, "ThoriumMod:MaggotItem", 1);
            workingCategories = new List <string>()
            {
                mountKeyword + "/" + transformationKeyword
            };  working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, "ThoriumMod:LootRang", 1);
            workingCategories = new List <string>()
            {
                utilityKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 45, "ThoriumMod:LootRang", 1);
            workingCategories = new List <string>()
            {
                utilityKeyword
            }; working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, "ThoriumMod:SpringSteps", 1);
            workingCategories = makeAccessoryCategories(movementKeyword, movementBootsKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 45, "ThoriumMod:SpringSteps", 1);
            workingCategories = makeAccessoryCategories(movementKeyword, movementBootsKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, "ThoriumMod:DeepStaff", 1);
            workingCategories = makeWeaponsCategories(HealerKeyword, staffWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 45, "ThoriumMod:DeepStaff", 1);
            workingCategories = makeWeaponsCategories(HealerKeyword, staffWeaponKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 30, "ThoriumMod:RingofUnity", 1);
            workingCategories = makeAccessoryCategories(lifeKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 50, "ThoriumMod:RingofUnity", 1);
            workingCategories = makeAccessoryCategories(lifeKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 50, "ThoriumMod:MagmaBoundFishingLine", 1);
            workingCategories = makeAccessoryCategories(fishingKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestUndergroundPart>(), 90, "ThoriumMod:MagmaBoundFishingLine", 1);
            workingCategories = makeAccessoryCategories(fishingKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //Biome Chests
            //depths
            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 250, "ThoriumMod:AquaticDepthsBiomeKey", 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 200);
            workingCategories = new List <string>()
            {
                utilityKeyword
            };
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 250, "ThoriumMod:Fishbone", 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 200);
            workingCategories = makeWeaponsCategories(bardKeyword, stringInstrumentKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <AquaticDepthsPart>(), 3, "ThoriumMod:AquaticDepthsBiomeChest", 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 1);
            workingCategories = makeFurnitureCategories(chestKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //desert
            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 250, "ThoriumMod:DesertBiomeKey", 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 200);
            workingCategories = new List <string>()
            {
                utilityKeyword
            };
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 250, "ThoriumMod:PharaohsSlab", 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 200);
            workingCategories = makeWeaponsCategories(throwingDamageKeyword, otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <DesertSurfacePart>(), 3, "ThoriumMod:DesertBiomeChest", 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 1);
            workingCategories = makeFurnitureCategories(chestKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, desertBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //hell
            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 250, "ThoriumMod:UnderworldBiomeKey", 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 200);
            workingCategories = new List <string>()
            {
                utilityKeyword
            };
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 250, "ThoriumMod:PheonixStaff", 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 200);
            workingCategories = makeWeaponsCategories(HealerKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 3, "ThoriumMod:UnderworldBiomeChest", 1);
            working.addPart(ModContent.ItemType <PostPlanteraPart>(), 1);
            workingCategories = makeFurnitureCategories(chestKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #27
0
 public override void AddRecipes()
 {
     base.AddRecipes();
     PartRecipes.addRecipe(PartRecipe.SimplePartRecipe(this.item.type, 1, ModContent.ItemType <PostDevourerOfGodsPart>(), 1));
 }
Exemple #28
0
        private void makeMagicStaffWeapons()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <CorruptionSurfacePart>(), 25, ItemID.Vilethorn, 1);

            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 30, ItemID.FlowerofFire, 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.MagicMissile, 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <DungeonUndergroundPart>(), 25, ItemID.AquaScepter, 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, dungeonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <HellUndergroundPart>(), 25, ItemID.Flamelash, 1);
            working.addPart(ModContent.ItemType <DungeonUndergroundPart>(), 5);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <ForestSurfacePart>(), 20, ItemID.WandofSparking, 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <RainPart>(), 20, ItemID.NimbusRod, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <CrimsonSurfacePart>(), 20, ItemID.CrimsonRod, 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <SpiderCaveUndergroundPart>(), 25, ItemID.PoisonStaff, 1);
            working.addPart(ModContent.ItemType <HardmodePart>(), 1);
            workingCategories = makeWeaponsCategories(magicDamageKeyword, staffWeaponKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, spiderCaveBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Terraria")); recipes.Add(working);


            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
        private void makeFishingRecipes()
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            List <string>     workingCategories;

            PartRecipe working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 8, "ThoriumMod:StrangeCrate", 1);

            workingCategories = makeFishingCategories(crateKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 5, "ThoriumMod:AquaticDepthsCrate", 1);
            working.addPart(ModContent.ItemType <AquaticDepthsPart>());
            workingCategories = makeFishingCategories(crateKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, aquaticDepthsBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 5, "ThoriumMod:ScarletCrate", 1);
            working.addPart(ModContent.ItemType <ForestUndergroundPart>());
            workingCategories = makeFishingCategories(crateKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, forestBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 5, "ThoriumMod:ScarletCrate", 1);
            working.addPart(ModContent.ItemType <HellUndergroundPart>());
            workingCategories = makeFishingCategories(crateKeyword); working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, hellBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);



            //crate drops
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 500, "ThoriumMod:AquaticSonarDevice", 1);
            workingCategories = makeFishingCategories(accessoryKeyword);
            workingCategories.AddRange(makeAccessoryCategories(fishingKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 120, "ThoriumMod:DrownedDoubloon", 1);
            workingCategories = makeFishingCategories(accessoryKeyword);
            workingCategories.AddRange(makeAccessoryCategories(movementKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, purityBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //quest fish
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 20, "ThoriumMod:Guppy", 1);
            workingCategories = makeFishingCategories(questFishKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium"));
            working.irreversible = true;
            PartRecipes.addRecipe(working);

            //trash
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 1, "ThoriumMod:IgneousRock", 10);
            workingCategories = makeFishingCategories(otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 1, "ThoriumMod:ScorchedBone", 10);
            workingCategories = makeFishingCategories(otherKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            //fish
            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 1, "ThoriumMod:MagmaGill", 5);
            workingCategories = makeFishingCategories(fishKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working           = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 1, "ThoriumMod:FlamingCrackGut", 5);
            workingCategories = makeFishingCategories(fishKeyword);
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 40, "ThoriumMod:BrainCoral", 1);
            working.addPart(ModContent.ItemType <CrimsonSurfacePart>(), 5);
            workingCategories = makeFishingCategories("Weapon");
            workingCategories.AddRange(makeWeaponsCategories(HealerKeyword, staffWeaponKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, crimsonBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 40, "ThoriumMod:RottenCod", 1);
            working.addPart(ModContent.ItemType <CorruptionSurfacePart>(), 5);
            workingCategories = makeFishingCategories("Weapon");
            workingCategories.AddRange(makeWeaponsCategories(HealerKeyword, staffWeaponKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, corruptionBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 40, "ThoriumMod:RivetingTadpole", 1);
            working.addPart(ModContent.ItemType <JungleSurfacePart>(), 5);
            workingCategories = makeFishingCategories("Weapon");
            workingCategories.AddRange(makeWeaponsCategories(bardKeyword, windInstrumentKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, jungleBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            working = PartRecipe.SimplePartRecipe(ModContent.ItemType <FishingPart>(), 40, "ThoriumMod:SpittingFish", 1);
            working.addPart(ModContent.ItemType <OceanSurfacePart>(), 5);
            workingCategories = makeFishingCategories("Weapon");
            workingCategories.AddRange(makeWeaponsCategories(summonerDamageKeyword, fishKeyword));
            working.addCategoryAndSubcategories(workingCategories);
            working.addCategoryAndSubcategories(makeByBiomeCategories(workingCategories, oceanBiomeKeyword));
            working.addCategoryAndSubcategories(makeByModCategories(workingCategories, "Thorium")); recipes.Add(working);

            foreach (PartRecipe pr in recipes)
            {
                PartRecipes.addRecipe(pr);
            }
        }
Exemple #30
0
        public static List <PartRecipe> buildCommonShopRecipe(int ItemId, List <string> workingCategories, string shopKey, Func <bool> available = null, string modName = "Terraria")
        {
            List <PartRecipe> recipes = new List <PartRecipe>();
            Item itm = new Item();

            itm.SetDefaults(ItemId, true);
            if (itm.value < 1)
            {
                itm.value = 1;
            }

            int minorStack = 1;
            int stack      = 1;
            int majorStack = 1;

            int minorPartCost = itm.value;
            int partCost      = itm.value;
            int majorPartCost = itm.value;

            while (minorPartCost % 5 != 0)
            {
                minorPartCost += itm.value;
                minorStack    += 1;
            }
            minorPartCost /= 5;
            if (minorStack > itm.maxStack)
            {
                minorStack = 0;
            }

            while (partCost % 500 != 0)
            {
                partCost += itm.value;
                stack++;
            }
            partCost /= 500;
            if (stack > itm.maxStack)
            {
                stack = 0;
            }

            while (majorPartCost % 50000 != 0)
            {
                majorPartCost += itm.value;
                majorStack++;
            }
            majorPartCost /= 50000;
            if (majorStack > itm.maxStack)
            {
                majorStack = 0;
            }
            PartRecipe working;

            if (minorStack == 0)
            {
                working = PartRecipe.SimplePartRecipe(ModContent.ItemType <MinorShopPart>(), itm.value / 5 + 1, ItemId, 1);
                if (available != null)
                {
                    working.setAvailableFunction(available);
                }
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByShopCategories(workingCategories, shopKey));
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, modName)); recipes.Add(working);
            }
            else
            {
                working = PartRecipe.SimplePartRecipe(ModContent.ItemType <MinorShopPart>(), minorPartCost, ItemId, minorStack);
                if (available != null)
                {
                    working.setAvailableFunction(available);
                }
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByShopCategories(workingCategories, shopKey));
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, modName)); recipes.Add(working);
            }
            if (stack != 0)
            {
                working = PartRecipe.SimplePartRecipe(ModContent.ItemType <ShopPart>(), partCost, ItemId, stack);
                if (available != null)
                {
                    working.setAvailableFunction(available);
                }
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByShopCategories(workingCategories, shopKey));
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, modName)); recipes.Add(working);
            }
            if (majorStack != 0)
            {
                working = PartRecipe.SimplePartRecipe(ModContent.ItemType <MajorShopPart>(), majorPartCost, ItemId, majorStack);
                if (available != null)
                {
                    working.setAvailableFunction(available);
                }
                working.addCategoryAndSubcategories(workingCategories);
                working.addCategoryAndSubcategories(makeByShopCategories(workingCategories, shopKey));
                working.addCategoryAndSubcategories(makeByModCategories(workingCategories, modName)); recipes.Add(working);
            }
            return(recipes);
        }