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

Comparing deliantra/server/include/global.h (file contents):
Revision 1.23 by root, Wed Dec 13 18:08:01 2006 UTC vs.
Revision 1.32 by root, Mon Dec 25 11:25:49 2006 UTC

16 16
17 You should have received a copy of the GNU General Public License 17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software 18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 20
21 The author can be reached via e-mail to crossfire-devel@real-time.com 21 The author can be reached via e-mail to crossfire@schmorp.de
22*/ 22*/
23 23
24#ifndef GLOBAL_H 24#ifndef GLOBAL_H
25#define GLOBAL_H 25#define GLOBAL_H
26 26
37typedef int32_t sint32; 37typedef int32_t sint32;
38typedef uint32_t uint32; 38typedef uint32_t uint32;
39typedef int64_t sint64; 39typedef int64_t sint64;
40typedef uint64_t uint64; 40typedef uint64_t uint64;
41 41
42typedef unsigned short Fontindex;
43
44#include "config.h" 42#include "config.h"
45#include "define.h" 43#include "define.h"
46#include "logger.h" 44#include "logger.h"
47 45
48#ifndef TRUE 46#ifndef TRUE
53#define FALSE 0 51#define FALSE 0
54#endif 52#endif
55 53
56// used only for tagging structure members so scripting languages 54// used only for tagging structure members so scripting languages
57// can easily parse the include files. 55// can easily parse the include files.
58#define ACC_CLASS(name) 56#define INTERFACE_CLASS(name)
59#define ACC(meta,member) member 57#define ACC(meta,member) member
58#define MTH
60 59
61#include "keyword.h" 60#include "keyword.h"
62#include "traits.h" 61#include "traits.h"
63#include "dynbuf.h" 62#include "dynbuf.h"
64#include "util.h" 63#include "util.h"
65#include "shstr.h" 64#include "shstr.h"
66#include "newclient.h"
67 65
68/* This blob, in this order, is needed to actually define maps */ 66/* This blob, in this order, is needed to actually define maps */
69#include "face.h" 67#include "face.h"
70/* Include the basic defines from spells.h */ 68
69#include "spells.h"
70
71#include "attack.h" /* needs to be before material.h */ 71#include "attack.h" /* needs to be before material.h */
72#include "material.h" 72#include "material.h"
73#include "living.h" 73#include "living.h"
74#include "object.h" 74#include "object.h"
75#include "map.h" 75#include "map.h"
76#include "tod.h" 76#include "tod.h"
77 77
78#include "skills.h" 78#include "skills.h"
79 79
80/* Pull in the socket structure - used in the player structure */ 80/* Pull in the socket structure - used in the player structure */
81#include "newserver.h" 81#include "network.h"
82#include "client.h"
82 83
83/* Pull in the player structure */ 84/* Pull in the player structure */
84#include "player.h" 85#include "player.h"
85 86
86/* pull in treasure structure */ 87/* pull in treasure structure */
109/* Now for races */ 110/* Now for races */
110#include "race.h" 111#include "race.h"
111 112
112/* Now for recipe/alchemy */ 113/* Now for recipe/alchemy */
113#include "recipe.h" 114#include "recipe.h"
114
115/* Now for spells */
116#include "spells.h"
117 115
118#include "funcpoint.h" 116#include "funcpoint.h"
119 117
120/***************************************************************************** 118/*****************************************************************************
121 * GLOBAL VARIABLES: * 119 * GLOBAL VARIABLES: *
173/* 171/*
174 * Used in treasure.c 172 * Used in treasure.c
175 */ 173 */
176EXTERN archetype *ring_arch,*amulet_arch,*staff_arch,*crown_arch; 174EXTERN archetype *ring_arch,*amulet_arch,*staff_arch,*crown_arch;
177 175
178extern std::vector<Animations> animations; 176EXTERN std::vector<Animations> animations;
179EXTERN int num_animations,animations_allocated, bmaps_checksum; 177EXTERN int num_animations,animations_allocated, bmaps_checksum;
180 178
181/* Rotate right from bsd sum. This is used in various places for checksumming */ 179/* Rotate right from bsd sum. This is used in various places for checksumming */
182#define ROTATE_RIGHT(c) if ((c) & 01) (c) = ((c) >>1) + 0x80000000; else (c) >>= 1; 180#define ROTATE_RIGHT(c) if ((c) & 01) (c) = ((c) >>1) + 0x80000000; else (c) >>= 1;
183 181
184
185#define SET_ANIMATION(ob,newanim) ob->face=&new_faces[animations[ob->animation_id].faces[newanim]] 182#define SET_ANIMATION(ob,newanim) ob->face = new_faces + animations [ob->animation_id].faces [newanim]
186#define GET_ANIMATION(ob,anim) (animations[ob->animation_id].faces[anim]) 183#define GET_ANIMATION(ob,anim) animations [ob->animation_id].faces [anim]
187#define GET_ANIM_ID(ob) (ob->animation_id) 184#define GET_ANIM_ID(ob) (ob->animation_id)
188/* NUM_ANIMATIONS returns the number of animations allocated. The last 185/* NUM_ANIMATIONS returns the number of animations allocated. The last
189 * usuable animation will be NUM_ANIMATIONS-1 (for example, if an object 186 * usuable animation will be NUM_ANIMATIONS-1 (for example, if an object
190 * has 8 animations, NUM_ANIMATIONS will return 8, but the values will 187 * has 8 animations, NUM_ANIMATIONS will return 8, but the values will
191 * range from 0 through 7. 188 * range from 0 through 7.
200 197
201extern New_Face *blank_face, *empty_face; 198extern New_Face *blank_face, *empty_face;
202extern New_Face *dark_faces[]; 199extern New_Face *dark_faces[];
203extern New_Face *smooth_face; 200extern New_Face *smooth_face;
204 201
205extern NewSocket *init_sockets; 202extern client *init_sockets;
206 203
207#include "libproto.h" 204#include "libproto.h"
208#include "sockproto.h" 205#include "sockproto.h"
209 206
210#define decrease_ob(xyz) decrease_ob_nr(xyz,1) 207#define decrease_ob(xyz) decrease_ob_nr(xyz,1)
211 208
212ACC_CLASS (Settings) 209INTERFACE_CLASS (Settings)
213struct Settings { 210struct Settings {
214 char *ACC (RO, logfilename); /* logfile to use */ 211 char *ACC (RO, logfilename); /* logfile to use */
215 int ACC (RW, csport); /* port for new client/server */ 212 int ACC (RW, csport); /* port for new client/server */
216 int ACC (RW, debug); /* Default debugging level */ 213 int ACC (RW, debug); /* Default debugging level */
217 uint8 dumpvalues; /* Set to dump various values/tables */ 214 uint8 dumpvalues; /* Set to dump various values/tables */
245 uint8 ACC (RW, spell_encumbrance); /* encumbrance effects spells */ 242 uint8 ACC (RW, spell_encumbrance); /* encumbrance effects spells */
246 uint8 ACC (RW, spell_failure_effects); /* nasty backlash to spell failures */ 243 uint8 ACC (RW, spell_failure_effects); /* nasty backlash to spell failures */
247 uint16 ACC (RW, set_friendly_fire); /* Percent of damage done by peaceful player vs player damage */ 244 uint16 ACC (RW, set_friendly_fire); /* Percent of damage done by peaceful player vs player damage */
248 uint8 ACC (RW, casting_time); /* it takes awhile to cast a spell */ 245 uint8 ACC (RW, casting_time); /* it takes awhile to cast a spell */
249 uint8 ACC (RW, real_wiz); /* use mud-like wizards */ 246 uint8 ACC (RW, real_wiz); /* use mud-like wizards */
250 uint8 ACC (RW, recycle_tmp_maps); /* re-use tmp maps. */
251 uint8 ACC (RW, explore_mode); /* explore mode allowed? */ 247 uint8 ACC (RW, explore_mode); /* explore mode allowed? */
252 uint8 ACC (RW, spellpoint_level_depend); /* spell costs go up with level */ 248 uint8 ACC (RW, spellpoint_level_depend); /* spell costs go up with level */
253 char ACC (RW, motd)[MAX_BUF]; /* name of the motd file */ 249 char ACC (RW, motd)[MAX_BUF]; /* name of the motd file */
254 char *ACC (RO, rules); /* name of rules file*/ 250 char *ACC (RO, rules); /* name of rules file*/
255 char *ACC (RO, news); /* name of news file*/ 251 char *ACC (RO, news); /* name of news file*/

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines