From a8bb2e8aad7f58f3a416d10935078dc6727cd4d0 Mon Sep 17 00:00:00 2001 From: Mark Lemming Date: Sun, 13 Jan 2013 21:36:36 -0700 Subject: [PATCH] Added Cult --- lib/Lacuna/AI/Cult.pm | 115 +++++++++++++++++++++++++++++++++++++ var/www/public/changes.txt | 1 + 2 files changed, 116 insertions(+) create mode 100644 lib/Lacuna/AI/Cult.pm diff --git a/lib/Lacuna/AI/Cult.pm b/lib/Lacuna/AI/Cult.pm new file mode 100644 index 00000000..b64b0a63 --- /dev/null +++ b/lib/Lacuna/AI/Cult.pm @@ -0,0 +1,115 @@ +package Lacuna::AI::Cult; + +use Moose; +use utf8; +no warnings qw(uninitialized); +extends 'Lacuna::AI'; + +use constant empire_id => -5; + +has viable_colonies => ( + is => 'ro', + lazy => 1, + default => sub { + return Lacuna->db->resultset('Lacuna::DB::Result::Map::Body')->search( + { empire_id => undef, orbit => 3, size => { between => [30,55]}}, + ); + } +); + +sub empire_defaults { + return { + name => 'Cult of the Fissure', + status_message => 'Despair, Misfortune, Woe!', + description => 'Break on thru to the other side.', + species_name => 'Cult of the Fissure', + species_description => 'Only by releasing the fissures can we free ourselves.', + min_orbit => 3, + max_orbit => 3, + manufacturing_affinity => 1, + deception_affinity => 1, + research_affinity => 1, + management_affinity => 1, + farming_affinity => 1, + mining_affinity => 1, + science_affinity => 1, + environmental_affinity => 1, + political_affinity => 1, + trade_affinity => 1, + growth_affinity => 1, + is_isolationist => 0, + }; +} + +sub colony_structures { + return ( + ['Lacuna::DB::Result::Building::Waste::Sequestration', 30], + ['Lacuna::DB::Result::Building::Intelligence', 20], + ['Lacuna::DB::Result::Building::Security', 20], + ['Lacuna::DB::Result::Building::Espionage', 20], + ['Lacuna::DB::Result::Building::Shipyard', 10], + ['Lacuna::DB::Result::Building::SpacePort', 20], + ['Lacuna::DB::Result::Building::SpacePort', 20], + ['Lacuna::DB::Result::Building::SpacePort', 20], + ['Lacuna::DB::Result::Building::SpacePort', 20], + ['Lacuna::DB::Result::Building::SpacePort', 20], + ['Lacuna::DB::Result::Building::Observatory',10], + ['Lacuna::DB::Result::Building::Archaeology',10], + ['Lacuna::DB::Result::Building::Trade', 10], + ['Lacuna::DB::Result::Building::SAW',20], + ['Lacuna::DB::Result::Building::SAW',20], + ['Lacuna::DB::Result::Building::SAW',20], + ['Lacuna::DB::Result::Building::SAW',20], + ['Lacuna::DB::Result::Building::SAW',20], + ['Lacuna::DB::Result::Building::SAW',20], + ['Lacuna::DB::Result::Building::Permanent::Volcano',21], + ['Lacuna::DB::Result::Building::Permanent::NaturalSpring',20], + ['Lacuna::DB::Result::Building::Permanent::InterDimensionalRift',20], + ['Lacuna::DB::Result::Building::Permanent::GeoThermalVent',21], + ['Lacuna::DB::Result::Building::Permanent::KalavianRuins',13], + ['Lacuna::DB::Result::Building::Permanent::MalcudField',19], + ['Lacuna::DB::Result::Building::Permanent::AlgaePond',19], + ['Lacuna::DB::Result::Building::Permanent::BlackHoleGenerator',30], + ['Lacuna::DB::Result::Building::Permanent::Ravine',30], + ['Lacuna::DB::Result::Building::Water::Storage',30], + ['Lacuna::DB::Result::Building::Ore::Storage',30], + ['Lacuna::DB::Result::Building::Energy::Reserve',30], + ['Lacuna::DB::Result::Building::Food::Reserve',30], + ['Lacuna::DB::Result::Building::Food::Corn',15], + ['Lacuna::DB::Result::Building::Food::Wheat',15], + ['Lacuna::DB::Result::Building::Food::Dairy',15], +] +} + +sub spy_missions { +# Missions run by script + return ( + 'Appropriate Resources', + 'Sabotage Resources', + 'Sabotage Infrastructure', + 'Incite Rebellion', + 'Sabotage Probes', + 'Incite Rebellion', + ); +} + +sub ship_building_priorities { + return ( + ['cargo_ship', 14], + ['probe', 5], + ); +} + +sub run_hourly_colony_updates { + my ($self, $colony) = @_; +# $self->demolish_bleeders($colony); + $self->set_defenders($colony); + $self->pod_check($colony, 10); + $self->repair_buildings($colony); +# $self->train_spies($colony); +# $self->build_ships($colony); +# $self->run_missions($colony); +} + +no Moose; +__PACKAGE__->meta->make_immutable; diff --git a/var/www/public/changes.txt b/var/www/public/changes.txt index a1161d05..44d13dee 100644 --- a/var/www/public/changes.txt +++ b/var/www/public/changes.txt @@ -1,5 +1,6 @@ 3.0878: - Fix: Fissure Sealers were sending extra email on home arrival. + - Add: Cult of the Fissure added into code base. 3.0877: - Fix: Shipyard,Intelligence,ThemePark work time now correctly updated -- 2.51.2