private static void RegisterSwordmithng(Dictionary <ushort, int> researchDic, int level, List <string> requirements = null) { var research = new PandaResearch(researchDic, level, SwordSmithing, 1f, requirements); research.ResearchComplete += SwordResearch_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddColonistHealth(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.ScienceBagBasic, 2); researchDic.Add(BuiltinBlocks.ScienceBagLife, 2); researchDic.Add(BuiltinBlocks.Linen, 5); researchDic.Add(BuiltinBlocks.BronzeCoin, 10); var requirements = new List <string>() { ColonyBuiltIn.ScienceBagLife }; var research = new PandaResearch(researchDic, 1, ColonistHealth, 10f, requirements); research.ResearchComplete += Research_ResearchComplete1; ScienceManager.RegisterResearchable(research); for (int i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, ColonistHealth, 10f); research.ResearchComplete += Research_ResearchComplete1; ScienceManager.RegisterResearchable(research); } }
private static void AddBetterBuildersWandResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(Aether.Item.ItemIndex, 2); researchDic.Add(BuiltinBlocks.SteelIngot, 10); researchDic.Add(BuiltinBlocks.GoldIngot, 10); researchDic.Add(BuiltinBlocks.SilverIngot, 10); researchDic.Add(BuiltinBlocks.Planks, 10); var requirements = new List <string> { GetResearchKey(BuildersWand + "1") }; var research = new PandaResearch(researchDic, 1, BetterBuildersWand, 250f, requirements, 50); research.ResearchComplete += BetterBuildersWand_ResearchComplete; ScienceManager.RegisterResearchable(research); for (var i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, BetterBuildersWand, 250f, requirements, 50); research.ResearchComplete += BetterBuildersWand_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddIncreasedCapacity(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.IronBlock, 1); researchDic.Add(BuiltinBlocks.Planks, 5); researchDic.Add(BuiltinBlocks.SteelIngot, 2); researchDic.Add(BuiltinBlocks.GoldCoin, 10); var requirements = new List <string>() { GetResearchKey(Machines + "1") }; var research = new PandaResearch(researchDic, 1, IncreasedCapacity, .2f, requirements); research.ResearchComplete += IncreasedCapacity_ResearchComplete; ScienceManager.RegisterResearchable(research); for (int i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, IncreasedCapacity, .2f); research.ResearchComplete += IncreasedCapacity_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddReducedWaste(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.ScienceBagBasic, 2); researchDic.Add(BuiltinBlocks.ScienceBagLife, 1); researchDic.Add(BuiltinBlocks.Berry, 2); researchDic.Add(BuiltinBlocks.Bread, 2); researchDic.Add(BuiltinBlocks.GoldCoin, 10); var requirements = new List <string>() { ColonyBuiltIn.ScienceBagLife }; var research = new PandaResearch(researchDic, 1, ReducedWaste, 0.05f, requirements); research.ResearchComplete += ReducedWaste_ResearchComplete; ScienceManager.RegisterResearchable(research); for (int i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, ReducedWaste, 0.05f, requirements); research.ResearchComplete += ReducedWaste_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddTailorTraining(Dictionary <ushort, int> researchDic) { _defaultValues[nameof(TailorJob)] = TailorJob.StaticCraftingCooldown; researchDic.Clear(); researchDic.Add(BuiltinBlocks.LinenBag, 3); researchDic.Add(SCIENCEBAG, BAG_COST); researchDic.Add(COIN, COIN_COST); var requirements = new List <string>() { SCIENCEBAGREQ }; var research = new PandaResearch(researchDic, 1, TailorTraining, .05f, requirements); research.ResearchComplete += TrainedTailor_ResearchComplete; ScienceManager.RegisterResearchable(research); for (int i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, TailorTraining, .05f); research.ResearchComplete += TrainedTailor_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddImprovedSlings(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.Sling, 1); researchDic.Add(BuiltinBlocks.SlingBullet, 5); for (int i = 1; i <= 5; i++) { var research = new PandaResearch(researchDic, i, ImprovedSling, .05f); research.ResearchComplete += ImprovedSlings_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddHerbResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.ScienceBagLife, 2); researchDic.Add(BuiltinBlocks.ScienceBagAdvanced, 2); var requirements = new List <string>() { ColonyBuiltIn.ScienceBagAdvanced }; var research = new PandaResearch(researchDic, 1, Herbalists, 1f, requirements); research.ResearchComplete += Herbs_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddAdvanceApocthResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.ScienceBagLife, 4); researchDic.Add(BuiltinBlocks.ScienceBagAdvanced, 2); var requirements = new List <string>() { GetResearchKey(Apothecary + "1") }; var research = new PandaResearch(researchDic, 1, AdvancedApothecary, 1f, requirements); research.ResearchComplete += AdvanceApocth_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddKnightResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.CopperTools, 2); researchDic.Add(BuiltinBlocks.ScienceBagBasic, 2); researchDic.Add(BuiltinBlocks.Linen, 2); researchDic.Add(BuiltinBlocks.BronzeCoin, 10); var requirements = new List <string>() { GetResearchKey(SwordSmithing + "1") }; var research = new PandaResearch(researchDic, 1, Knights, 1f, requirements); research.ResearchComplete += Knights_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddMachines(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.IronWrought, 1); researchDic.Add(BuiltinBlocks.CopperTools, 1); researchDic.Add(BuiltinBlocks.Planks, 5); researchDic.Add(BuiltinBlocks.Linen, 2); var requirements = new List <string>() { ColonyBuiltIn.Bloomery }; var research = new PandaResearch(researchDic, 1, Machines, 1f, requirements, 20, false); research.ResearchComplete += Machiness_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddBuildersWandResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(Aether.Item.ItemIndex, 2); researchDic.Add(BuiltinBlocks.SteelIngot, 10); researchDic.Add(BuiltinBlocks.GoldIngot, 10); researchDic.Add(BuiltinBlocks.SilverIngot, 10); researchDic.Add(Items.Elementium.Item.ItemIndex, 1); var requirements = new List <string> { GetResearchKey(Elementium + "1") }; var research = new PandaResearch(researchDic, 1, BuildersWand, 1f, requirements, 50); research.ResearchComplete += BuildersWand_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddManaResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.Alkanet, 10); researchDic.Add(BuiltinBlocks.Wolfsbane, 10); researchDic.Add(BuiltinBlocks.Hollyhock, 10); researchDic.Add(BuiltinBlocks.LinseedOil, 10); researchDic.Add(BuiltinBlocks.Crystal, 10); var requirements = new List <string> { GetResearchKey(Apothecary + "1") }; var research = new PandaResearch(researchDic, 1, Mana, 1f, requirements, 50); research.ResearchComplete += Mana_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddMasterOfAll(Dictionary <ushort, int> researchDic) { _defaultValues[nameof(WorkBenchJob)] = WorkBenchJob.StaticCraftingCooldown; researchDic.Clear(); researchDic.Add(BuiltinBlocks.ScienceBagBasic, 1); researchDic.Add(BuiltinBlocks.ScienceBagLife, 1); researchDic.Add(BuiltinBlocks.ScienceBagAdvanced, 1); researchDic.Add(BuiltinBlocks.ScienceBagColony, 1); researchDic.Add(BuiltinBlocks.ScienceBagMilitary, 1); researchDic.Add(BuiltinBlocks.GoldCoin, 10); researchDic.Add(BuiltinBlocks.BronzeCoin, 10); var requirements = new List <string> { PandaResearch.GetResearchKey(MerchantTraining + "5"), PandaResearch.GetResearchKey(TailorTraining + "5"), PandaResearch.GetResearchKey(BloomeryTraining + "5"), PandaResearch.GetResearchKey(FineryForgeTraining + "5"), PandaResearch.GetResearchKey(FurnaceTraining + "5"), PandaResearch.GetResearchKey(GrinderTraining + "5"), PandaResearch.GetResearchKey(GunSmithTraining + "5"), PandaResearch.GetResearchKey(KilnTraining + "5"), PandaResearch.GetResearchKey(MetalSmithTraining + "5"), PandaResearch.GetResearchKey(MintTraining + "5"), PandaResearch.GetResearchKey(OvenTraining + "5"), PandaResearch.GetResearchKey(WoodcutterTraining + "5"), PandaResearch.GetResearchKey(WorkBenchTraining + "5") }; var research = new PandaResearch(researchDic, 1, MasterOfAll, .03f, requirements, 200); research.ResearchComplete += MasterOfAll_ResearchComplete; ScienceManager.RegisterResearchable(research); for (var i = 2; i <= 10; i++) { research = new PandaResearch(researchDic, i, MasterOfAll, .03f, null, 200); research.ResearchComplete += MasterOfAll_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddElementiumResearch(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(Aether.Item.ItemIndex, 1); researchDic.Add(BuiltinBlocks.Copper, 20); researchDic.Add(BuiltinBlocks.IronOre, 20); researchDic.Add(BuiltinBlocks.Tin, 20); researchDic.Add(BuiltinBlocks.GoldOre, 20); researchDic.Add(BuiltinBlocks.GalenaSilver, 20); researchDic.Add(BuiltinBlocks.GalenaLead, 20); var requirements = new List <string> { GetResearchKey(Mana + "1") }; var research = new PandaResearch(researchDic, 1, Elementium, 1f, requirements, 50); research.ResearchComplete += Elementium_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddTeleporters(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(Items.Mana.Item.ItemIndex, 10); researchDic.Add(BuiltinBlocks.ScienceBagColony, 10); researchDic.Add(BuiltinBlocks.ScienceBagAdvanced, 10); researchDic.Add(BuiltinBlocks.StoneBricks, 20); researchDic.Add(BuiltinBlocks.Crystal, 20); researchDic.Add(BuiltinBlocks.GoldCoin, 20); var requirements = new List <string> { GetResearchKey(Mana + "1"), GetResearchKey(Machines + "1") }; var research = new PandaResearch(researchDic, 1, Teleporters, 1f, requirements, 100, false); research.ResearchComplete += Teleporters_ResearchComplete; ScienceManager.RegisterResearchable(research); }
private static void AddImprovedCrossbows(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.Crossbow, 1); researchDic.Add(BuiltinBlocks.CrossbowBolt, 5); var requirements = new List <string>() { ColonyBuiltIn.CrossBowBolt }; var research = new PandaResearch(researchDic, 1, ImprovedCrossbow, .05f, requirements); research.ResearchComplete += ImprovedCrossbows_ResearchComplete; ScienceManager.RegisterResearchable(research); for (int i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, ImprovedCrossbow, .05f); research.ResearchComplete += ImprovedCrossbows_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void AddImprovedMatchlockgun(Dictionary <ushort, int> researchDic) { researchDic.Clear(); researchDic.Add(BuiltinBlocks.MatchlockGun, 1); researchDic.Add(BuiltinBlocks.LeadBullet, 5); researchDic.Add(BuiltinBlocks.GunpowderPouch, 2); var requirements = new List <string>() { ColonyBuiltIn.MatchlockGun }; var research = new PandaResearch(researchDic, 1, ImprovedMatchlockgun, .05f, requirements); research.ResearchComplete += ImprovedMatchlockguns_ResearchComplete; ScienceManager.RegisterResearchable(research); for (int i = 2; i <= 5; i++) { research = new PandaResearch(researchDic, i, ImprovedMatchlockgun, .05f); research.ResearchComplete += ImprovedMatchlockguns_ResearchComplete; ScienceManager.RegisterResearchable(research); } }
private static void MasterOfAll_ResearchComplete(object sender, ResearchCompleteEventArgs e) { var tmpValues = e.Manager.Player.GetTempValues(true); WorkBenchJob.StaticCraftingCooldown = _defaultValues[nameof(WorkBenchJob)] - _defaultValues[nameof(WorkBenchJob)] * (e.Research.Value + tmpValues .GetOrDefault(PandaResearch.GetResearchKey(WorkBenchTraining), 0f)); WoodcutterJob.StaticCraftingCooldown = _defaultValues[nameof(WoodcutterJob)] - _defaultValues[nameof(WoodcutterJob)] * (e.Research.Value + tmpValues .GetOrDefault(PandaResearch.GetResearchKey(WoodcutterTraining), 0f)); OvenJob.StaticCraftingCooldown = _defaultValues[nameof(OvenJob)] - _defaultValues[nameof(OvenJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(OvenTraining), 0f)); MintJob.StaticCraftingCooldown = _defaultValues[nameof(MintJob)] - _defaultValues[nameof(MintJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(MintTraining), 0f)); MetalSmithJob.StaticCraftingCooldown = _defaultValues[nameof(MetalSmithJob)] - _defaultValues[nameof(MetalSmithJob)] * (e.Research.Value + tmpValues .GetOrDefault(PandaResearch.GetResearchKey(MetalSmithTraining), 0f)); KilnJob.StaticCraftingCooldown = _defaultValues[nameof(KilnJob)] - _defaultValues[nameof(KilnJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(KilnTraining), 0f)); GunSmithJob.StaticCraftingCooldown = _defaultValues[nameof(GunSmithJob)] - _defaultValues[nameof(GunSmithJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(GunSmithTraining), 0f)); GrinderJob.StaticCraftingCooldown = _defaultValues[nameof(GrinderJob)] - _defaultValues[nameof(GrinderJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(GrinderTraining), 0f)); FurnaceJob.StaticCraftingCooldown = _defaultValues[nameof(FurnaceJob)] - _defaultValues[nameof(FurnaceJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(FurnaceTraining), 0f)); FineryForgeJob.StaticCraftingCooldown = _defaultValues[nameof(FineryForgeJob)] - _defaultValues[nameof(FineryForgeJob)] * (e.Research.Value + tmpValues .GetOrDefault(PandaResearch.GetResearchKey(FineryForgeTraining), 0f)); BloomeryJob.StaticCraftingCooldown = _defaultValues[nameof(BloomeryJob)] - _defaultValues[nameof(BloomeryJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(BloomeryTraining), 0f)); TailorJob.StaticCraftingCooldown = _defaultValues[nameof(TailorJob)] - _defaultValues[nameof(TailorJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(TailorTraining), 0f) ); ShopJob.StaticCraftingCooldown = _defaultValues[nameof(ShopJob)] - _defaultValues[nameof(ShopJob)] * (e.Research.Value + tmpValues.GetOrDefault(PandaResearch.GetResearchKey(MerchantTraining), 0f) ); }
public ResearchCompleteEventArgs(PandaResearch research, ScienceManagerPlayer player) { Research = research; Manager = player; }