… | |
… | |
61 | TILE_UP, |
61 | TILE_UP, |
62 | TILE_DOWN, |
62 | TILE_DOWN, |
63 | TILE_NUM, |
63 | TILE_NUM, |
64 | }; |
64 | }; |
65 | |
65 | |
66 | /* Values for in_memory below */ |
66 | /* Values for state below */ |
67 | enum { |
67 | enum { |
68 | MAP_SWAPPED, // header loaded, nothing else |
68 | MAP_SWAPPED, // header loaded, nothing else |
69 | MAP_INACTIVE, // in memory, linkable, but not active |
69 | MAP_INACTIVE, // in memory, linkable, but not active |
70 | MAP_ACTIVE, // running! |
70 | MAP_ACTIVE, // running! |
71 | }; |
71 | }; |
… | |
… | |
264 | bool ACC (RW, dirty); /* if true, something was inserted or removed */ |
264 | bool ACC (RW, dirty); /* if true, something was inserted or removed */ |
265 | bool ACC (RW, no_reset); // must not reset this map |
265 | bool ACC (RW, no_reset); // must not reset this map |
266 | bool ACC (RW, fixed_resettime); /* if true, reset time is not affected by |
266 | bool ACC (RW, fixed_resettime); /* if true, reset time is not affected by |
267 | * players entering/exiting map |
267 | * players entering/exiting map |
268 | */ |
268 | */ |
|
|
269 | uint8 ACC (RW, state); /* If not true, the map has been freed and must |
|
|
270 | * be loaded before used. The map,omap and map_ob |
|
|
271 | * arrays will be allocated when the map is loaded */ |
269 | sint32 ACC (RW, timeout); /* swapout is set to this */ |
272 | sint32 ACC (RW, timeout); /* swapout is set to this */ |
270 | sint32 ACC (RW, swap_time); /* When it reaches 0, the map will be swapped out */ |
273 | sint32 ACC (RW, swap_time); /* When it reaches 0, the map will be swapped out */ |
271 | uint32 ACC (RW, in_memory); /* If not true, the map has been freed and must |
|
|
272 | * be loaded before used. The map,omap and map_ob |
|
|
273 | * arrays will be allocated when the map is loaded */ |
|
|
274 | sint16 players; /* How many players are on this map right now */ |
274 | sint16 players; /* How many players are on this map right now */ |
275 | uint16 ACC (RW, difficulty); /* What level the player should be to play here */ |
275 | uint16 ACC (RW, difficulty); /* What level the player should be to play here */ |
276 | |
276 | |
277 | bool ACC (RW, per_player); |
277 | bool ACC (RW, per_player); |
278 | bool ACC (RW, per_party); |
278 | bool ACC (RW, per_party); |
… | |
… | |
363 | ~maptile (); |
363 | ~maptile (); |
364 | |
364 | |
365 | void do_destroy (); |
365 | void do_destroy (); |
366 | void gather_callbacks (AV *&callbacks, event_type event) const; |
366 | void gather_callbacks (AV *&callbacks, event_type event) const; |
367 | |
367 | |
368 | MTH bool linkable () { return in_memory >= MAP_INACTIVE; } |
368 | MTH bool linkable () { return state >= MAP_INACTIVE; } |
369 | |
369 | |
370 | MTH int size () const { return width * height; } |
370 | MTH int size () const { return width * height; } |
371 | |
371 | |
372 | MTH object *insert (object *op, int x, int y, object *originator = 0, int flags = 0); |
372 | MTH object *insert (object *op, int x, int y, object *originator = 0, int flags = 0); |
373 | |
373 | |