X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/7fdfc28a5f960c452bcc5efc8792a93ffa4bd144..1b61e5ec2db6d04a6fe5eed35312dd44a9e76b5e:/sc.plp diff --git a/sc.plp b/sc.plp index a1c885f..5454b63 100644 --- a/sc.plp +++ b/sc.plp @@ -114,11 +114,15 @@ sub coltoggle { sub showrange { my ($min, $max) = @_; return '' if not defined $min; - $_ &&= int($_ + .5) for $min, $max; # round halves up return $min || '-' if !$max or $min == $max; return "$min-$max"; } +sub showrangeint { + $_ &&= int($_ + .5) for @_; # round halves up + return showrange(@_); +} + sub showcost { my ($row, $unit) = @_; return join(' ', @@ -151,7 +155,7 @@ sub showrange { $out .= sprintf '¤ ', showcost($attack, $row) if $attack->{cost}; $out .= sprintf('%sà ', - showrange($attack->{count}, $upattack->{count}), + showrangeint($attack->{count}, $upattack->{count}), ) if $attack->{count} > 1; $out .= '*' if $attack->{type} eq 'explosive'; @@ -169,7 +173,7 @@ sub showrange { } join '_', @bonus), join(', ', map {( sprintf('+%s vs %s', - showrange( + showrangeint( $attack->{bonus}->{$_}, $attack->{bonus}->{$_} + $attack->{bonus}->{"-$_"} * 3, ), @@ -182,7 +186,7 @@ sub showrange { if $attack->{type} eq 'projectile'; $out .= sprintf '', $attack->{name} if $attack->{name}; - $out .= showrange($damage, $maxdamage); + $out .= showrangeint($damage, $maxdamage); $out .= '' if $attack->{name}; $out .= sprintf('%s', $attack->{splash} eq 'line' ? ('linear', '+') : ('splash', 'â') @@ -191,7 +195,7 @@ sub showrange { $out .= '