File Coverage

lib/BalanceOfPower/Commands/RebelMilitarySupport.pm
Criterion Covered Total %
statement 3 24 12.5
branch 0 6 0.0
condition n/a
subroutine 1 3 33.3
pod 0 2 0.0
total 4 35 11.4


line stmt bran cond sub pod time code
1             package BalanceOfPower::Commands::RebelMilitarySupport;
2             $BalanceOfPower::Commands::RebelMilitarySupport::VERSION = '0.400105';
3 13     13   45 use Moo;
  13         13  
  13         57  
4              
5             extends 'BalanceOfPower::Commands::TargetNation';
6              
7             sub get_available_targets
8             {
9 0     0 0   my $self = shift;
10 0           my $player = $self->actor;
11 0           my @ns = grep { $self->world->at_civil_war($_) } @{$self->world->nation_names};
  0            
  0            
12 0           my @out = ();
13 0           for(@ns)
14             {
15 0           my $rebsup = $self->world->rebel_supported($_);
16 0 0         if($rebsup)
17             {
18 0 0         if($rebsup->node1 eq $player)
19             {
20 0           push @out, $_;
21             }
22             }
23             else
24             {
25 0           push @out, $_;
26             }
27             }
28 0           return @out;
29             }
30              
31             sub IA
32             {
33 0     0 0   my $self = shift;
34 0           my $player = $self->actor;
35 0           my @enemies = $self->world->get_hates($self->actor);
36 0           @enemies = $self->world->shuffle("Choosing enemy for rebel support for " . $self->actor, @enemies);
37 0           foreach my $e (@enemies)
38             {
39 0           my $target = $e->destination($self->actor);
40 0 0         if($self->good_target($target))
41             {
42 0           return "REBEL MILITARY SUPPORT " . $e->destination($self->actor);
43             }
44             }
45             }
46              
47             1;