--- deliantra/server/include/map.h 2007/04/14 07:23:00 1.73 +++ deliantra/server/include/map.h 2007/07/01 05:00:18 1.78 @@ -1,25 +1,24 @@ /* - * CrossFire, A Multiplayer game for X-windows + * This file is part of Crossfire TRT, the Roguelike Realtime MORPG. * - * Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team - * Copyright (C) 2002-2005 Mark Wedel & Crossfire Development Team - * Copyright (C) 1992 Frank Tore Johansen + * Copyright (©) 2005,2006,2007 Marc Alexander Lehmann / Robin Redeker / the Crossfire TRT team + * Copyright (©) 2002-2005,2007 Mark Wedel & Crossfire Development Team + * Copyright (©) 1992,2007 Frank Tore Johansen * - * This program is free software; you can redistribute it and/or modify + * Crossfire TRT is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * The authors can be reached via e-mail at crossfire@schmorp.de + * along with this program. If not, see . + * + * The authors can be reached via e-mail to */ /* @@ -158,44 +157,6 @@ uint64 volume () const; }; -/* - * Each map is in a given region of the game world and links to a region definiton, so - * they have to appear here in the headers, before the mapdef - */ -INTERFACE_CLASS (region) -struct region : zero_initialised -{ - shstr ACC (RW, name); /* Shortend name of the region as maps refer to it */ - shstr ACC (RW, match); // a perl regex that matches map paths - region *ACC (RW, parent); /* - * Pointer to the region that is a parent of the current - * region, if a value isn't defined in the current region - * we traverse this series of pointers until it is. - */ - shstr ACC (RW, longname); /* Official title of the region, this might be defined - * to be the same as name*/ - shstr ACC (RW, msg); /* the description of the region */ - shstr ACC (RW, jailmap); /*where a player that is arrested in this region should be imprisoned. */ - int ACC (RW, index); - uint32 ACC (RW, counter); /* A generic counter for holding temporary data. */ - sint16 ACC (RW, jailx), ACC (RW, jaily);/* The coodinates in jailmap to which the player should be sent. */ - bool ACC (RW, fallback); /* whether, in the event of a region not existing, - * this should be the one we fall back on as the default */ - - static region *default_region (); - static region *find (const char *name); - static region *find_fuzzy (const char *name); - static region *read (object_thawer &f); -}; - -typedef object_vector regionvec; - -extern regionvec regions; - -#define for_all_regions(var) \ - for (unsigned _i = 0; _i < regions.size (); ++_i) \ - declvar (region *, var, regions [_i]) - struct shopitems : zero_initialised { const char *name; /* name of the item in question, null if it is the default item */ @@ -240,6 +201,7 @@ * should be reset */ bool ACC (RW, dirty); /* if true, something was inserted or removed */ + bool ACC (RW, no_reset); // must not reset this map bool ACC (RW, fixed_resettime); /* if true, reset time is not affected by * players entering/exiting map */ @@ -251,6 +213,7 @@ sint16 players; /* How many players are on this map right now */ uint16 ACC (RW, difficulty); /* What level the player should be to play here */ + bool ACC (RW, active); // wether this map is active or not bool ACC (RW, per_player); bool ACC (RW, per_party); bool ACC (RW, outdoor); /* True if an outdoor map */ @@ -289,7 +252,7 @@ MTH void clear (); MTH void fix_auto_apply (); - MTH void decay_objects (); + MTH void do_decay_objects (); MTH void update_buttons (); MTH int change_map_light (int change); static void change_all_map_light (int change); //PERL