From 563b7e2e829fca6efd4a234dc1cf3683ae231cdb Mon Sep 17 00:00:00 2001 From: lemming552 Date: Fri, 23 Dec 2011 17:04:52 -0700 Subject: [PATCH] Logging when SAWs don't manage to shoot down a ship. --- lib/Lacuna/Role/Ship/Arrive/TriggerDefense.pm | 38 +++++++++++++++++++ var/messages/saw_disabled.txt | 7 ++++ var/messages/saw_neutralized.txt | 7 ++++ 3 files changed, 52 insertions(+) create mode 100644 var/messages/saw_disabled.txt create mode 100644 var/messages/saw_neutralized.txt diff --git a/lib/Lacuna/Role/Ship/Arrive/TriggerDefense.pm b/lib/Lacuna/Role/Ship/Arrive/TriggerDefense.pm index b772ef57..e0d2dc44 100644 --- a/lib/Lacuna/Role/Ship/Arrive/TriggerDefense.pm +++ b/lib/Lacuna/Role/Ship/Arrive/TriggerDefense.pm @@ -85,6 +85,43 @@ sub attacker_shot_down { # $self->log_attack( $defender, 'defender' ); } +sub saw_disabled { + my ($self, $defender) = @_; + my $body_attacked = $self->foreign_body; + + unless ($self->body->empire->skip_attack_messages) { + $self->body->empire->send_predefined_message( + tags => ['Attack','Alert'], + filename => 'saw_neutralized.txt', + params => [$defender->body->x, + $defender->body->y, + $defender->body->name, + $body_attacked->x, + $body_attacked->y, + $body_attacked->name, + $defender->body->empire_id, + $defender->body->empire->name], + ); + } + + unless ($defender->body->empire_id && $defender->body->empire->skip_attack_messages) { + $defender->body->empire->send_predefined_message( + tags => ['Attack','Alert'], + filename => 'saw_disabled.txt', + params => [$defender->body->x, + $defender->body->y, + $defender->body->name, + $body_attacked->x, + $body_attacked->y, + $body_attacked->name, + $defender->body->empire_id, + $defender->body->empire->name, + $self->type_formatted], + ); + } + log_attack($self, $defender, 'attacker'); +} + sub defender_shot_down { my ($self, $defender) = @_; my $body_attacked = $self->foreign_body; @@ -334,6 +371,7 @@ sub saw_combat { # $self->id, $self->combat, $saw->id, $saw->level, $saw->efficiency, $saw_combat; if ($self->combat > $saw_combat) { $saw->spend_efficiency(100); + $self->saw_disabled($saw); # print "100\n"; } else { diff --git a/var/messages/saw_disabled.txt b/var/messages/saw_disabled.txt new file mode 100644 index 00000000..2e20080f --- /dev/null +++ b/var/messages/saw_disabled.txt @@ -0,0 +1,7 @@ +SAW Disabled +~~~ +Our SAW at {Starmap %s %s %s} that was defending {Starmap %s %s %s} was disabled following an attack from Empire {Empire %s %s} by one of their %s. + +Regards, + +Your Humble Assistant diff --git a/var/messages/saw_neutralized.txt b/var/messages/saw_neutralized.txt new file mode 100644 index 00000000..56b7da91 --- /dev/null +++ b/var/messages/saw_neutralized.txt @@ -0,0 +1,7 @@ +SAW Neutralized +~~~ +Our offensive squadron was able to neutralize a SAW from {Starmap %s %s %s} that was defending {Starmap %s %s %s}. Empire {Empire %s %s}. + +Regards, + +Your Humble Assistant -- 2.51.2