1 | #! perl # MANDATORY |
1 | #! perl # mandatory |
2 | |
2 | |
3 | cf::map->register (qr{^\{link\}}); |
3 | cf::map->register (qr{^\{link\}}); |
4 | |
4 | |
5 | sub load_header { |
5 | sub load_header { |
6 | my ($self) = @_; |
6 | my ($self) = @_; |
7 | |
7 | |
8 | # singleton :/ |
8 | # singleton :/ |
9 | $self->width (21); |
9 | $self->width (21); |
10 | $self->height (21); |
10 | $self->height (21); |
11 | $self->nodrop (1); |
11 | $self->no_drop (1); |
12 | |
12 | |
13 | $self->name ("special built-in map"); |
13 | $self->name ("interdimensional nothingness"); |
14 | |
14 | |
15 | $self->alloc; |
15 | $self->alloc; |
16 | $self->in_memory (cf::MAP_IN_MEMORY); |
16 | $self->in_memory (cf::MAP_ACTIVE); |
17 | |
17 | |
18 | # provide some exits "home" |
18 | # provide some exits "home" |
19 | my $exit = cf::object::new "exit"; |
19 | my $exit = cf::object::new "exit"; |
20 | my $guard = Coro::guard { $exit->destroy }; |
20 | Guard::scope_guard { $exit->destroy }; |
21 | |
21 | |
22 | $exit->slaying ($cf::EMERGENCY_POSITION->[0]); |
22 | $exit->slaying ($cf::EMERGENCY_POSITION->[0]); |
23 | $exit->stats->hp ($cf::EMERGENCY_POSITION->[1]); |
23 | $exit->stats->hp ($cf::EMERGENCY_POSITION->[1]); |
24 | $exit->stats->sp ($cf::EMERGENCY_POSITION->[2]); |
24 | $exit->stats->sp ($cf::EMERGENCY_POSITION->[2]); |
25 | |
25 | |
… | |
… | |
33 | $self->insert ($exit->clone, 11, 11); |
33 | $self->insert ($exit->clone, 11, 11); |
34 | |
34 | |
35 | $self->{deny_save} = 1; |
35 | $self->{deny_save} = 1; |
36 | $self->{deny_reset} = 1; |
36 | $self->{deny_reset} = 1; |
37 | |
37 | |
|
|
38 | $self->activate; |
|
|
39 | |
38 | 1 |
40 | 1 |
39 | } |
41 | } |
40 | |
42 | |
41 | 1 |
43 | 1 |
42 | |
44 | |