ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/living.h
Revision: 1.12
Committed: Mon Jan 15 21:06:19 2007 UTC (17 years, 4 months ago) by pippijn
Content type: text/plain
Branch: MAIN
CVS Tags: rel-2_0
Changes since 1.11: +22 -22 lines
Log Message:
comments

File Contents

# User Rev Content
1 root 1.1 /*
2 pippijn 1.12 * CrossFire, A Multiplayer game for X-windows
3     *
4     * Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team
5     * Copyright (C) 2002 Mark Wedel & Crossfire Development Team
6     * Copyright (C) 1992 Frank Tore Johansen
7     *
8     * This program is free software; you can redistribute it and/or modify
9     * it under the terms of the GNU General Public License as published by
10     * the Free Software Foundation; either version 2 of the License, or
11     * (at your option) any later version.
12     *
13     * This program is distributed in the hope that it will be useful,
14     * but WITHOUT ANY WARRANTY; without even the implied warranty of
15     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16     * GNU General Public License for more details.
17     *
18     * You should have received a copy of the GNU General Public License
19     * along with this program; if not, write to the Free Software
20     * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21     *
22     * The authors can be reached via e-mail at crossfire@schmorp.de
23     */
24 root 1.1
25     #ifndef LIVING_H
26     #define LIVING_H
27    
28 root 1.10 // corresponds to some arrays in common/living.C
29 root 1.8 enum {
30     STR,
31     DEX,
32     CON,
33     INT,
34     WIS,
35     POW,
36     CHA,
37     NUM_STATS
38     };
39 root 1.1
40     #define MAXLEVEL 110
41    
42     /* Changed from NO_STAT to NO_STAT_VAL to fix conlfict on
43     * AIX systems
44     */
45     #define NO_STAT_VAL 99 /* needed by skills code -b.t. */
46    
47     extern const char *const attacks[NROFATTACKS];
48    
49     extern const float cha_bonus[MAX_STAT + 1];
50     extern const int dex_bonus[MAX_STAT + 1];
51     extern const int thaco_bonus[MAX_STAT + 1];
52     extern const int turn_bonus[MAX_STAT + 1];
53     extern const int max_carry[MAX_STAT + 1];
54     extern const int dam_bonus[MAX_STAT + 1];
55     extern const int learn_spell[];
56     extern const char *const restore_msg[NUM_STATS];
57     extern const char *const statname[NUM_STATS];
58     extern const char *const short_stat_name[NUM_STATS];
59     extern const char *const lose_msg[NUM_STATS];
60     extern const float speed_bonus[MAX_STAT + 1];
61     extern const uint32 weight_limit[MAX_STAT + 1];
62     extern const int cleric_chance[MAX_STAT + 1];
63     extern const int fear_bonus[MAX_STAT + 1];
64    
65 root 1.4 /* Mostly used by "alive" objects */
66 root 1.10 INTERFACE_CLASS (living)
67 root 1.2 struct living
68 root 1.4 {
69 root 1.9 sint64 ACC (RW, exp); /* Experience. */
70     sint32 ACC (RW, food); /* How much food in stomach. 0 = starved. */
71 root 1.8
72 root 1.9 sint8 ACC (RW, Str), ACC (RW, Dex), ACC (RW, Con), ACC (RW, Int), ACC (RW, Wis), ACC (RW, Pow), ACC (RW, Cha);
73     sint8 ACC (RW, wc), ACC (RW, ac); /* Weapon Class and Armour Class */
74     sint8 ACC (RW, luck); /* Affects thaco and ac from time to time */
75     sint16 ACC (RW, dam); /* How much damage this object does when hitting */
76 root 1.8
77 root 1.9 sint16 ACC (RW, hp); /* Hit Points. */
78     sint16 ACC (RW, maxhp);
79 root 1.8
80 root 1.9 sint16 ACC (RW, sp); /* Spell points. Used to cast mage spells. */
81     sint16 ACC (RW, maxsp); /* Max spell points. */
82 root 1.8
83 root 1.9 sint16 ACC (RW, grace); /* Grace. Used to invoke clerical prayers. */
84     sint16 ACC (RW, maxgrace); /* Grace. Used to invoke clerical prayers. */
85 root 1.2 };
86 root 1.1
87 root 1.2 #endif
88 root 1.1