diff --git a/src/ResearchTree/ResearchTree.cpp b/src/ResearchTree/ResearchTree.cpp index b23b4e4..a63f5c9 100644 --- a/src/ResearchTree/ResearchTree.cpp +++ b/src/ResearchTree/ResearchTree.cpp @@ -127,6 +127,7 @@ void ResearchTree::generateEngineTree() { return; } + // T1 _engineNodes.emplace(VerseEngine, Node{Node::Type::Engine, "Verse Engine", 1, 3, "A basic low-speed engine with great durability.", "Durability +346, Power +60, Armour +22, Acceleration +75, Magazine load +35, Energy capacity +35", @@ -140,61 +141,83 @@ void ResearchTree::generateEngineTree() { _engineNodes.emplace(MetalPlatings1, Node{Node::Type::Gear, "Metal Platings 1", 1, 0, "Level 1 metal plating that adds durability and armour to your engine.", "Durability +60, Armour +5, Acceleration -15", ""}); - _engineNodes.emplace(HeatTurbines1, Node{Node::Type::Gear, "Heat Turbines 1", 1, 0, "Modified heat turbines to increase speed for a M.A.S.S.", "Acceleration +75, Fuel capacity +5", ""}); - _engineNodes.emplace(Microcontroller1, Node{Node::Type::Gear, "Microcontroller 1", 1, 0, "A microchip that enhances various aspects of a M.A.S.S.", "Durability +36, Power +1, Armour +11, Magazine load +5, Energy capacity +5, Fuel capacity +3", ""}); - _engineNodes.emplace(CombustionController1, Node{Node::Type::Gear, "Combustion Controller 1", 1, 0, "Controlled combustion allows increased power generation through specific ignition.", "Power +2, Magazine load +10, Energy capacity +10, Acceleration -25", ""}); + // T2 _engineNodes.emplace(ModAlloyEngine, Node{Node::Type::Engine, "Mod. Alloy Engine", 2, 3, "Built with a modified alloy and able to sustain greater attacks from any enemy.", "Durability +1152, Power +75, Armour +194, Acceleration +75, Magazine load +40, Energy capacity +40", "Durability +3%"}); - _engineNodes.emplace(ChargedEngine, Node{Node::Type::Engine, "Charged Engine", 2, 3, "Remove most armours to attain more speed and power, and fuel.", "Durability +960, Power +75, Acceleration +300, Magazine load +40, Energy capacity +40, Fuel capacity +52", "Acceleration +5"}); - _engineNodes.emplace(ReinforcedLoadedEngine, Node{Node::Type::Engine, "Reinforced Loaded Engine", 2, 3, "An upgraded build of the basic model, with reinforced Verse Steel for more strength.", "Durability +960, Power +105, Armour +130, Acceleration +75, Magazine load +40, Energy capacity +40", "Power +3%"}); - _engineNodes.emplace(HeavyImpactsEnabler, Node{Node::Type::Engine, "Heavy Impacts Enabler", 2, 0, "Enable the usage of Heavy Combos in close combat attacks.", "", ""}); _engineNodes.emplace(MetalPlatings2, Node{Node::Type::Gear, "Metal Platings 2", 2, 0, "Level 2 Metal plating that adds durability and armour to your engine.", "Durability +180, Armour +41, Acceleration -15", ""}); - _engineNodes.emplace(HeatTurbines2, Node{Node::Type::Gear, "Heat Turbines 2", 2, 0, "Level 2 Modified heat turbines to increase speed for a M.A.S.S.", "Acceleration +75, Fuel capacity +16", ""}); - _engineNodes.emplace(Microcontroller2, Node{Node::Type::Gear, "Microcontroller 2", 2, 0, "Level 2 Microchip that enhances various aspects of a M.A.S.S.", "Durability +108, Power +3, Armour +17, Magazine load +6, Energy capacity +6, Fuel capacity +8", ""}); - _engineNodes.emplace(WeaponsCargo1, Node{Node::Type::Gear, "Weapons Cargo 1", 2, 0, - "Added another cargo hold for ammo and energy recharger", + "Added another cargo hold for ammo and energy recharger.", "Magazine load +24, Energy capacity +24, Acceleration -40", ""}); - _engineNodes.emplace(CombustionController2, Node{Node::Type::Gear, "Combustion Controller 2", 2, 0, "Level 2 Controlled combustion allows increased power generation through specific ignition.", "Power +5, Magazine load +12, Energy capacity +12, Acceleration -25", ""}); - _engineNodes.emplace(PoweredRewiring1, Node{Node::Type::Gear, "Powered Rewiring 1", 2, 0, "Rewiring that efficiently improves power and engine durability.", "Durability +180, Power +5", ""}); + // T3 + _engineNodes.emplace(ModSteelEngine, Node{Node::Type::Engine, "Mod. Steel Engine", 3, 3, + "Low-speed engine that uses heavy materials for high durability.", + "Durability +2352, Power +90, Armour +311, Acceleration +75, Magazine load +47, Energy capacity +47", + "Durability +3%"}); + _engineNodes.emplace(SuperchargedEngine, Node{Node::Type::Engine, "Supercharged Engine", 3, 3, + "An engine with more thermal efficiency that does not sacrifice much performance for speed.", + "Durability +1960, Power +90, Acceleration +300, Magazine load +47, Energy capacity +47, Fuel capacity +104", + "Acceleration +5"}); + _engineNodes.emplace(NecriumAlloyEngine, Node{Node::Type::Engine, "Necrium Alloy Engine", 3, 3, + "Engine constructed of Necrium Alloy. Costly but with better performance.", + "Durability +1960, Power +126, Armour +207, Acceleration +75, Magazine load +47, Energy capacity +47", + "Power +3%"}); + _engineNodes.emplace(MetalPlatings3, Node{Node::Type::Gear, "Metal Platings 3", 3, 0, + "Level 2 Metal plating that adds durability and armour to your engine.", + "Durability +360, Armour +57, Acceleration -15", ""}); + _engineNodes.emplace(HeatTurbines3, Node{Node::Type::Gear, "Heat Turbines 3", 3, 0, + "Level 3 Modified heat turbines to increase speed for a M.A.S.S.", + "Acceleration +75, Fuel capacity +32", ""}); + _engineNodes.emplace(Microcontroller3, Node{Node::Type::Gear, "Microcontroller 3", 3, 0, + "Level 3 Microchip that enhances various aspects of a M.A.S.S.", + "Durability +216, Power +5, Armour +24, Magazine load +7, Energy capacity +7, Fuel capacity +16", ""}); + _engineNodes.emplace(WeaponsCargo2, Node{Node::Type::Gear, "Weapons Cargo 2", 3, 0, + "Level 2 Added another cargo hold for ammo and energy recharger.", + "Magazine load +28, Energy capacity +28, Acceleration -40", ""}); + _engineNodes.emplace(CombustionController3, Node{Node::Type::Gear, "Combustion Controller 3", 3, 0, + "Level 3 Controlled combustion allows increased power generation through specific ignition.", + "Power +11, Magazine load +14, Energy capacity +14, Acceleration -25", ""}); + _engineNodes.emplace(PoweredRewiring2, Node{Node::Type::Gear, "Powered Rewiring 2", 3, 0, + "Level 2 Rewiring that efficiently improves power and engine durability.", + "Durability +360, Power +11", ""}); + _engineNodes.at(VerseEngine).addChild(_engineNodes.at(MetalPlatings1)); _engineNodes.at(VerseEngine).addChild(_engineNodes.at(HeatTurbines1)); _engineNodes.at(VerseEngine).addChild(_engineNodes.at(LoadedEngine)); @@ -212,6 +235,20 @@ void ResearchTree::generateEngineTree() { _engineNodes.at(ReinforcedLoadedEngine).addChild(_engineNodes.at(CombustionController2)); _engineNodes.at(ReinforcedLoadedEngine).addChild(_engineNodes.at(PoweredRewiring1)); _engineNodes.at(ReinforcedLoadedEngine).addChild(_engineNodes.at(HeavyImpactsEnabler)); + _engineNodes.at(MetalPlatings2).addChild(_engineNodes.at(ModSteelEngine)); + _engineNodes.at(HeatTurbines2).addChild(_engineNodes.at(SuperchargedEngine)); + _engineNodes.at(Microcontroller2).addChild(_engineNodes.at(SuperchargedEngine)); + _engineNodes.at(WeaponsCargo1).addChild(_engineNodes.at(SuperchargedEngine)); + _engineNodes.at(CombustionController2).addChild(_engineNodes.at(NecriumAlloyEngine)); + _engineNodes.at(PoweredRewiring1).addChild(_engineNodes.at(NecriumAlloyEngine)); + _engineNodes.at(ModSteelEngine).addChild(_engineNodes.at(MetalPlatings3)); + _engineNodes.at(ModSteelEngine).addChild(_engineNodes.at(HeatTurbines3)); + _engineNodes.at(SuperchargedEngine).addChild(_engineNodes.at(HeatTurbines3)); + _engineNodes.at(SuperchargedEngine).addChild(_engineNodes.at(Microcontroller3)); + _engineNodes.at(SuperchargedEngine).addChild(_engineNodes.at(WeaponsCargo2)); + _engineNodes.at(NecriumAlloyEngine).addChild(_engineNodes.at(WeaponsCargo2)); + _engineNodes.at(NecriumAlloyEngine).addChild(_engineNodes.at(CombustionController3)); + _engineNodes.at(NecriumAlloyEngine).addChild(_engineNodes.at(PoweredRewiring2)); _engineNodes.at(VerseEngine).setState(Node::State::Unlocked); }