X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/0b686d7436dbdb50f0bf8547f845af6bc334a9e4..8ad63ee2484b0c1f344e6f8ff5fbd4ccbd963e1b:/sc.plp diff --git a/sc.plp b/sc.plp index d6ccaf6..76974c9 100644 --- a/sc.plp +++ b/sc.plp @@ -1,5 +1,10 @@ <(common.inc.plp)><: +my $datafile = 'sc-units.inc.pl'; +if ($ENV{PATH_INFO} and $ENV{PATH_INFO} eq '/2') { + $datafile = 'sc2-units.inc.pl'; +} + Html({ title => 'starcraft unit cheat sheet', version => 'v1.0', @@ -13,6 +18,7 @@ Html({ reference software attributes properties '], stylesheet => [qw'light'], + data => [$datafile], }); :> @@ -253,44 +259,24 @@ sub showrange { } @$specials; } - my $units = do 'sc-units.inc.pl'; - die "Cannot open unit data: $_\n" for $@ || $! || (); - my $grouped = !exists $get{order}; - if (exists $get{order}) { - $get{order} ||= ''; - if ($get{order} eq 'size') { - $_->{order} = $_->{unit}*8 + $_->{suit} + $_->{hp}/512 + $_->{min}/8192 for @$units; - } - elsif ($get{order} eq 'cost') { - $_->{order} = $_->{gas}*1.5 + $_->{min} + $_->{unit}/8 + $_->{build}/256/8 for @$units; - } - else { - $units->[$_]->{order} = $_ for 0 .. $#$units; + sub showunitcols { + my ($row) = @_; + local $_ = $row; + my $suitchar = ''; + if ($_->{suit}) { + $suitchar = [qw/? s m l/]->[$_->{suit}]; } - } - my @rows = $grouped ? @$units : sort {$a->{order} <=> $b->{order}} @$units; - my ($race, $cat) = ('', ''); - for (@rows) { - $race = $_->{race}, - printf '