sub showcost {
my ($row, $unit) = @_;
- my $minmult = 100 / $unit->{energy}; # cost multiplier
- my $maxmult = $unit->{upgraded}->{energy} &&
- 100 / $unit->{upgraded}->{energy};
-
return join(' ',
- sprintf('cost %s%%',
- showrange($row->{cost} * $minmult, $row->{cost} * $maxmult),
+ sprintf('cost %s%%', join '-',
+ map { $_ && sprintf '%.0f', 100 * $row->{cost} / $_ } grep { defined $_ }
+ $unit->{energy},
+ $unit->{upgraded}->{energy},
+ $unit->{capacity},
+ $unit->{upgraded}->{capacity},
),
- !defined $row->{maint} ? () : sprintf('+%.1f%s%%/s',
- $row->{maint} * $minmult,
- !!$maxmult && sprintf('-%.1f', $row->{maint} * $maxmult),
+ !defined $row->{maint} ? () : sprintf('+%s%%/s', join '-',
+ map { sprintf '%.1f', 100 * $row->{maint} / $_ } grep $_,
+ $unit->{capacity},
+ $unit->{upgraded}->{capacity},
),
);
}
<dd><span class="magic-perma">passive</span> abilities are always enabled
<dd>hover for description
<dd>range is maximum range required to activate
- <dd>cost is percentage of total energy lost
+ <dd>cost is energy loss percentage on spawn and when fully charged
</dl>
<p>