From 88355ccbda99058aefe3315fde0e0b56bf6c8f47 Mon Sep 17 00:00:00 2001 From: Mark Lemming Date: Mon, 5 Jan 2015 14:39:35 -0700 Subject: [PATCH] Fixed Spy Abductions --- lib/Lacuna/DB/Result/Spies.pm | 8 ++++---- var/www/public/changes.txt | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/Lacuna/DB/Result/Spies.pm b/lib/Lacuna/DB/Result/Spies.pm index d1a0c754..2011e28d 100644 --- a/lib/Lacuna/DB/Result/Spies.pm +++ b/lib/Lacuna/DB/Result/Spies.pm @@ -764,7 +764,7 @@ sub run_mission { my $mission_skill = $mission->{skill}.'_xp'; my $power = $self->offense + $self->$mission_skill; my $toughness = 0; - my $defender = $self->get_defender; + my $defender = $self->get_defender($mission); my $hfa = 0; if (defined $defender) { $toughness = $defender->defense + $defender->$mission_skill; @@ -970,7 +970,7 @@ sub bugout { if (!$self->empire->alliance_id || $self->empire->alliance_id != $self->on_body->empire->alliance_id ) { my $power = $self->offense + $self->intel_xp; my $toughness = 0; - my $defender = $self->get_defender; + my $defender = $self->get_defender($mission); my $hfa = 0; if (defined $defender) { $toughness = $defender->defense + $defender->intel_xp; @@ -1058,7 +1058,7 @@ sub get_defender { $member_ids[0] = $self->empire->id; } my @tasks = 'Counter Espionage'; - if ($mission eq "Abduct Operatives" or $mission eq "Assassinate Operatives") { + if ($mission->{task} eq "Abduct Operatives" or $mission->{task} eq "Assassinate Operatives") { push @tasks, "Security Sweep", "Political Propaganda"; } @@ -1068,7 +1068,7 @@ sub get_defender { ->search( { on_body_id => $self->on_body_id, task => { 'in' => \@tasks }, - empire_id => { 'not_in' => \@member_ids } }, + empire_id => { 'not in' => \@member_ids } }, { order_by => 'rand()' } )->first; if (defined $defender) { diff --git a/var/www/public/changes.txt b/var/www/public/changes.txt index 0749d2e1..b02a1ec5 100644 --- a/var/www/public/changes.txt +++ b/var/www/public/changes.txt @@ -11,6 +11,7 @@ - Mod: "#" no longer permitted as leading character in empire names. - Mod: Propaganda doesn't count as often for missions. - Mod: incoming ships list ordered correctly. + - Fix: Spies doing "Political Propaganda" and "Security Sweep" can be Assasinated/Abducted 3.0908: - Mod: trash_messages_where now defaults to not returning deleted message IDs. -- 2.51.2