From e1d820a92fe13e0c1c4fe1716efdb5f713af75ae Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Sat, 21 Apr 2018 21:17:50 +0200 Subject: [PATCH] sc: generic list of named version includes Prepare for different SC2 options. --- sc.plp | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/sc.plp b/sc.plp index 791a422..78eebc4 100644 --- a/sc.plp +++ b/sc.plp @@ -1,24 +1,27 @@ <(common.inc.plp)><: use List::Util qw(max sum); -my %scver = ( - id => 'bw', - name => 'Brood War', - title => 'starcraft', - game => 'StarCraft', - major => 1, -); - -if ($Request and $Request eq '2') { - %scver = ( - id => 'hots', +my %scvers = ( + bw => { + name => 'Brood War', + title => 'starcraft', + game => 'StarCraft', + major => 1, + }, + hots => { name => 'Heart of the Swarm', title => 'starcraft2', game => 'StarCraft II', major => 2, - ); -} -my $datafile = "sc-units-$scver{id}.inc.pl"; + }, +); + +$Request ||= 'bw'; +$Request = 'hots' if $Request eq '2'; +my %scver = %{ $scvers{$Request} } + or Abort("Requested version $Request not available", '404 unknown'); + +my $datafile = "sc-units-$Request.inc.pl"; Html({ title => "$scver{title} unit cheat sheet", @@ -31,7 +34,7 @@ Html({ keywords => [ qw' starcraft game unit statistics stats comparison table sheet cheat - reference software attributes properties + reference software attributes properties patch attribute multiplayer ', $scver{major} < 2 ? qw' bw broodwar brood war ' : qw' starcraft2 hots ', ], @@ -49,8 +52,8 @@ my $patch = shift @{$units} say "

Unit properties as seen or measured in $scver{name}\n$patch."; say "Also see the $_ table." for join(', ', - (showlink('StarCraft 2: HotS', '/sc/2')) x ($scver{major} < 2), - (showlink('original SC: Brood War', '/sc')) x ($scver{major} > 1), + (showlink('StarCraft 2: HotS', '/sc/hots')) x ($Request ne 'hots'), + (showlink('original SC: Brood War', '/sc/bw')) x ($Request ne 'bw'), ); say "

\n"; -- 2.30.0