ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/map-random.ext
Revision: 1.1
Committed: Thu Jan 11 00:16:58 2007 UTC (17 years, 4 months ago) by root
Branch: MAIN
Log Message:
- start pluggable map types framework
- mvoe random map handling out of the core

File Contents

# User Rev Content
1 root 1.1 #! perl
2    
3     use base "cf::path";
4    
5     __PACKAGE__->register ("random");
6    
7     sub init {
8     my ($self) = @_;
9    
10     Coro::AIO::aio_load "$cf::RANDOM_MAPS/$self->{path}.meta", my $data;
11     $self->{random} = cf::from_json $data;
12     }
13    
14     sub visible_name {
15     my ($self) = @_;
16    
17     # if (my $rmp = $self->{random}) {
18     # # todo: be more intelligent about this
19     # "?random/$rmp->{origin_map}+$rmp->{origin_x}+$rmp->{origin_y}/$rmp->{dungeon_level}"
20     # } else {
21     $self->as_string
22     # }
23     }
24    
25     sub save_path {
26     my ($self) = @_;
27    
28     sprintf "%s/%s", $RANDOM_MAPS, $self->{path}
29     }
30    
31     sub uniq_path {
32     undef
33     }
34    
35     sub load_orig {
36     my ($self) = @_;
37    
38     cf::map::generate_random_map "$self", $self->{random}
39     }
40    
41     1
42