ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra/Deliantra/Tilecache.pm
(Generate patch)

Comparing deliantra/Deliantra/Deliantra/Tilecache.pm (file contents):
Revision 1.3 by root, Sun Feb 12 04:50:24 2006 UTC vs.
Revision 1.4 by root, Thu Feb 23 01:55:29 2006 UTC

9our $VERSION = '0.1'; 9our $VERSION = '0.1';
10 10
11use strict; 11use strict;
12 12
13use Gtk2; 13use Gtk2;
14use File::Temp;
14 15
15use Crossfire; 16use Crossfire;
16 17
17sub init_tilecache($) { 18sub init_tilecache($) {
18 my ($cacheprefix) = @_; 19 my ($cacheprefix) = @_;
27 my %cache; 28 my %cache;
28 29
29 my $idx = 0; 30 my $idx = 0;
30 31
31 for my $name (sort keys %$tile) { 32 for my $name (sort keys %$tile) {
32 my $file = "/tmp/map2png.$$~"; 33 my ($fh, $filename) = tempfile;
33 34
34 open my $fh, ">:raw", $file
35 or die "$file: $!";
36 print $fh $tile->{$name}; 35 print $fh $tile->{$name};
37 close $fh; 36 close $fh;
38 37
39 my $tile = $cache{$name} = {}; 38 my $tile = $cache{$name} = {};
40 39
41 my $pb = $tile->{$name} = new_from_file Gtk2::Gdk::Pixbuf $file; 40 my $pb = $tile->{$name} = new_from_file Gtk2::Gdk::Pixbuf $filename;
42 41
43 unlink $file; 42 unlink $file;
44 43
45 $tile->{pb} = $pb; 44 $tile->{pb} = $pb;
46 $tile->{idx} = $idx; 45 $tile->{idx} = $idx;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines