--- cfmaps/cfmap2html 2005/12/26 12:15:11 1.22
+++ cfmaps/cfmap2html 2007/06/21 12:30:10 1.29
@@ -1,7 +1,7 @@
#!/opt/bin/perl
# cfmap2html - convert crossfire maps to html
-# Copyright (C) 2005 Marc Lehmann
+# Copyright (C) 2005,2007 Marc Lehmann
#
# CFMAP2HTML is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -14,15 +14,12 @@
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with gvpe; if not, write to the Free Software
+# along with cfmaps; if not, write to the Free Software
# Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-our $VERSION = '1.211';
+our $VERSION = '2.001';
-use Storable;
-
-my $LIBDIR = $ENV{CROSSFIRE_LIBDIR}
- or die "\$CROSSFIRE_LIBDIR must be set\n";
+use Crossfire 1.0;
my $T = 32;
@@ -34,154 +31,166 @@
$_
}
+my @cfmap2png;
+
for my $path (@ARGV) {
+ (my $base = $path) =~ s/\.map//;
# print STDERR "$path\n";
- if (!-e "$path.png"
- || !-e "$path.pst"
- || -M "$path.pst" > -M $path
- || -M "$path.png" > -M $path) {
+ if (!-e "$base.png"
+ || -M "$base.png" > -M "$base.map") {
# regenerate png and metainfo
-
- system "cfmap2png", $path;
+ push @cfmap2png, $path;
};
+}
- $arch ||= Storable::retrieve "$LIBDIR/archetypes.pst";
- my $meta = Storable::retrieve "$path.pst";
-
- open my $fh, ">:utf8", "$path.xhtml"
- or die "$path.xhtml: $!";
-
- select $fh;
+system "cfmap2png", @cfmap2png
+ if @cfmap2png;
- my $W = $meta->{width} * $T;
- my $H = $meta->{height} * $T;
-
- my $W2 = $W + 600;
-
- my (@path) = split /\//, $path;
-
- print "",
- '',
- "",
- "",
- "Crossfire Map \"$path\"",
- "\n",
- "\n",
- "\n",
- "",
- "",
- "";
-
- print "