--- deliantra/server/ext/map-per-player.ext 2007/01/13 23:32:43 1.2 +++ deliantra/server/ext/map-per-player.ext 2007/06/07 19:12:22 1.10 @@ -5,21 +5,29 @@ sub init { my ($self) = @_; - $self->{user} = $1; - $self->{orig_path} = $2; + $self->{user} = $1; + $self->{orig_path} = $2; +} + +sub thawer_merge { + # we have to keep some variables in memory intact + local $_[0]{user}; + local $_[0]{orig_path}; + + $_[0]->SUPER::thawer_merge ($_[1]); } sub load_path { my ($self) = @_; - sprintf "%s/%s/%s", cf::datadir, cf::mapdir, $self->{orig_path} + "$cf::MAPDIR/$self->{orig_path}.map" } sub save_path { my ($self) = @_; (my $path = $_[0]{orig_path}) =~ s/\//$PATH_SEP/g; - sprintf "%s/%s/%s/%s", cf::localdir, cf::playerdir, $self->{user}, $path + "$cf::PLAYERDIR/$self->{user}/$path.map" } sub uniq_path {