git.shiar.nl
/
perl
/
schtarr.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
XXX: handle multiple MTXM chunks correctly (tileset obfuscation for example in BlitzX...
[perl/schtarr.git]
/
scmap
diff --git
a/scmap
b/scmap
index e5a2798665d04d132b23f200632b14902b88005b..f636b25742250bf6d5fd8c921cc9bff38eac451e 100755
(executable)
--- a/
scmap
+++ b/
scmap
@@
-70,7
+70,7
@@
if (defined $mapsep{$SHOWMAP}) {
if ($SHOWMAP eq "ppm") {
use Imager;
if ($SHOWMAP eq "ppm") {
use Imager;
- my $img = Imager->new(xsize => $map->width * 4, ysize => $map->
width
* 4);
+ my $img = Imager->new(xsize => $map->width * 4, ysize => $map->
height
* 4);
use Data::StarCraft::Tileset;
my $era = world($map);
use Data::StarCraft::Tileset;
my $era = world($map);
@@
-89,11
+89,7
@@
if (defined $mapsep{$SHOWMAP}) {
# 512x512 ~ 7s
my $tile = $tileset->tile($_);
# 512x512 ~ 7s
my $tile = $tileset->tile($_);
- $img->setscanline(
- x => $x*4, y => $y*4 + $_, pixels => pack('(CCCx)*',
- map { @$_ } @{ $tile->{subcol} }[$_*4 .. $_*4 + 3]
- ),
- ) for 0..3;
+ $img->paste(src => $tile->{sprite}, left => $x*4, top => $y*4);
# 4096x4096 ~ 75s
# my $tile = $tileset->sprite($tileset->{map}->[$_]);
# 4096x4096 ~ 75s
# my $tile = $tileset->sprite($tileset->{map}->[$_]);