From: Rudolf Polzer Date: Sun, 29 Sep 2013 11:40:57 +0000 (+0200) Subject: Rework how scale works: bsp, vis, scale, light, minimap X-Git-Tag: xonotic-v0.8.0~64 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=6feca04b63fedc91e4cb85ec8700a1c2442846b6;p=xonotic%2Fxonotic.git Rework how scale works: bsp, vis, scale, light, minimap --- diff --git a/misc/tools/xonotic-map-compiler b/misc/tools/xonotic-map-compiler index 9c15c340..8938cdc6 100755 --- a/misc/tools/xonotic-map-compiler +++ b/misc/tools/xonotic-map-compiler @@ -31,7 +31,7 @@ use File::Temp; our $MINIMAPFLAGS = ''; # Default order of commands - our $ORDER = 'vis,light'; + our $ORDER = 'vis,scale,light'; # end of user changable part @@ -232,9 +232,15 @@ sub q3map2(@) } } -my ($prescale, $postscale) = ($options->{scalefactor} =~ /^([0-9.]+)(?::([0-9.]+))?$/); -$prescale = 1 if not defined $prescale; -$postscale = 1 if not defined $postscale; +if ($options->{scalefactor} =~ /^([0-9.]+):([0-9.]+)$/) +{ + die "Two-scale isn't supported" + if $1 != 1 and $2 != 1; + $options->{scalefactor} = $1 + if $2 == 1; + $options->{scalefactor} = $2 + if $1 == 1; +} my $origcwd = getcwd(); for my $m(@{$options->{maps}}) @@ -252,10 +258,8 @@ for my $m(@{$options->{maps}}) $m =~ s/\.(?:map|bsp)$//; - if($prescale != 1) - { - unshift @{$options->{bsp}}, "-keeplights"; - } + # never hurts, may help with rtlights + unshift @{$options->{bsp}}, "-keeplights"; local $SIG{INT} = sub { @@ -266,15 +270,8 @@ for my $m(@{$options->{maps}}) unlink <$m/lm_*>; # delete old external lightmaps q3map2 '-bsp', @{$options->{bsp}}, "$m.map" or die "-bsp: $?"; - if($prescale != 1) - { - q3map2 '-scale', @{$options->{scale}}, $prescale, "$m.bsp" - or die "-scale: $?"; - rename "${m}_s.bsp", "$m.bsp" - or die "rename ${m}_s.bsp $m.bsp: $!"; - } my @o = @{$options->{order}}; - push @o, qw/light vis/; + push @o, qw/vis scale light/; my %o = (); for(@o) @@ -296,14 +293,16 @@ for my $m(@{$options->{maps}}) or die "-vis: $?"; } } - } - - if($postscale != 1) - { - q3map2 '-scale', @{$options->{scale}}, $postscale, "$m.bsp" - or die "-scale: $?"; - rename "${m}_s.bsp", "$m.bsp" - or die "rename ${m}_s.bsp $m.bsp: $!"; + if($_ eq 'scale') + { + if ($options->{scalefactor} != 1) + { + q3map2 '-scale', @{$options->{scale}}, $options->{scalefactor}, "$m.bsp" + or die "-scale: $?"; + rename "${m}_s.bsp", "$m.bsp" + or die "rename ${m}_s.bsp $m.bsp: $!"; + } + } } if(defined $options->{minimap})