From 20b811e1032c0b73e0efc91c50cd7fa02016ed73 Mon Sep 17 00:00:00 2001 From: lemming552 Date: Thu, 2 Aug 2012 16:08:24 -0600 Subject: [PATCH] Fixed Stockpile downgrade and demolish checks. --- lib/Lacuna/DB/Result/Building/Stockpile.pm | 14 +++++++------- var/www/public/changes.txt | 3 ++- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/Lacuna/DB/Result/Building/Stockpile.pm b/lib/Lacuna/DB/Result/Building/Stockpile.pm index 8294dc6c..70c79699 100644 --- a/lib/Lacuna/DB/Result/Building/Stockpile.pm +++ b/lib/Lacuna/DB/Result/Building/Stockpile.pm @@ -52,15 +52,15 @@ use constant water_storage => 300; before 'can_downgrade' => sub { my $self = shift; - my $max_level = 15; + my $max_level = 15 + int(($self->level-1)/3); if ($self->body->empire->university_level > 25) { $max_level += ($self->body->empire->university_level - 25); } foreach my $building (@{$self->body->building_cache}) { - if ($building->level > $max_level + (($self->level - 1)/3) && + if ($building->level > $max_level && 'Resources' ~~ [$building->build_tags] && - ( !('Storage' ~~ [$self->build_tags]) || - $self->isa('Lacuna::DB::Result::Building::Waste::Exchanger'))) { + ( !('Storage' ~~ [$building->build_tags]) || + $building->isa('Lacuna::DB::Result::Building::Waste::Exchanger'))) { confess [1013, 'You have to downgrade your level '. $building->level.' '.$building->name.' to level '. $max_level.' before you can downgrade the Stockpile.']; @@ -75,10 +75,10 @@ before 'can_demolish' => sub { $max_level += ($self->body->empire->university_level - 25); } foreach my $building (@{$self->body->building_cache}) { - if ($building->level > $max_level + (($self->level - 1)/3) && + if ($building->level > $max_level && 'Resources' ~~ [$building->build_tags] && - ( !('Storage' ~~ [$self->build_tags]) || - $self->isa('Lacuna::DB::Result::Building::Waste::Exchanger'))) { + ( !('Storage' ~~ [$building->build_tags]) || + $building->isa('Lacuna::DB::Result::Building::Waste::Exchanger'))) { confess [1013, 'You have to downgrade your level '. $building->level.' '.$building->name. ' to level '.$max_level. diff --git a/var/www/public/changes.txt b/var/www/public/changes.txt index 4f4d1288..9e33e3f7 100644 --- a/var/www/public/changes.txt +++ b/var/www/public/changes.txt @@ -1,6 +1,7 @@ 3.0865: - Mod: Removed option to disable display of incoming ships. (To see if it fixes some resource issues) - - Mod: Attempt to make Counter Espionage tutorial message clearer since people can't read. + - Mod: Attempt to make Counter Espionage tutorial message clearer since people don't read the entire email. + - Fix: Stockpile wasn't checking levels properly on downgrade and demolish. 3.0864: - Mod: LCOT cheaper to build, longer to build, and spy proofed. -- 2.51.2