ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/map.h
(Generate patch)

Comparing deliantra/server/include/map.h (file contents):
Revision 1.45 by root, Sun Dec 31 18:10:40 2006 UTC vs.
Revision 1.47 by root, Thu Jan 4 16:19:32 2007 UTC

54#define MAP_BLOCK 0x04 54#define MAP_BLOCK 0x04
55#define MAP_STYLE 0x08 55#define MAP_STYLE 0x08
56#define MAP_OVERLAY 0x10 56#define MAP_OVERLAY 0x10
57 57
58/* Values for in_memory below. Should probably be an enumerations */ 58/* Values for in_memory below. Should probably be an enumerations */
59#define MAP_IN_MEMORY 1 59enum {
60#define MAP_SWAPPED 2 60 MAP_IN_MEMORY,
61#define MAP_LOADING 3 61 MAP_SWAPPED,
62#define MAP_SAVING 4 62 MAP_LOADING,
63 MAP_SAVING,
64};
63 65
64/* GET_MAP_FLAGS really shouldn't be used very often - get_map_flags should 66/* GET_MAP_FLAGS really shouldn't be used very often - get_map_flags should
65 * really be used, as it is multi tile aware. However, there are some cases 67 * really be used, as it is multi tile aware. However, there are some cases
66 * where it is known the map is not tiled or the values are known 68 * where it is known the map is not tiled or the values are known
67 * consistent (eg, op->map, op->x, op->y) 69 * consistent (eg, op->map, op->x, op->y)
285 MTH int change_map_light (int change); 287 MTH int change_map_light (int change);
286 static void change_all_map_light (int change); //PERL 288 static void change_all_map_light (int change); //PERL
287 MTH void set_darkness_map (); 289 MTH void set_darkness_map ();
288 MTH int estimate_difficulty () const; 290 MTH int estimate_difficulty () const;
289 291
292 // set the given flag on all objects in the map
293 MTH void set_object_flag (int flag, int value = 1);
294
290 MTH void link_multipart_objects (); 295 MTH void link_multipart_objects ();
291 MTH void clear_unique_items (); 296 MTH void clear_unique_items ();
292 297
293 MTH void clear_header (); 298 MTH void clear_header ();
294 MTH void clear_links_to (maptile *m); 299 MTH void clear_links_to (maptile *m);
318 323
319 MTH int size () const { return width * height; } 324 MTH int size () const { return width * height; }
320 325
321 MTH object *insert (object *op, int x, int y, object *originator = 0, int flags = 0); 326 MTH object *insert (object *op, int x, int y, object *originator = 0, int flags = 0);
322 327
323// static maptile *find_map (const char *path, maptile *origin);//PERL 328 MTH void touch () { last_access = runtime; }
324// 329
325// // load a map relative to this one 330 // find the map that is at coordinate x|y relative to this map
326// maptile *find_map (const char *path) 331 // TODO: need a better way than passing by reference
327// { 332 // TODO: make perl interface
328// return find_map (path, this); 333 maptile *xy_find (sint16 &x, sint16 &y);
329// } 334
330// 335 // like xy_find, but also loads the map
331// // customise this map for the given player 336 maptile *xy_load (sint16 &x, sint16 &y);
332// // might return this or a completely new map 337
333// maptile *customise_for (object *op);
334//
335// void do_force_map_sync ();//PERL 338 void do_load_sync ();//PERL
336// 339
337// // make sure the map is loaded 340 // make sure the map is loaded
338// MTH void force_map_sync () 341 MTH void load_sync ()
339// { 342 {
340// if (in_memory != MAP_IN_MEMORY) 343 if (!spaces)
341// do_force_map_sync (); 344 do_load_sync ();
342// } 345 }
343 346
344 static maptile *load_map_sync (const char *path, maptile *original = 0);//PERL 347 static maptile *find_sync (const char *path, maptile *original = 0);//PERL
345 static void emergency_save ();//PERL 348 static void emergency_save ();//PERL
346 349
347 mapspace const &at (uint32 x, uint32 y) const { return spaces [x * height + y]; } 350 mapspace const &at (uint32 x, uint32 y) const { return spaces [x * height + y]; }
348 mapspace &at (uint32 x, uint32 y) { return spaces [x * height + y]; } 351 mapspace &at (uint32 x, uint32 y) { return spaces [x * height + y]; }
349}; 352};

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines