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

Comparing deliantra/server/include/define.h (file contents):
Revision 1.12 by root, Fri Sep 29 11:53:08 2006 UTC vs.
Revision 1.18 by root, Mon Dec 18 02:35:01 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 authors can be reached via e-mail at crossfire-devel@real-time.com 21 The authors can be reached via e-mail at crossfire@schmorp.de
22*/ 22*/
23 23
24/* This file is best viewed with a window width of about 100 character */ 24/* This file is best viewed with a window width of about 100 character */
25 25
26/* This file is really too large. With all the .h files 26/* This file is really too large. With all the .h files
43 * The following should still hopefully result in an error. 43 * The following should still hopefully result in an error.
44 */ 44 */
45error - Your ANSI C compiler should be defining __STDC__; 45error - Your ANSI C compiler should be defining __STDC__;
46#endif 46#endif
47 47
48#ifndef WIN32 /* ---win32 exclude unix configuration part */
49# include <autoconf.h> 48#include <autoconf.h>
50#endif
51 49
52#define FONTDIR "" 50#define FONTDIR ""
53#define FONTNAME "" 51#define FONTNAME ""
54 52
55/* Decstations have trouble with fabs()... */ 53/* Decstations have trouble with fabs()... */
382#define PU_READABLES 0x00400000 380#define PU_READABLES 0x00400000
383#define PU_MAGIC_DEVICE 0x00800000 381#define PU_MAGIC_DEVICE 0x00800000
384 382
385#define PU_NOT_CURSED 0x01000000 383#define PU_NOT_CURSED 0x01000000
386#define PU_JEWELS 0x02000000 384#define PU_JEWELS 0x02000000
385#define PU_FLESH 0x04000000
387 386
388 387
389/* Instead of using arbitrary constants for indexing the 388/* Instead of using arbitrary constants for indexing the
390 * freearr, add these values. <= SIZEOFFREE1 will get you 389 * freearr, add these values. <= SIZEOFFREE1 will get you
391 * within 1 space. <= SIZEOFFREE2 wll get you withing 390 * within 1 space. <= SIZEOFFREE2 wll get you withing
426 * flags[2] is 64 to 95 425 * flags[2] is 64 to 95
427 * flags[3] is 96 to 127 426 * flags[3] is 96 to 127
428 */ 427 */
429 428
430/* Basic routines to do above */ 429/* Basic routines to do above */
431#define SET_FLAG(xyz, p) \ 430#define SET_FLAG(obj, flag) (obj)->flags[flag] = 1
432 ((xyz)->flags[p/32] |= (1U << (p % 32))) 431#define CLEAR_FLAG(obj, flag) (obj)->flags[flag] = 0
433#define CLEAR_FLAG(xyz, p) \ 432#define QUERY_FLAG(obj, flag) (obj)->flags[flag]
434 ((xyz)->flags[p/32] &= ~(1U << (p % 32)))
435#define QUERY_FLAG(xyz, p) \
436 ((xyz)->flags[p/32] & (1U << (p % 32)))
437#define COMPARE_FLAGS(p,q) \
438 ( \
439 ((p)->flags[0] == (q)->flags[0]) && \
440 ((p)->flags[1] == (q)->flags[1]) && \
441 ((p)->flags[2] == (q)->flags[2]) && \
442 ((p)->flags[3] == (q)->flags[3]) \
443 )
444 433
445/* convenience macros to determine what kind of things we are dealing with */ 434/* convenience macros to determine what kind of things we are dealing with */
446 435
447#define IS_WEAPON(op) \ 436#define IS_WEAPON(op) \
448 (op->type == ARROW || op->type == BOW || op->type == WEAPON) 437 (op->type == ARROW || op->type == BOW || op->type == WEAPON)
1031 * 1020 *
1032 * 0.94.2 - you probably shouldn't need to change any of the rand stuff 1021 * 0.94.2 - you probably shouldn't need to change any of the rand stuff
1033 * here. 1022 * here.
1034 */ 1023 */
1035 1024
1036#ifdef HAVE_SRANDOM
1037# define RANDOM() random() 1025#define RANDOM() random()
1038# define SRANDOM(xyz) srandom(xyz) 1026#define SRANDOM(xyz) srandom(xyz)
1039#else
1040# ifdef HAVE_SRAND48
1041# define RANDOM() lrand48()
1042# define SRANDOM(xyz) srand48(xyz)
1043# else
1044# ifdef HAVE_SRAND
1045# define RANDOM() rand()
1046# define SRANDOM(xyz) srand(xyz)
1047# else
1048# error "Could not find a usable random routine"
1049# endif
1050# endif
1051#endif
1052 1027
1053/* Returns the weight of the given object. Note: it does not take the number of 1028/* Returns the weight of the given object. Note: it does not take the number of
1054 * items (nrof) into account. 1029 * items (nrof) into account.
1055 */ 1030 */
1056#define WEIGHT(op) (op->nrof?op->weight:op->weight+op->carrying) 1031#define WEIGHT(op) (op->nrof?op->weight:op->weight+op->carrying)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines