lib/sc2ai/api/tech_tree_data.rb in sc2ai-0.1.0 vs lib/sc2ai/api/tech_tree_data.rb in sc2ai-0.2.0
- old
+ new
@@ -11,11 +11,17 @@
required_building: Api::UnitTypeId::ENGINEERINGBAY},
Api::UnitTypeId::ORBITALCOMMAND =>
{ability: Api::AbilityId::UPGRADETOORBITAL_ORBITALCOMMAND,
required_building: Api::UnitTypeId::BARRACKS}},
Api::UnitTypeId::BARRACKS =>
- {Api::UnitTypeId::MARINE =>
+ {Api::UnitTypeId::BARRACKSTECHLAB =>
+ {ability: Api::AbilityId::BUILD_TECHLAB_BARRACKS,
+ requires_placement_position: true},
+ Api::UnitTypeId::BARRACKSREACTOR =>
+ {ability: Api::AbilityId::BUILD_REACTOR_BARRACKS,
+ requires_placement_position: true},
+ Api::UnitTypeId::MARINE =>
{ability: Api::AbilityId::BARRACKSTRAIN_MARINE},
Api::UnitTypeId::REAPER =>
{ability: Api::AbilityId::BARRACKSTRAIN_REAPER},
Api::UnitTypeId::GHOST =>
{ability: Api::AbilityId::BARRACKSTRAIN_GHOST,
@@ -23,11 +29,17 @@
required_building: Api::UnitTypeId::GHOSTACADEMY},
Api::UnitTypeId::MARAUDER =>
{ability: Api::AbilityId::BARRACKSTRAIN_MARAUDER,
requires_techlab: true}},
Api::UnitTypeId::FACTORY =>
- {Api::UnitTypeId::HELLION =>
+ {Api::UnitTypeId::FACTORYTECHLAB =>
+ {ability: Api::AbilityId::BUILD_TECHLAB_FACTORY,
+ requires_placement_position: true},
+ Api::UnitTypeId::FACTORYREACTOR =>
+ {ability: Api::AbilityId::BUILD_REACTOR_FACTORY,
+ requires_placement_position: true},
+ Api::UnitTypeId::HELLION =>
{ability: Api::AbilityId::FACTORYTRAIN_HELLION},
Api::UnitTypeId::CYCLONE => {ability: Api::AbilityId::TRAIN_CYCLONE},
Api::UnitTypeId::WIDOWMINE =>
{ability: Api::AbilityId::FACTORYTRAIN_WIDOWMINE},
Api::UnitTypeId::SIEGETANK =>
@@ -39,11 +51,17 @@
required_building: Api::UnitTypeId::ARMORY},
Api::UnitTypeId::HELLIONTANK =>
{ability: Api::AbilityId::TRAIN_HELLBAT,
required_building: Api::UnitTypeId::ARMORY}},
Api::UnitTypeId::STARPORT =>
- {Api::UnitTypeId::MEDIVAC =>
+ {Api::UnitTypeId::STARPORTTECHLAB =>
+ {ability: Api::AbilityId::BUILD_TECHLAB_STARPORT,
+ requires_placement_position: true},
+ Api::UnitTypeId::STARPORTREACTOR =>
+ {ability: Api::AbilityId::BUILD_REACTOR_STARPORT,
+ requires_placement_position: true},
+ Api::UnitTypeId::MEDIVAC =>
{ability: Api::AbilityId::STARPORTTRAIN_MEDIVAC},
Api::UnitTypeId::VIKINGFIGHTER =>
{ability: Api::AbilityId::STARPORTTRAIN_VIKINGFIGHTER},
Api::UnitTypeId::LIBERATOR =>
{ability: Api::AbilityId::STARPORTTRAIN_LIBERATOR},
@@ -54,10 +72,24 @@
{ability: Api::AbilityId::STARPORTTRAIN_RAVEN, requires_techlab: true},
Api::UnitTypeId::BATTLECRUISER =>
{ability: Api::AbilityId::STARPORTTRAIN_BATTLECRUISER,
requires_techlab: true,
required_building: Api::UnitTypeId::FUSIONCORE}},
+ Api::UnitTypeId::FACTORYFLYING =>
+ {Api::UnitTypeId::FACTORYTECHLAB =>
+ {ability: Api::AbilityId::BUILD_TECHLAB_FACTORY,
+ requires_placement_position: true},
+ Api::UnitTypeId::FACTORYREACTOR =>
+ {ability: Api::AbilityId::BUILD_REACTOR_FACTORY,
+ requires_placement_position: true}},
+ Api::UnitTypeId::STARPORTFLYING =>
+ {Api::UnitTypeId::STARPORTTECHLAB =>
+ {ability: Api::AbilityId::BUILD_TECHLAB_STARPORT,
+ requires_placement_position: true},
+ Api::UnitTypeId::STARPORTREACTOR =>
+ {ability: Api::AbilityId::BUILD_REACTOR_STARPORT,
+ requires_placement_position: true}},
Api::UnitTypeId::SCV =>
{Api::UnitTypeId::COMMANDCENTER =>
{ability: Api::AbilityId::TERRANBUILD_COMMANDCENTER,
requires_placement_position: true},
Api::UnitTypeId::SUPPLYDEPOT =>
@@ -103,10 +135,17 @@
requires_placement_position: true},
Api::UnitTypeId::FUSIONCORE =>
{ability: Api::AbilityId::TERRANBUILD_FUSIONCORE,
required_building: Api::UnitTypeId::STARPORT,
requires_placement_position: true}},
+ Api::UnitTypeId::BARRACKSFLYING =>
+ {Api::UnitTypeId::BARRACKSTECHLAB =>
+ {ability: Api::AbilityId::BUILD_TECHLAB_BARRACKS,
+ requires_placement_position: true},
+ Api::UnitTypeId::BARRACKSREACTOR =>
+ {ability: Api::AbilityId::BUILD_REACTOR_BARRACKS,
+ requires_placement_position: true}},
Api::UnitTypeId::RAVEN =>
{Api::UnitTypeId::AUTOTURRET =>
{ability: Api::AbilityId::BUILDAUTOTURRET_AUTOTURRET}},
Api::UnitTypeId::NEXUS =>
{Api::UnitTypeId::PROBE => {ability: Api::AbilityId::NEXUSTRAIN_PROBE},
@@ -778,19 +817,31 @@
[Api::UnitTypeId::COMMANDCENTER,
Api::UnitTypeId::PLANETARYFORTRESS,
Api::UnitTypeId::ORBITALCOMMAND],
Api::UnitTypeId::PLANETARYFORTRESS => [Api::UnitTypeId::COMMANDCENTER],
Api::UnitTypeId::ORBITALCOMMAND => [Api::UnitTypeId::COMMANDCENTER],
+ Api::UnitTypeId::BARRACKSTECHLAB =>
+ [Api::UnitTypeId::BARRACKS, Api::UnitTypeId::BARRACKSFLYING],
+ Api::UnitTypeId::BARRACKSREACTOR =>
+ [Api::UnitTypeId::BARRACKS, Api::UnitTypeId::BARRACKSFLYING],
Api::UnitTypeId::MARINE => [Api::UnitTypeId::BARRACKS],
Api::UnitTypeId::REAPER => [Api::UnitTypeId::BARRACKS],
Api::UnitTypeId::GHOST => [Api::UnitTypeId::BARRACKS],
Api::UnitTypeId::MARAUDER => [Api::UnitTypeId::BARRACKS],
+ Api::UnitTypeId::FACTORYTECHLAB =>
+ [Api::UnitTypeId::FACTORY, Api::UnitTypeId::FACTORYFLYING],
+ Api::UnitTypeId::FACTORYREACTOR =>
+ [Api::UnitTypeId::FACTORY, Api::UnitTypeId::FACTORYFLYING],
Api::UnitTypeId::HELLION => [Api::UnitTypeId::FACTORY],
Api::UnitTypeId::CYCLONE => [Api::UnitTypeId::FACTORY],
Api::UnitTypeId::WIDOWMINE => [Api::UnitTypeId::FACTORY],
Api::UnitTypeId::SIEGETANK => [Api::UnitTypeId::FACTORY],
Api::UnitTypeId::THOR => [Api::UnitTypeId::FACTORY],
Api::UnitTypeId::HELLIONTANK => [Api::UnitTypeId::FACTORY],
+ Api::UnitTypeId::STARPORTTECHLAB =>
+ [Api::UnitTypeId::STARPORT, Api::UnitTypeId::STARPORTFLYING],
+ Api::UnitTypeId::STARPORTREACTOR =>
+ [Api::UnitTypeId::STARPORT, Api::UnitTypeId::STARPORTFLYING],
Api::UnitTypeId::MEDIVAC => [Api::UnitTypeId::STARPORT],
Api::UnitTypeId::VIKINGFIGHTER => [Api::UnitTypeId::STARPORT],
Api::UnitTypeId::LIBERATOR => [Api::UnitTypeId::STARPORT],
Api::UnitTypeId::BANSHEE => [Api::UnitTypeId::STARPORT],
Api::UnitTypeId::RAVEN => [Api::UnitTypeId::STARPORT],