From 7143d4548c7206834993ab3a7ca9d3ad5d8f7996 Mon Sep 17 00:00:00 2001 From: JoshuaNavarro Date: Thu, 29 Aug 2019 19:51:13 -0700 Subject: [PATCH] Added in prismatic ore vein, nugget, and furnace recipe. Also added in gemstone to nugget or shard depending on config. --- .../Items/Resources/Ore/PrismaticNugget.png | Bin 0 -> 237 bytes .../Objects/Resources/Ore/Prismatic.png | Bin 0 -> 605 bytes .../Framework/Configs/ConfigManager.cs | 24 + .../Configs/VanillaMachineRecipeConfig.cs | 36 + .../Framework/Crafting/VanillaRecipeBook.cs | 64 +- .../Revitalize/Framework/Enums/Enums.cs | 1144 +++++++++++++++++ .../Environment/DarkerNightConfig.cs | 9 + .../Framework/Objects/ResourceManager.cs | 55 +- GeneralMods/Revitalize/ModCore.cs | 53 +- GeneralMods/Revitalize/Revitalize.csproj | 8 + 10 files changed, 1362 insertions(+), 31 deletions(-) create mode 100644 GeneralMods/Revitalize/Content/Graphics/Items/Resources/Ore/PrismaticNugget.png create mode 100644 GeneralMods/Revitalize/Content/Graphics/Objects/Resources/Ore/Prismatic.png create mode 100644 GeneralMods/Revitalize/Framework/Configs/ConfigManager.cs create mode 100644 GeneralMods/Revitalize/Framework/Configs/VanillaMachineRecipeConfig.cs diff --git a/GeneralMods/Revitalize/Content/Graphics/Items/Resources/Ore/PrismaticNugget.png b/GeneralMods/Revitalize/Content/Graphics/Items/Resources/Ore/PrismaticNugget.png new file mode 100644 index 0000000000000000000000000000000000000000..985430599feccdc84ac549adc0eb4923bc715731 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|mV3H5hFJ6_ zCrGfeIGm{GPzx_UTg#Eg@$-Dbt{#`a%TE7G|NsBL{Szq`;~9E~UkQoLVPjd7`l06k z%tlA1L$Qmubv8aU>FnEKIsNVb|KgJW|L;HXBR}(m!z}KwAI5*eA3se@u-MY|@cP$s zo}}lVTkg(peE45k<6C;dkNXYIvch`I`wUo&PPn~G`LW8p@gcXf!r{a=2cfwK4jg!J lM&QT&nTiwclo*6CFr;j7&Px%7fD1xR5*=&k>5*GVH}4aUFAaK?3m65t&7mvRS=^EgMyIZRX?Pmod~-Mg-vlJ zdDB0TH${4}5TaFRgarl#HlzzLN^{0`5iQig8Md}lx^p2|wB9b}PCGOG+`aGneI7pV z`@${>D2Uz8cTGS+h;O|jpdcjKy`!kQazm2cBA_5f#}65Mm#+*X$?pG(sw?59rsm=z zdy!x$%zUa3fHq&RAqq1n!VC(tpk+Yl4X2T8cIH!k1Vdpmg)sm$ZH2U&K+{&Zy?&M+ z#aGdwWkC3+?tsn1haVOI0|rQ|37kiclU5V-C_e5_L>ZFb{u4;wXPLYZ!XHrp(DOOc zY690j2W`#mCds9O%A3wsLtZ7xZsBV6qUUpbDL6QJuu!~nb33i)Pf(lu%3?Ch%+fRf zp7$eUI>%^iJj&DYo5cotJ_lgH<*9^+0LQcIXxfVT7bKgV&#ssO&MZxneEE?V3y)1g zXTRT&09bx*W>UWk)(*{^qkTBY+~O2_m-k?`){+$Ux? zGgZ|9f6mn~arfG``lXbvsONJ;k985eH^~#(U3|o?neGGK-UxtW-nmU6+3a}42vNNY zfNXXNeLYqMVA-09|B9zm`&E0##>N_Tb@e8}nVJWT-l!+JxWGHrYQW_UO6dlWWOt;p r#Z^~~TMgiNWo9Y`CQ(@)?J&n*D1^=0!US&H00000NkvXXu0mjffF&1{ literal 0 HcmV?d00001 diff --git a/GeneralMods/Revitalize/Framework/Configs/ConfigManager.cs b/GeneralMods/Revitalize/Framework/Configs/ConfigManager.cs new file mode 100644 index 00000000..14023629 --- /dev/null +++ b/GeneralMods/Revitalize/Framework/Configs/ConfigManager.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Revitalize.Framework.Configs +{ + /// + /// Handles holding all of the config information. + /// + public class ConfigManager + { + /// + /// The config file for vanilla machine recipes. + /// + public VanillaMachineRecipeConfig vanillaMachineConfig; + + public ConfigManager() + { + this.vanillaMachineConfig = VanillaMachineRecipeConfig.InitializeConfig(); + } + } +} diff --git a/GeneralMods/Revitalize/Framework/Configs/VanillaMachineRecipeConfig.cs b/GeneralMods/Revitalize/Framework/Configs/VanillaMachineRecipeConfig.cs new file mode 100644 index 00000000..6f5eefbf --- /dev/null +++ b/GeneralMods/Revitalize/Framework/Configs/VanillaMachineRecipeConfig.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Revitalize.Framework.Environment; + +namespace Revitalize.Framework.Configs +{ + public class VanillaMachineRecipeConfig + { + /// + /// Should the more expensive recipe be used for smelting. If true the 7 gems smelt a sigle nugget. If false they smelt a prismatic shard after 7 days. + /// + public bool ExpensiveGemstoneToPrismaticFurnaceRecipe; + + public VanillaMachineRecipeConfig() + { + this.ExpensiveGemstoneToPrismaticFurnaceRecipe = false; + } + + public static VanillaMachineRecipeConfig InitializeConfig() + { + if (File.Exists(Path.Combine(ModCore.ModHelper.DirectoryPath, "Configs", "VanillaMachineRecipeConfig.json"))) + return ModCore.ModHelper.Data.ReadJsonFile(Path.Combine("Configs", "VanillaMachineRecipeConfig.json")); + else + { + VanillaMachineRecipeConfig Config = new VanillaMachineRecipeConfig(); + ModCore.ModHelper.Data.WriteJsonFile(Path.Combine("Configs", "VanillaMachineRecipeConfig.json"), Config); + return Config; + } + } + + } +} diff --git a/GeneralMods/Revitalize/Framework/Crafting/VanillaRecipeBook.cs b/GeneralMods/Revitalize/Framework/Crafting/VanillaRecipeBook.cs index a509f121..ca5b1bdc 100644 --- a/GeneralMods/Revitalize/Framework/Crafting/VanillaRecipeBook.cs +++ b/GeneralMods/Revitalize/Framework/Crafting/VanillaRecipeBook.cs @@ -35,7 +35,7 @@ namespace Revitalize.Framework.Crafting VanillaRecipe furnace_tinOre = new VanillaRecipe(new Dictionary() { {ModCore.ObjectManager.resources.getOre("Tin"),5 }, - {new StardewValley.Object(382,1),1} + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} }, new KeyValuePair(ModCore.ObjectManager.GetItem("TinIngot"), 1), TimeUtilities.GetMinutesFromTime(0,0,50), new StatCost(), false); this.recipesByObjectName["Furnace"].Add("Tin Ore", furnace_tinOre); @@ -43,7 +43,7 @@ namespace Revitalize.Framework.Crafting VanillaRecipe furnace_bauxiteOre = new VanillaRecipe(new Dictionary() { {ModCore.ObjectManager.resources.getOre("Bauxite"),5 }, - {new StardewValley.Object(382,1),1} + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} }, new KeyValuePair(ModCore.ObjectManager.GetItem("AluminumIngot"), 1), TimeUtilities.GetMinutesFromTime(0,1,30), new StatCost(), false); this.recipesByObjectName["Furnace"].Add("Bauxite Ore", furnace_bauxiteOre); @@ -51,7 +51,7 @@ namespace Revitalize.Framework.Crafting VanillaRecipe furnace_leadOre = new VanillaRecipe(new Dictionary() { {ModCore.ObjectManager.resources.getOre("Lead"),5 }, - {new StardewValley.Object(382,1),1} + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} }, new KeyValuePair(ModCore.ObjectManager.GetItem("LeadIngot"), 1), TimeUtilities.GetMinutesFromTime(0,2,0), new StatCost(), false); this.recipesByObjectName["Furnace"].Add("Lead Ore", furnace_leadOre); @@ -59,7 +59,7 @@ namespace Revitalize.Framework.Crafting VanillaRecipe furnace_silverOre = new VanillaRecipe(new Dictionary() { {ModCore.ObjectManager.resources.getOre("Silver"),5 }, - {new StardewValley.Object(382,1),1} + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} }, new KeyValuePair(ModCore.ObjectManager.GetItem("SilverIngot"), 1), TimeUtilities.GetMinutesFromTime(0,3,0), new StatCost(), false); this.recipesByObjectName["Furnace"].Add("Silver Ore", furnace_silverOre); @@ -67,10 +67,64 @@ namespace Revitalize.Framework.Crafting VanillaRecipe furnace_titaniumOre = new VanillaRecipe(new Dictionary() { {ModCore.ObjectManager.resources.getOre("Titanium"),5 }, - {new StardewValley.Object(382,1),1} + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} }, new KeyValuePair(ModCore.ObjectManager.GetItem("TitaniumIngot"), 1), TimeUtilities.GetMinutesFromTime(0,4,0), new StatCost(), false); this.recipesByObjectName["Furnace"].Add("Titanium Ore", furnace_titaniumOre); + + VanillaRecipe furnace_prismaticNugget = new VanillaRecipe(new Dictionary() + { + {ModCore.ObjectManager.resources.getOre("PrismaticNugget"),7 }, + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} + }, new KeyValuePair(new StardewValley.Object((int)Enums.SDVObject.PrismaticShard,1), 1), TimeUtilities.GetMinutesFromTime(0, 7, 0), new StatCost(), false); + + this.recipesByObjectName["Furnace"].Add("Prismatic Nugget", furnace_prismaticNugget); + + if (ModCore.Configs.vanillaMachineConfig.ExpensiveGemstoneToPrismaticFurnaceRecipe) + { + VanillaRecipe furnace_gemsToPrismaticNugget = new VanillaRecipe(new Dictionary() + { + {new StardewValley.Object((int)Enums.SDVObject.Emerald,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Aquamarine,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Ruby,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Amethyst,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Topaz,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Jade,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Diamond,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} + }, new KeyValuePair(ModCore.ObjectManager.resources.getOre("PrismaticNugget"), 1), TimeUtilities.GetMinutesFromTime(7, 0, 0), new StatCost(), false); + + this.recipesByObjectName["Furnace"].Add("Emerald", furnace_gemsToPrismaticNugget); + this.recipesByObjectName["Furnace"].Add("Aquamarine", furnace_gemsToPrismaticNugget); + this.recipesByObjectName["Furnace"].Add("Ruby", furnace_gemsToPrismaticNugget); + this.recipesByObjectName["Furnace"].Add("Amethyst", furnace_gemsToPrismaticNugget); + this.recipesByObjectName["Furnace"].Add("Topaz", furnace_gemsToPrismaticNugget); + this.recipesByObjectName["Furnace"].Add("Jade", furnace_gemsToPrismaticNugget); + this.recipesByObjectName["Furnace"].Add("Diamond", furnace_gemsToPrismaticNugget); + } + else + { + VanillaRecipe furnace_gemsToPrismaticShard = new VanillaRecipe(new Dictionary() + { + {new StardewValley.Object((int)Enums.SDVObject.Emerald,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Aquamarine,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Ruby,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Amethyst,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Topaz,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Jade,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Diamond,1),1}, + {new StardewValley.Object((int)Enums.SDVObject.Coal,1),1} + }, new KeyValuePair(new StardewValley.Object((int)Enums.SDVObject.PrismaticShard,1), 1), TimeUtilities.GetMinutesFromTime(7, 0, 0), new StatCost(), false); + + this.recipesByObjectName["Furnace"].Add("Emerald", furnace_gemsToPrismaticShard); + this.recipesByObjectName["Furnace"].Add("Aquamarine", furnace_gemsToPrismaticShard); + this.recipesByObjectName["Furnace"].Add("Ruby", furnace_gemsToPrismaticShard); + this.recipesByObjectName["Furnace"].Add("Amethyst", furnace_gemsToPrismaticShard); + this.recipesByObjectName["Furnace"].Add("Topaz", furnace_gemsToPrismaticShard); + this.recipesByObjectName["Furnace"].Add("Jade", furnace_gemsToPrismaticShard); + this.recipesByObjectName["Furnace"].Add("Diamond", furnace_gemsToPrismaticShard); + } + } /// diff --git a/GeneralMods/Revitalize/Framework/Enums/Enums.cs b/GeneralMods/Revitalize/Framework/Enums/Enums.cs index 3d3d7e09..825f1574 100644 --- a/GeneralMods/Revitalize/Framework/Enums/Enums.cs +++ b/GeneralMods/Revitalize/Framework/Enums/Enums.cs @@ -6,8 +6,14 @@ using System.Threading.Tasks; namespace Revitalize.Framework { + /// + /// Enums. + /// public class Enums { + /// + /// References Stardew Valley facing direction for easier coding. + /// public enum Direction { Up, @@ -16,5 +22,1143 @@ namespace Revitalize.Framework Left } + /// + /// References Stardew Valley Object id's for easier coding. + /// + public enum SDVObject + { + Weeds = 0, + + //Stone = 2, + + //Stone = 4, + + WildHorseradish = 16, + + Daffodil = 18, + + Leek = 20, + + Dandelion = 22, + + Parsnip = 24, + + Lumber = 30, + + Emerald = 60, + + Aquamarine = 62, + + Ruby = 64, + + Amethyst = 66, + + Topaz = 68, + + Jade = 70, + + Diamond = 72, + + PrismaticShard = 74, + + //Stone = 75, + + //Stone = 76, + + //Stone = 77, + + CaveCarrot = 78, + + SecretNote = 79, + + Quartz = 80, + + FireQuartz = 82, + + FrozenTear = 84, + + EarthCrystal = 86, + + Coconut = 88, + + CactusFruit = 90, + + Sap = 92, + + Torch = 93, + + SpiritTorch = 94, + + DwarfScrollI = 96, + + DwarfScrollII = 97, + + DwarfScrollIII = 98, + + DwarfScrollIV = 99, + + ChippedAmphora = 100, + + Arrowhead = 101, + + LostBook = 102, + + AncientDoll = 103, + + ElvishJewelry = 104, + + ChewingStick = 105, + + OrnamentalFan = 106, + + DinosaurEgg = 107, + + RareDisc = 108, + + AncientSword = 109, + + RustySpoon = 110, + + RustySpur = 111, + + RustyCog = 112, + + ChickenStatue = 113, + + AncientSeed = 114, + + PrehistoricTool = 115, + + DriedStarfish = 116, + + Anchor = 117, + + GlassShards = 118, + + BoneFlute = 119, + + PrehistoricHandaxe = 120, + + DwarvishHelm = 121, + + DwarfGadget = 122, + + AncientDrum = 123, + + GoldenMask = 124, + + GoldenRelic = 125, + + StrangeDoll1 = 126, + + StrangeDoll2 = 127, + + Pufferfish = 128, + + Anchovy = 129, + + Tuna = 130, + + Sardine = 131, + + Bream = 132, + + LargemouthBass = 136, + + SmallmouthBass = 137, + + RainbowTrout = 138, + + Salmon = 139, + + Walleye = 140, + + Perch = 141, + + Carp = 142, + + Catfish = 143, + + Pike = 144, + + Sunfish = 145, + + RedMullet = 146, + + Herring = 147, + + Eel = 148, + + Octopus = 149, + + RedSnapper = 150, + + Squid = 151, + + Seaweed = 152, + + GreenAlgae = 153, + + SeaCucumber = 154, + + SuperCucumber = 155, + + Ghostfish = 156, + + WhiteAlgae = 157, + + Stonefish = 158, + + Crimsonfish = 159, + + Angler = 160, + + IcePip = 161, + + LavaEel = 162, + + Legend = 163, + + Sandfish = 164, + + ScorpionCarp = 165, + + TreasureChest = 166, + + JojaCola = 167, + + Trash = 168, + + Driftwood = 169, + + BrokenGlasses = 170, + + BrokenCD = 171, + + SoggyNewspaper = 172, + + Egg = 176, + + LargeEgg = 174, + + Hay = 178, + + BrownEgg = 180, + + LargeBrownEgg = 182, + + Milk = 184, + + LargeMilk = 186, + + GreenBean = 188, + + Cauliflower = 190, + + Potato = 192, + + FriedEgg = 194, + + Omelet = 195, + + Salad = 196, + + CheeseCauliflower = 197, + + BakedFish = 198, + + ParsnipSoup = 199, + + VegetableMedley = 200, + + CompleteBreakfast = 201, + + FriedCalamari = 202, + + StrangeBun = 203, + + LuckyLunch = 204, + + FriedMushroom = 205, + + Pizza = 206, + + BeanHotpot = 207, + + GlazedYams = 208, + + CarpSurprise = 209, + + Hashbrowns = 210, + + Pancakes = 211, + + SalmonDinner = 212, + + FishTaco = 213, + + CrispyBass = 214, + + PepperPoppers = 215, + + Bread = 216, + + TomKhaSoup = 218, + + TroutSoup = 219, + + ChocolateCake = 220, + + PinkCake = 221, + + RhubarbPie = 222, + + Cookie = 223, + + Spaghetti = 224, + + FriedEel = 225, + + SpicyEel = 226, + + Sashimi = 227, + + MakiRoll = 228, + + Tortilla = 229, + + RedPlate = 230, + + EggplantParmesan = 231, + + RicePudding = 232, + + IceCream = 233, + + BlueberryTart = 234, + + AutumnsBounty = 235, + + PumpkinSoup = 236, + + SuperMeal = 237, + + CranberrySauce = 238, + + Stuffing = 239, + + FarmersLunch = 240, + + SurvivalBurger = 241, + + DishOTheSea = 242, + + MinersTreat = 243, + + RootsPlatter = 244, + + Sugar = 245, + + WheatFlour = 246, + + Oil = 247, + + Garlic = 248, + + Kale = 250, + + Rhubarb = 252, + + Melon = 254, + + Tomato = 256, + + Morel = 257, + + Blueberry = 258, + + FiddleheadFern = 259, + + HotPepper = 260, + + Wheat = 262, + + Radish = 264, + + RedCabbage = 266, + + Starfruit = 268, + + Corn = 270, + + Eggplant = 272, + + Artichoke = 274, + + Pumpkin = 276, + + BokChoy = 278, + + Yam = 280, + + Chanterelle = 281, + + Cranberries = 282, + + Holly = 283, + + Beet = 284, + + CherryBomb = 286, + + Bomb = 287, + + MegaBomb = 288, + + //Stone = 290, + + Twig = 294, + + //Twig = 295, + + Salmonberry = 296, + + GrassStarter = 297, + + HardwoodFence = 298, + + AmaranthSeeds = 299, + + Amaranth = 300, + + GrapeStarter = 301, + + HopsStarter = 302, + + PaleAle = 303, + + Hops = 304, + + VoidEgg = 305, + + Mayonnaise = 306, + + DuckMayonnaise = 307, + + VoidMayonnaise = 308, + + Acorn = 309, + + MapleSeed = 310, + + PineCone = 311, + + //Weeds = 313, + + //Weeds = 314, + + //Weeds = 315, + + //Weeds = 316, + + //Weeds = 317, + + //Weeds = 318, + + //Weeds = 319, + + //Weeds = 320, + + //Weeds = 321, + + WoodFence = 322, + + StoneFence = 323, + + IronFence = 324, + + Gate = 325, + + DwarvishTranslationGuide = 326, + + WoodFloor = 328, + + StoneFloor = 329, + + Clay = 330, + + WeatheredFloor = 331, + + CrystalFloor = 333, + + CopperBar = 334, + + IronBar = 335, + + GoldBar = 336, + + IridiumBar = 337, + + RefinedQuartz = 338, + + Honey = 340, + + TeaSet = 341, + + Pickles = 342, + + //Stone = 343, + + Jelly = 344, + + Beer = 346, + + RareSeed = 347, + + Wine = 348, + + EnergyTonic = 349, + + Juice = 350, + + MuscleRemedy = 351, + + BasicFertilizer = 368, + + QualityFertilizer = 369, + + BasicRetainingSoil = 370, + + QualityRetainingSoil = 371, + + Clam = 372, + + GoldenPumpkin = 373, + + CopperOre = 378, + + IronOre = 380, + + Coal = 382, + + GoldOre = 384, + + IridiumOre = 386, + + Wood = 388, + + Stone = 390, + + NautilusShell = 392, + + Coral = 393, + + RainbowShell = 394, + + Coffee = 395, + + SpiceBerry = 396, + + SeaUrchin = 397, + + Grape = 398, + + SpringOnion = 399, + + Strawberry = 400, + + StrawFloor = 401, + + SweetPea = 402, + + FieldSnack = 403, + + CommonMushroom = 404, + + WoodPath = 405, + + WildPlum = 406, + + GravelPath = 407, + + Hazelnut = 408, + + CrystalPath = 409, + + Blackberry = 410, + + CobblestonePath = 411, + + WinterRoot = 412, + + BlueSlimeEgg = 413, + + CrystalFruit = 414, + + SteppingStonePath = 415, + + SnowYam = 416, + + SweetGemBerry = 417, + + Crocus = 418, + + Vinegar = 419, + + RedMushroom = 420, + + Sunflower = 421, + + PurpleMushroom = 422, + + Rice = 423, + + Cheese = 424, + + GoatCheese = 426, + + Cloth = 428, + + Truffle = 430, + + TruffleOil = 432, + + CoffeeBean = 433, + + Stardrop = 434, + + GoatMilk = 436, + + RedSlimeEgg = 437, + + LargeGoatMilk = 438, + + PurpleSlimeEgg = 439, + + Wool = 440, + + ExplosiveAmmo = 441, + + DuckEgg = 442, + + DuckFeather = 444, + + RabbitsFoot = 446, + + StoneBase = 449, + + //Stone = 450, + + //Weeds = 452, + + AncientFruit = 454, + + AlgaeSoup = 456, + + PaleBroth = 457, + + Bouquet = 458, + + Mead = 459, + + MermaidsPendant = 460, + + DecorativePot = 461, + + DrumBlock = 463, + + FluteBlock = 464, + + SpeedGrow = 465, + + DeluxeSpeedGrow = 466, + + ParsnipSeeds = 472, + + BeanStarter = 473, + + CauliflowerSeeds = 474, + + PotatoSeeds = 475, + + GarlicSeeds = 476, + + KaleSeeds = 477, + + RhubarbSeeds = 478, + + MelonSeeds = 479, + + TomatoSeeds = 480, + + BlueberrySeeds = 481, + + PepperSeeds = 482, + + WheatSeeds = 483, + + RadishSeeds = 484, + + RedCabbageSeeds = 485, + + StarfruitSeeds = 486, + + CornSeeds = 487, + + EggplantSeeds = 488, + + ArtichokeSeeds = 489, + + PumpkinSeeds = 490, + + BokChoySeeds = 491, + + YamSeeds = 492, + + CranberrySeeds = 493, + + BeetSeeds = 494, + + SpringSeeds = 495, + + SummerSeeds = 496, + + FallSeeds = 497, + + WinterSeeds = 498, + + AncientSeeds = 499, + + TulipBulb = 427, + + JazzSeeds = 429, + + PoppySeeds = 453, + + SpangleSeeds = 455, + + SunflowerSeeds = 431, + + FairySeeds = 425, + + SmallGlowRing = 516, + + GlowRing = 517, + + SmallMagnetRing = 518, + + MagnetRing = 519, + + SlimeCharmerRing = 520, + + WarriorRing = 521, + + VampireRing = 522, + + SavageRing = 523, + + RingofYoba = 524, + + SturdyRing = 525, + + BurglarsRing = 526, + + IridiumBand = 527, + + JukeboxRing = 528, + + AmethystRing = 529, + + TopazRing = 530, + + AquamarineRing = 531, + + JadeRing = 532, + + EmeraldRing = 533, + + RubyRing = 534, + + Geode = 535, + + FrozenGeode = 536, + + MagmaGeode = 537, + + Alamite = 538, + + Bixite = 539, + + Baryte = 540, + + Aerinite = 541, + + Calcite = 542, + + Dolomite = 543, + + Esperite = 544, + + Fluorapatite = 545, + + Geminite = 546, + + Helvite = 547, + + Jamborite = 548, + + Jagoite = 549, + + Kyanite = 550, + + Lunarite = 551, + + Malachite = 552, + + Neptunite = 553, + + LemonStone = 554, + + Nekoite = 555, + + Orpiment = 556, + + PetrifiedSlime = 557, + + ThunderEgg = 558, + + Pyrite = 559, + + OceanStone = 560, + + GhostCrystal = 561, + + Tigerseye = 562, + + Jasper = 563, + + Opal = 564, + + FireOpal = 565, + + Celestine = 566, + + Marble = 567, + + Sandstone = 568, + + Granite = 569, + + Basalt = 570, + + Limestone = 571, + + Soapstone = 572, + + Hematite = 573, + + Mudstone = 574, + + Obsidian = 575, + + Slate = 576, + + FairyStone = 577, + + StarShards = 578, + + PrehistoricScapula = 579, + + PrehistoricTibia = 580, + + PrehistoricSkull = 581, + + SkeletalHand = 582, + + PrehistoricRib = 583, + + PrehistoricVertebra = 584, + + SkeletalTail = 585, + + NautilusFossil = 586, + + AmphibianFossil = 587, + + PalmFossil = 588, + + Trilobite = 589, + + ArtifactSpot = 590, + + Tulip = 591, + + SummerSpangle = 593, + + FairyRose = 595, + + BlueJazz = 597, + + Sprinkler = 599, + + Poppy = 376, + + PlumPudding = 604, + + ArtichokeDip = 605, + + StirFry = 606, + + RoastedHazelnuts = 607, + + PumpkinPie = 608, + + RadishSalad = 609, + + FruitSalad = 610, + + BlackberryCobbler = 611, + + CranberryCandy = 612, + + Apple = 613, + + Bruschetta = 618, + + QualitySprinkler = 621, + + IridiumSprinkler = 645, + + Coleslaw = 648, + + FiddleheadRisotto = 649, + + PoppyseedMuffin = 651, + + CherrySapling = 628, + + ApricotSapling = 629, + + OrangeSapling = 630, + + PeachSapling = 631, + + PomegranateSapling = 632, + + AppleSapling = 633, + + Apricot = 634, + + Orange = 635, + + Peach = 636, + + Pomegranate = 637, + + Cherry = 638, + + //Stone = 668, + + //Stone = 670, + + //Weeds = 674, + + //Weeds = 675, + + //Weeds = 676, + + //Weeds = 677, + + //Weeds = 678, + + //Weeds = 679, + + GreenSlimeEgg = 680, + + RainTotem = 681, + + MutantCarp = 682, + + BugMeat = 684, + + Bait = 685, + + Spinner = 686, + + DressedSpinner = 687, + + WarpTotemFarm = 688, + + WarpTotemMountains = 689, + + WarpTotemBeach = 690, + + BarbedHook = 691, + + LeadBobber = 692, + + TreasureHunter = 693, + + TrapBobber = 694, + + CorkBobber = 695, + + Sturgeon = 698, + + TigerTrout = 699, + + Bullhead = 700, + + Tilapia = 701, + + Chub = 702, + + Magnet = 703, + + Dorado = 704, + + Albacore = 705, + + Shad = 706, + + Lingcod = 707, + + Halibut = 708, + + Hardwood = 709, + + CrabPot = 710, + + Lobster = 715, + + Crayfish = 716, + + Crab = 717, + + Cockle = 718, + + Mussel = 719, + + Shrimp = 720, + + Snail = 721, + + Periwinkle = 722, + + Oyster = 723, + + MapleSyrup = 724, + + OakResin = 725, + + PineTar = 726, + + Chowder = 727, + + LobsterBisque = 730, + + FishStew = 728, + + Escargot = 729, + + MapleBar = 731, + + CrabCakes = 732, + + Woodskip = 734, + + StrawberrySeeds = 745, + + JackOLantern = 746, + + RottenPlant = 747, + + //RottenPlant = 748, + + OmniGeode = 749, + + //Weeds = 750, + + //Stone = 751, + + //Stone = 760, + + //Stone = 762, + + //Stone = 764, + + //Stone = 765, + + Slime = 766, + + BatWing = 767, + + SolarEssence = 768, + + VoidEssence = 769, + + MixedSeeds = 770, + + Fiber = 771, + + OilofGarlic = 772, + + LifeElixir = 773, + + WildBait = 774, + + Glacierfish = 775, + + //Weeds = 784, + + //Weeds = 785, + + //Weeds = 786, + + BatteryPack = 787, + + LostAxe = 788, + + LuckyPurpleShorts = 789, + + BerryBasket = 790, + + //Weeds = 792, + + //Weeds = 793, + + //Weeds = 794, + + VoidSalmon = 795, + + Slimejack = 796, + + Pearl = 797, + + MidnightSquid = 798, + + SpookFish = 799, + + Blobfish = 800, + + WeddingRing = 801, + + CactusSeeds = 802, + + IridiumMilk = 803, + } + + public enum SDVBigCraftable + { + LightningRod=9, + Keg=12, + Furnace=13, + PreservesJar=15, + JojaSodaMachine=117, + StatueOfEndlessFortune=127, + WormBin=154, + StatueOfPerfection=160, + SolidGoldLewis=164 + } } } diff --git a/GeneralMods/Revitalize/Framework/Environment/DarkerNightConfig.cs b/GeneralMods/Revitalize/Framework/Environment/DarkerNightConfig.cs index 71819fff..6aa78f50 100644 --- a/GeneralMods/Revitalize/Framework/Environment/DarkerNightConfig.cs +++ b/GeneralMods/Revitalize/Framework/Environment/DarkerNightConfig.cs @@ -1,8 +1,17 @@ namespace Revitalize.Framework.Environment { + /// + /// Deals with configurations for darker night. + /// public class DarkerNightConfig { + /// + /// Is darker night enabled? + /// public bool Enabled; + /// + /// The intensity for how dark it gets at night. + /// public float DarknessIntensity; public DarkerNightConfig() { diff --git a/GeneralMods/Revitalize/Framework/Objects/ResourceManager.cs b/GeneralMods/Revitalize/Framework/Objects/ResourceManager.cs index 6d76ef25..d372edd3 100644 --- a/GeneralMods/Revitalize/Framework/Objects/ResourceManager.cs +++ b/GeneralMods/Revitalize/Framework/Objects/ResourceManager.cs @@ -130,7 +130,7 @@ namespace Revitalize.Framework.Objects /// Serializes an example ore to eb /// private void serializeOreVeins() { - OreVeinObj tinOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Tin", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Tin"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Tin Ore Vein", "Omegasis.Revitalize.Resources.Ore.Tin", "A ore vein that is full of tin.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Tin"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Tin"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); + OreVeinObj tinOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Tin", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Tin"), typeof(OreVeinObj), Color.White), new BasicItemInformation("Tin Ore Vein", "Omegasis.Revitalize.Resources.Ore.Tin", "A ore vein that is full of tin.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Tin"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Tin"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); OreVeinTile tinOre_0_0= new OreVeinTile(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Tin", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Tin"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Tin Ore Vein", "Omegasis.Revitalize.Resources.Ore.Tin", "A ore vein that is full of tin.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Tin"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Tin"), new Animation(0, 0, 16, 16)), Color.White, false, null, null), new InformationFiles.OreResourceInformation(this.getOre("Tin"), true, true, true, false, new List() { @@ -150,7 +150,7 @@ namespace Revitalize.Framework.Objects ModCore.Serializer.SerializeContentFile("TinOre", tinOre_file, Path.Combine(this.oreResourceDataPath, "TinOre")); - OreVeinObj bauxiteOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Bauxite", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Bauxite Ore Vein", "Omegasis.Revitalize.Resources.Ore.Bauxite", "A ore vein that is full of bauxite ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); + OreVeinObj bauxiteOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Bauxite", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), typeof(OreVeinObj), Color.White), new BasicItemInformation("Bauxite Ore Vein", "Omegasis.Revitalize.Resources.Ore.Bauxite", "A ore vein that is full of bauxite ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); OreVeinTile bauxiteOre_0_0 = new OreVeinTile(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Bauxite", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Bauxite Ore Vein", "Omegasis.Revitalize.Resources.Ore.Bauxite", "A ore vein that is full of bauxite ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Bauxite"), new Animation(0, 0, 16, 16)), Color.White, false, null, null), new InformationFiles.OreResourceInformation(this.getOre("Bauxite"), true, true, true, false, new List() { @@ -161,7 +161,7 @@ namespace Revitalize.Framework.Objects }, new List() { new IntRange(0,9999) - }, null, null, .70d, 0.16d, 0.20d, 1d, 1d, 0, 0, 0, 0), new List(), 4); + }, null, null, .70d, 0.16d, 0.20d, 1d, 1d, 0, 0, 0, 0), new List(), 5); OreFactoryInfo bauxiteOre_0_0_file = new OreFactoryInfo(bauxiteOre_0_0); OreFactoryInfo bauxiteOre_file = new OreFactoryInfo(bauxiteOre); @@ -170,7 +170,7 @@ namespace Revitalize.Framework.Objects ModCore.Serializer.SerializeContentFile("BauxiteOre", bauxiteOre_file, Path.Combine(this.oreResourceDataPath, "BauxiteOre")); - OreVeinObj silverOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Silver", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Silver"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Silver Ore Vein", "Omegasis.Revitalize.Resources.Ore.Silver", "A ore vein that is full of silver ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Silver"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Silver"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); + OreVeinObj silverOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Silver", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Silver"), typeof(OreVeinObj), Color.White), new BasicItemInformation("Silver Ore Vein", "Omegasis.Revitalize.Resources.Ore.Silver", "A ore vein that is full of silver ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Silver"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Silver"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); OreVeinTile silverOre_0_0 = new OreVeinTile(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Silver", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Silver"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Silver Ore Vein", "Omegasis.Revitalize.Resources.Ore.Silver", "A ore vein that is full of silver ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Silver"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Silver"), new Animation(0, 0, 16, 16)), Color.White, false, null, null), new InformationFiles.OreResourceInformation(this.getOre("Silver"), true, true, true, false, new List() { @@ -181,7 +181,7 @@ namespace Revitalize.Framework.Objects }, new List() { new IntRange(0,9999) - }, null, null, .50d, 0.10d, 0.14d, 1d, 1d, 0, 0, 0, 0), new List(), 4); + }, null, null, .50d, 0.10d, 0.14d, 1d, 1d, 0, 0, 0, 0), new List(), 6); OreFactoryInfo silverOre_0_0_file = new OreFactoryInfo(silverOre_0_0); OreFactoryInfo silverOre_file = new OreFactoryInfo(silverOre); @@ -189,7 +189,7 @@ namespace Revitalize.Framework.Objects ModCore.Serializer.SerializeContentFile("SilverOre_0_0", silverOre_0_0_file, Path.Combine(this.oreResourceDataPath, "SilverOre")); ModCore.Serializer.SerializeContentFile("SilverOre", silverOre_file, Path.Combine(this.oreResourceDataPath, "SilverOre")); - OreVeinObj leadOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Lead", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Lead"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Lead Ore Vein", "Omegasis.Revitalize.Resources.Ore.Lead", "A ore vein that is full of lead ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Lead"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Lead"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); + OreVeinObj leadOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Lead", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Lead"), typeof(OreVeinObj), Color.White), new BasicItemInformation("Lead Ore Vein", "Omegasis.Revitalize.Resources.Ore.Lead", "A ore vein that is full of lead ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Lead"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Lead"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); OreVeinTile leadOre_0_0 = new OreVeinTile(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Lead", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Lead"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Lead Ore Vein", "Omegasis.Revitalize.Resources.Ore.Lead", "A ore vein that is full of lead ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Lead"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Lead"), new Animation(0, 0, 16, 16)), Color.White, false, null, null), new InformationFiles.OreResourceInformation(this.getOre("Lead"), true, true, true, false, new List() { @@ -201,7 +201,7 @@ namespace Revitalize.Framework.Objects }, new List() { new IntRange(0,9999) - }, null, null, .60d, 0.13d, 0.17d, 1d, 1d, 0, 0, 0, 0), new List(), 4); + }, null, null, .60d, 0.13d, 0.17d, 1d, 1d, 0, 0, 0, 0), new List(), 7); OreFactoryInfo leadOre_0_0_file = new OreFactoryInfo(leadOre_0_0); OreFactoryInfo leadOre_file = new OreFactoryInfo(leadOre); @@ -210,7 +210,7 @@ namespace Revitalize.Framework.Objects ModCore.Serializer.SerializeContentFile("LeadOre", leadOre_file, Path.Combine(this.oreResourceDataPath, "LeadOre")); - OreVeinObj titaniumOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Titanium", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Titanium Ore Vein", "Omegasis.Revitalize.Resources.Ore.Titanium", "A ore vein that is full of lead ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); + OreVeinObj titaniumOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Titanium", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), typeof(OreVeinObj), Color.White), new BasicItemInformation("Titanium Ore Vein", "Omegasis.Revitalize.Resources.Ore.Titanium", "A ore vein that is full of lead ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); OreVeinTile titaniumOre_0_0 = new OreVeinTile(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Titanium", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Titanium Ore Vein", "Omegasis.Revitalize.Resources.Ore.Titanium", "A ore vein that is full of lead ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Titanium"), new Animation(0, 0, 16, 16)), Color.White, false, null, null), new InformationFiles.OreResourceInformation(this.getOre("Titanium"), true, true, true, false, new List() { @@ -222,15 +222,35 @@ namespace Revitalize.Framework.Objects }, new List() { new IntRange(0,9999) - }, null, null, .40d, 0.05d, 0.10d, 1d, 1d, 0, 0, 0, 0), new List(), 4); + }, null, null, .40d, 0.05d, 0.10d, 1d, 1d, 0, 0, 0, 0), new List(), 8); OreFactoryInfo titaniumOre_0_0_file = new OreFactoryInfo(titaniumOre_0_0); OreFactoryInfo titaniumOre_file = new OreFactoryInfo(titaniumOre); ModCore.Serializer.SerializeContentFile("TitaniumOre_0_0", titaniumOre_0_0_file, Path.Combine(this.oreResourceDataPath, "TitaniumOre")); ModCore.Serializer.SerializeContentFile("TitaniumOre", titaniumOre_file, Path.Combine(this.oreResourceDataPath, "TitaniumOre")); - - } + + + OreVeinObj prismaticOre = new OreVeinObj(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Prismatic", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Prismatic"), typeof(OreVeinObj), Color.White), new BasicItemInformation("Prismatic Ore Vein", "Omegasis.Revitalize.Resources.Ore.Prismatic", "A ore vein that contains rare prismatic nuggets!", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Prismatic"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Prismatic"), new Animation(0, 0, 16, 16)), Color.White, false, null, null)); + OreVeinTile prismaticOre_0_0 = new OreVeinTile(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Resources.Ore.Prismatic", TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Prismatic"), typeof(OreVeinTile), Color.White), new BasicItemInformation("Prismatic Ore Vein", "Omegasis.Revitalize.Resources.Ore.Prismatic", "A ore vein that is full of prismatic ore.", "Revitalize.Ore", Color.Black, -300, 0, false, 350, true, true, TextureManager.GetTexture(ModCore.Manifest, "Resources.Ore", "Prismatic"), new AnimationManager(TextureManager.GetExtendedTexture(ModCore.Manifest, "Resources.Ore", "Prismatic"), new Animation(0, 0, 16, 16)), Color.White, false, null, null), + new InformationFiles.OreResourceInformation(this.getOre("PrismaticNugget"), true, true, true, false, new List() + { + new IntRange(110,120) + }, new List(), null, (i => i % 10 == 0), 7, 7, 1, 1, new IntRange(1, 1), new IntRange(1, 1), new IntRange(1, 5), new List() + { + new IntRange(1,9999) + }, new List() + { + }, null, null, .03d, 1d, 0.01d, 0.10, 1d, 1, 1, 1,1), new List(), 10); + + OreFactoryInfo prismaticOre_0_0_file = new OreFactoryInfo(prismaticOre_0_0); + OreFactoryInfo prismaticOre_file = new OreFactoryInfo(prismaticOre); + + ModCore.Serializer.SerializeContentFile("PrismaticOre_0_0", prismaticOre_0_0_file, Path.Combine(this.oreResourceDataPath, "PrismaticOre")); + ModCore.Serializer.SerializeContentFile("PrismaticOre", prismaticOre_file, Path.Combine(this.oreResourceDataPath, "PrismaticOre")); + + + } /// /// Loads in all of the ore items into the game. @@ -253,6 +273,9 @@ namespace Revitalize.Framework.Objects Ore titaniumOre = new Ore(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Items.Resources.Ore.TitaniumOre", TextureManager.GetTexture(ModCore.Manifest, "Items.Resources.Ore", "TitaniumOre"), typeof(Ore), Color.White, true), new BasicItemInformation("Titanium Ore", "Omegasis.Revitalize.Items.Resources.Ore.TitaniumOre", "Titanium ore that can be smelted into titanium ingots for further use.", "Ore", Color.Silver, -300, 0, false, 35, false, false, TextureManager.GetTexture(ModCore.Manifest, "Items.Resources.Ore", "TitaniumOre"), new AnimationManager(), Color.White, true, null, null), 1); this.ores.Add("Titanium", titaniumOre); + Ore prismaticOre = new Ore(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Items.Resources.Ore.PrismaticNugget", TextureManager.GetTexture(ModCore.Manifest, "Items.Resources.Ore", "PrismaticNugget"), typeof(Ore), Color.White, true), new BasicItemInformation("Prismatic Nugget", "Omegasis.Revitalize.Items.Resources.Ore.PrismaticNugget", "Rare prismatic ore that can be smelted into a prismatic shard when seven are gathered.", "Ore", Color.Silver, -300, 0, false, 200, false, false, TextureManager.GetTexture(ModCore.Manifest, "Items.Resources.Ore", "PrismaticNugget"), new AnimationManager(), Color.White, true, null, null), 1); + this.ores.Add("PrismaticNugget", prismaticOre); + CustomObject tinIngot = new CustomObject(PyTKHelper.CreateOBJData("Omegasis.Revitalize.Items.Resources.Ore.TinIngot", TextureManager.GetTexture(ModCore.Manifest, "Items.Resources.Ore", "TinIngot"), typeof(CustomObject), Color.White, true), new BasicItemInformation("Tin Ingot", "Omegasis.Revitalize.Items.Resources.Ore.TinIngot", "A tin ingot that can be used for crafting purposes.", "Metal", Color.Silver, -300, 0, false,75, false, false, TextureManager.GetTexture(ModCore.Manifest, "Items.Resources.Ore", "TinIngot"), new AnimationManager(), Color.White, true, null, null), 1); ModCore.ObjectManager.AddItem("TinIngot", tinIngot); @@ -511,7 +534,7 @@ namespace Revitalize.Framework.Objects { if (LocationUtilities.Farm_IsFarmHiltopFarm() == false) { - ModCore.log("Farm is not hiltop farm!"); + //ModCore.log("Farm is not hiltop farm!"); return; } GameLocation farm = Game1.getFarm(); @@ -523,7 +546,7 @@ namespace Revitalize.Framework.Objects if ((pair.Value.resourceInfo as OreResourceInformation).spawnsOnFarm) { spawnableOreVeins.Add(pair.Value); - ModCore.log("Found an ore that spawns on the farm!"); + //ModCore.log("Found an ore that spawns on the farm!"); } } foreach (OreVeinObj ore in spawnableOreVeins) @@ -534,7 +557,7 @@ namespace Revitalize.Framework.Objects List openTiles = this.getFarmQuarryOpenTiles(ore); if (openTiles.Count == 0) { - ModCore.log("No open farm tiles!"); + //ModCore.log("No open farm tiles!"); } amount = Math.Min(amount, openTiles.Count); //Only spawn for as many open tiles or the amount of nodes to spawn. for (int i = 0; i < amount; i++) @@ -546,11 +569,11 @@ namespace Revitalize.Framework.Objects i--; //If the tile didn't spawn due to some odd reason ensure that the amount is spawned. openTiles.Remove(openTiles[position]); //amount = Math.Min(amount, openTiles.Count); //Only spawn for as many open tiles or the amount of nodes to spawn. - ModCore.log("Did not spawn ore in the farm quarry!"); + //ModCore.log("Did not spawn ore in the farm quarry!"); } else { - ModCore.log("Spawned ore in the farm quarry!"); + //ModCore.log("Spawned ore in the farm quarry!"); openTiles.Remove(openTiles[position]); //Remove that tile from the list of open tiles. } } diff --git a/GeneralMods/Revitalize/ModCore.cs b/GeneralMods/Revitalize/ModCore.cs index 3cf4a869..2626ea0c 100644 --- a/GeneralMods/Revitalize/ModCore.cs +++ b/GeneralMods/Revitalize/ModCore.cs @@ -23,6 +23,7 @@ using Revitalize.Framework.Objects.Extras; using Revitalize.Framework.Minigame.SeasideScrambleMinigame; using Revitalize.Framework.Objects.Items.Resources; using Revitalize.Framework.Hacks; +using Revitalize.Framework.Configs; namespace Revitalize { @@ -107,7 +108,9 @@ namespace Revitalize -Dye custom objects certain colors! -Rainbow Dye -(set a custom object to any color) -red, green, blue, yellow, pink, etc - -Make dye from flowers/coal/algee (black), etc + -Make dye from flowers/coal/algee/minerals/gems (black), etc + -soapstone (washes off dye) + -Lunarite (white) Dye Machine -takes custom object and dye -dyes the object @@ -131,7 +134,7 @@ namespace Revitalize // -Spell books // -Potions! // -Magic Meter - // -Connected chests much like Project EE2 from MC + // -Connected chests (3 digit color code) much like Project EE2 from MC // // // -Food @@ -218,11 +221,13 @@ namespace Revitalize public static Dictionary CustomObjects; + public static ConfigManager Configs; public override void Entry(IModHelper helper) { ModHelper = helper; ModMonitor = this.Monitor; Manifest = this.ModManifest; + Configs = new ConfigManager(); this.createDirectories(); this.initailizeComponents(); @@ -255,10 +260,19 @@ namespace Revitalize ModHelper.Events.Multiplayer.ModMessageReceived += MultiplayerUtilities.GetModMessage; ModHelper.Events.GameLoop.DayEnding += this.GameLoop_DayEnding; ModHelper.Events.GameLoop.Saving += this.GameLoop_Saving; - + //Adds in recipes to the mod. VanillaRecipeBook = new VanillaRecipeBook(); + + /* + foreach(var v in Game1.objectInformation) + { + string name = v.Value.Split('/')[0]; + ModCore.log(name + "="+v.Key+","+Environment.NewLine,false); + } + */ + } private void GameLoop_Saving(object sender, StardewModdingAPI.Events.SavingEventArgs e) @@ -273,7 +287,7 @@ namespace Revitalize private void GameLoop_DayEnding(object sender, StardewModdingAPI.Events.DayEndingEventArgs e) { - MultiplayerUtilities.RequestALLGuidObjects(); + //MultiplayerUtilities.RequestALLGuidObjects(); } /// @@ -437,7 +451,7 @@ namespace Revitalize // Game1.player.addItemToInventory(GetObjectFromPool("Omegasis.BigTiledTest")); //Game1.player.addItemToInventory(ObjectManager.getChair("Omegasis.Revitalize.Furniture.Chairs.OakChair")); //Game1.player.addItemToInventory(GetObjectFromPool("Omegasis.Revitalize.Furniture.Rugs.RugTest")); - Game1.player.addItemToInventory(ObjectManager.getTable("Omegasis.Revitalize.Furniture.Tables.OakTable")); + //Game1.player.addItemToInventory(ObjectManager.getTable("Omegasis.Revitalize.Furniture.Tables.OakTable")); //Game1.player.addItemToInventory(ObjectManager.getLamp("Omegasis.Revitalize.Furniture.Lamps.OakLamp")); //Game1.player.addItemToInventory(ObjectManager.getObject("Omegasis.Revitalize.Furniture.Arcade.SeasideScramble",ObjectManager.miscellaneous)); @@ -453,9 +467,21 @@ namespace Revitalize //Game1.player.addItemToInventory(ObjectManager.resources.getOre("Tin", 19)); //Ore tin = ObjectManager.resources.getOre("Tin", 19); - Game1.player.addItemToInventory(ObjectManager.GetItem("TinIngot", 1)); - Game1.player.addItemToInventory(new StardewValley.Object(388, 100)); - + //Game1.player.addItemToInventory(ObjectManager.GetItem("TinIngot", 1)); + //Game1.player.addItemToInventory(new StardewValley.Object(388, 100)); + Game1.player.addItemsByMenuIfNecessary(new List() + { + new StardewValley.Object(Vector2.Zero, (int)Enums.SDVBigCraftable.Furnace), + new StardewValley.Object((int)Enums.SDVObject.Coal,10), + new StardewValley.Object((int)Enums.SDVObject.PrismaticShard,5), + new StardewValley.Object((int)Enums.SDVObject.Emerald,1), + new StardewValley.Object((int)Enums.SDVObject.Aquamarine,1), + new StardewValley.Object((int)Enums.SDVObject.Ruby,1), + new StardewValley.Object((int)Enums.SDVObject.Amethyst,1), + new StardewValley.Object((int)Enums.SDVObject.Topaz,1), + new StardewValley.Object((int)Enums.SDVObject.Jade,1), + new StardewValley.Object((int)Enums.SDVObject.Diamond,1), + }); //ModCore.log("Tin sells for: " + tin.sellToStorePrice()); //ObjectManager.resources.spawnOreVein("Omegasis.Revitalize.Resources.Ore.Test", new Vector2(8, 7)); @@ -480,9 +506,16 @@ namespace Revitalize ///Logs information to the console. /// /// - public static void log(object message) + public static void log(object message, bool StackTrace = true) { - ModMonitor.Log(message.ToString() + " " + getFileDebugInfo()); + if (StackTrace) + { + ModMonitor.Log(message.ToString() + " " + getFileDebugInfo()); + } + else + { + ModMonitor.Log(message.ToString()); + } } public static string getFileDebugInfo() diff --git a/GeneralMods/Revitalize/Revitalize.csproj b/GeneralMods/Revitalize/Revitalize.csproj index 13eb9130..41f7e9a5 100644 --- a/GeneralMods/Revitalize/Revitalize.csproj +++ b/GeneralMods/Revitalize/Revitalize.csproj @@ -52,6 +52,8 @@ + + @@ -197,6 +199,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest @@ -257,6 +262,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest