From d1fc81813ae3100a06a65a7ae5423a187ef8e90a Mon Sep 17 00:00:00 2001 From: Mark Lemming Date: Sun, 5 May 2013 17:38:13 -0600 Subject: [PATCH] Fixed scanners & surveyors for Neutral. SS for starter. --- lib/Lacuna/RPC/Building/BlackHoleGenerator.pm | 7 ++++++- lib/Lacuna/Role/Ship/Send/NeutralArea.pm | 3 +++ var/www/public/changes.txt | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/Lacuna/RPC/Building/BlackHoleGenerator.pm b/lib/Lacuna/RPC/Building/BlackHoleGenerator.pm index 9128a7cf..5102db14 100644 --- a/lib/Lacuna/RPC/Building/BlackHoleGenerator.pm +++ b/lib/Lacuna/RPC/Building/BlackHoleGenerator.pm @@ -452,6 +452,11 @@ sub check_starter_zone { } if ($body_in and !$target_in) { if (defined ($target->empire)) { + if ($target->get_type eq 'space station') { + $throw = 1009; + $reason = sprintf("You can not move a space station into a starter zone."); + return $throw, $reason; + } return 0,"" if (defined($body->empire) and $body->empire_id == $target->empire_id); my $sz_colonies = 0; my $planets = $target->empire->planets; @@ -460,7 +465,7 @@ sub check_starter_zone { } if ($sz_colonies >= $sz_param->{max_colonies}) { $throw = 1009; - $reason = sprintf("You already have the maximum allowed colonies in starter zones."); + $reason = sprintf("Target already have the maximum allowed colonies in starter zones."); return $throw, $reason; } } diff --git a/lib/Lacuna/Role/Ship/Send/NeutralArea.pm b/lib/Lacuna/Role/Ship/Send/NeutralArea.pm index 84d3bab6..2586a3fe 100644 --- a/lib/Lacuna/Role/Ship/Send/NeutralArea.pm +++ b/lib/Lacuna/Role/Ship/Send/NeutralArea.pm @@ -11,6 +11,9 @@ after can_send_to_target => sub { if (defined $target->empire_id) { return 1 if ($target->empire_id == $self->body->empire_id); # We don't care if people hit themselves. } + else { + return if ($self->type eq 'scanner' or $self->type eq 'surveyor'); # Allows Scanners & Surveyors to be sent to uninhabited planets. + } confess [1009, 'Can not be sent from the Neutral Area.'] if $self->body->in_neutral_area; confess [1009, 'Can not be sent to the Neutral Area.'] if $target->in_neutral_area; diff --git a/var/www/public/changes.txt b/var/www/public/changes.txt index 6d5b8fc9..b01c723f 100644 --- a/var/www/public/changes.txt +++ b/var/www/public/changes.txt @@ -1,5 +1,7 @@ 3.0889: - Mod: More Fissure Fun. + - Mod: Boosted SRCS + - Mod: Scanners & Surveyors can be sent to uninhabited planets in neutral area. 3.0888: - Mod: Oracle now shows planets in star map if in range. -- 2.51.2