--- deliantra/Deliantra/Deliantra.pm 2006/02/23 02:52:51 1.23 +++ deliantra/Deliantra/Deliantra.pm 2006/02/23 03:13:33 1.24 @@ -115,6 +115,7 @@ eval { defined $cache + && -e $cache && -M $cache < -M $path && Storable::retrieve ($cache) } or do { @@ -140,6 +141,7 @@ eval { defined $cache + && -e $cache && -M $cache < -M $path && Storable::retrieve ($cache) } or do { @@ -267,15 +269,6 @@ } } -sub init($) { - my ($cachedir) = @_; - - return if %ARCH; - - mkdir $cachedir, 0777; - *ARCH = read_arch "$LIB/archetypes", "$cachedir/archetypes.pst"; -} - =item $type = arch_attr $arch Returns a hashref describing the object and its attributes. It can contain @@ -381,7 +374,16 @@ # } -$CACHEDIR ||= $ENV{HOME} ? "$ENV{HOME}/.crossfire" : File::Spec->tmpdir; +sub init($) { + my ($cachedir) = @_; + + return if %ARCH; + + mkdir $cachedir, 0777; + *ARCH = read_arch "$LIB/archetypes", "$cachedir/archetypes.pst"; +} + +$CACHEDIR ||= $ENV{HOME} ? "$ENV{HOME}/crossfire" : File::Spec->tmpdir; init $CACHEDIR;