--- deliantra/server/include/global.h 2006/12/13 02:55:50 1.22 +++ deliantra/server/include/global.h 2006/12/25 11:25:49 1.32 @@ -18,7 +18,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - The author can be reached via e-mail to crossfire-devel@real-time.com + The author can be reached via e-mail to crossfire@schmorp.de */ #ifndef GLOBAL_H @@ -39,12 +39,23 @@ typedef int64_t sint64; typedef uint64_t uint64; -typedef unsigned short Fontindex; +#include "config.h" +#include "define.h" +#include "logger.h" -#include +#ifndef TRUE +#define TRUE 1 +#endif + +#ifndef FALSE +#define FALSE 0 +#endif -#define ACC_CLASS(name) +// used only for tagging structure members so scripting languages +// can easily parse the include files. +#define INTERFACE_CLASS(name) #define ACC(meta,member) member +#define MTH #include "keyword.h" #include "traits.h" @@ -54,7 +65,9 @@ /* This blob, in this order, is needed to actually define maps */ #include "face.h" -/* Include the basic defines from spells.h */ + +#include "spells.h" + #include "attack.h" /* needs to be before material.h */ #include "material.h" #include "living.h" @@ -65,7 +78,8 @@ #include "skills.h" /* Pull in the socket structure - used in the player structure */ -#include "newserver.h" +#include "network.h" +#include "client.h" /* Pull in the player structure */ #include "player.h" @@ -99,9 +113,6 @@ /* Now for recipe/alchemy */ #include "recipe.h" -/* Now for spells */ -#include "spells.h" - #include "funcpoint.h" /***************************************************************************** @@ -162,15 +173,14 @@ */ EXTERN archetype *ring_arch,*amulet_arch,*staff_arch,*crown_arch; -extern std::vector animations; +EXTERN std::vector animations; EXTERN int num_animations,animations_allocated, bmaps_checksum; /* Rotate right from bsd sum. This is used in various places for checksumming */ #define ROTATE_RIGHT(c) if ((c) & 01) (c) = ((c) >>1) + 0x80000000; else (c) >>= 1; - -#define SET_ANIMATION(ob,newanim) ob->face=&new_faces[animations[ob->animation_id].faces[newanim]] -#define GET_ANIMATION(ob,anim) (animations[ob->animation_id].faces[anim]) +#define SET_ANIMATION(ob,newanim) ob->face = new_faces + animations [ob->animation_id].faces [newanim] +#define GET_ANIMATION(ob,anim) animations [ob->animation_id].faces [anim] #define GET_ANIM_ID(ob) (ob->animation_id) /* NUM_ANIMATIONS returns the number of animations allocated. The last * usuable animation will be NUM_ANIMATIONS-1 (for example, if an object @@ -189,14 +199,14 @@ extern New_Face *dark_faces[]; extern New_Face *smooth_face; -extern NewSocket *init_sockets; +extern client *init_sockets; #include "libproto.h" #include "sockproto.h" #define decrease_ob(xyz) decrease_ob_nr(xyz,1) -ACC_CLASS (Settings) +INTERFACE_CLASS (Settings) struct Settings { char *ACC (RO, logfilename); /* logfile to use */ int ACC (RW, csport); /* port for new client/server */ @@ -234,7 +244,6 @@ uint16 ACC (RW, set_friendly_fire); /* Percent of damage done by peaceful player vs player damage */ uint8 ACC (RW, casting_time); /* it takes awhile to cast a spell */ uint8 ACC (RW, real_wiz); /* use mud-like wizards */ - uint8 ACC (RW, recycle_tmp_maps); /* re-use tmp maps. */ uint8 ACC (RW, explore_mode); /* explore mode allowed? */ uint8 ACC (RW, spellpoint_level_depend); /* spell costs go up with level */ char ACC (RW, motd)[MAX_BUF]; /* name of the motd file */