ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/util/mergeface.pl
Revision: 1.2
Committed: Fri Jan 5 15:17:57 2007 UTC (17 years, 4 months ago) by pippijn
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
State: FILE REMOVED
Log Message:
have faces in the xml

File Contents

# Content
1 #!/usr/bin/env perl
2
3 use strict;
4
5 if ($ARGV[0] eq "" || $ARGV[0] =~ /^--?[hH](elp)?$/) {
6 die ("USAGE: perl mergeface.pl x y name number\n\n"
7 ."x and y are the number of tiles in x and y direction\n"
8 ."name is the part before the .base.xyz.png\n"
9 ."number is the yz of the .xyz.png\n")
10 }
11
12 my ($x, $y, $name, $nr) = @ARGV;
13 my $xsize = $x * 32;
14 my $ysize = $y * 32;
15
16 my @chars;
17 my @tuples;
18
19 my $c = 1;
20 for (my $i = 0; $i < $y; $i++) {
21 for (my $j = 0; $j < $x; $j++) {
22 push @chars, $c < 10 ? $c++ : chr $c++ + 55;
23 push @tuples, "$j,$i";
24 }
25 }
26
27 #print join "\n", @chars;
28 #print join "\n", @tuples;
29
30 $x *= 32;
31 $y *= 32;
32 my $cmd = "convert -size $x\170$y xc:none ";
33
34 $c = 0;
35 for my $tuple (@tuples) {
36 ($x, $y) = split /,/, $tuple;
37 $x *= 32;
38 $y *= 32;
39 $cmd .= "-draw \"image over $x,$y 0,0 \'$name.base.".$chars[$c++]."$nr.png\'\" "
40 if $chars[$c];
41 }
42
43 $cmd .= "$name.base.x$nr.png\n";
44
45 system($cmd);