1 | /* |
|
|
2 | * static char *rcsid_spells_h = |
|
|
3 | * "$Id: spells.h,v 1.2 2006/08/12 14:12:03 elmex Exp $"; |
|
|
4 | */ |
|
|
5 | |
|
|
6 | /* |
1 | /* |
7 | CrossFire, A Multiplayer game for X-windows |
2 | CrossFire, A Multiplayer game for X-windows |
8 | |
3 | |
9 | Copyright (C) 2002-2003 Mark Wedel & Crossfire Development Team |
4 | Copyright (C) 2002-2003 Mark Wedel & Crossfire Development Team |
10 | Copyright (C) 1992 Frank Tore Johansen |
5 | Copyright (C) 1992 Frank Tore Johansen |
… | |
… | |
21 | |
16 | |
22 | 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 |
23 | along with this program; if not, write to the Free Software |
18 | along with this program; if not, write to the Free Software |
24 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
19 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
25 | |
20 | |
26 | 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.de |
27 | */ |
22 | */ |
28 | |
23 | |
29 | #ifndef SPELLS_H |
24 | #ifndef SPELLS_H |
30 | #define SPELLS_H |
25 | #define SPELLS_H |
31 | |
26 | |
… | |
… | |
50 | #define PATH_WOUNDING 0x00020000 /* 131072 */ |
45 | #define PATH_WOUNDING 0x00020000 /* 131072 */ |
51 | #define PATH_DEATH 0x00040000 /* 262144 */ |
46 | #define PATH_DEATH 0x00040000 /* 262144 */ |
52 | #define PATH_LIGHT 0x00080000 /* 524288 */ |
47 | #define PATH_LIGHT 0x00080000 /* 524288 */ |
53 | |
48 | |
54 | #define PATH_SP_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \ |
49 | #define PATH_SP_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \ |
55 | ((op->path_repelled & spell->path_attuned) ? 1.25 : 1)) |
50 | ((op->path_repelled & spell->path_attuned) ? 1.25 : 1)) |
56 | |
51 | |
57 | #define NRSPELLPATHS 20 |
52 | #define NRSPELLPATHS 20 |
58 | extern const char* const spellpathnames[NRSPELLPATHS]; |
53 | extern const char* const spellpathnames[NRSPELLPATHS]; |
59 | |
54 | |
60 | /* The only place this is really used is to allocate an array |
55 | /* The only place this is really used is to allocate an array |
… | |
… | |
127 | #define SP_FAERY_FIRE 44 |
122 | #define SP_FAERY_FIRE 44 |
128 | #define SP_CAUSE_DISEASE 45 |
123 | #define SP_CAUSE_DISEASE 45 |
129 | #define SP_AURA 46 |
124 | #define SP_AURA 46 |
130 | #define SP_TOWN_PORTAL 47 |
125 | #define SP_TOWN_PORTAL 47 |
131 | #define SP_PARTY_SPELL 48 |
126 | #define SP_PARTY_SPELL 48 |
132 | #define SP_PERL 49 /* a perl/plugin handled spell */ |
|
|
133 | |
127 | |
134 | /* Potion subtypes */ |
128 | /* Potion subtypes */ |
135 | #define POT_SPELL 1 |
129 | #define POT_SPELL 1 |
136 | #define POT_DUST 2 |
130 | #define POT_DUST 2 |
137 | #define POT_FIGURINE 3 |
131 | #define POT_FIGURINE 3 |
… | |
… | |
140 | /* This is for the force subtypes */ |
134 | /* This is for the force subtypes */ |
141 | #define FORCE_CONFUSION 1 |
135 | #define FORCE_CONFUSION 1 |
142 | #define FORCE_CHANGE_ABILITY 2 |
136 | #define FORCE_CHANGE_ABILITY 2 |
143 | |
137 | |
144 | #define PATH_TIME_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \ |
138 | #define PATH_TIME_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \ |
145 | ((op->path_repelled & spell->path_attuned) ? 1.25 : 1)) |
139 | ((op->path_repelled & spell->path_attuned) ? 1.25 : 1)) |
146 | |
140 | |
147 | /* These are some hard coded values that are used within the code |
141 | /* These are some hard coded values that are used within the code |
148 | * for spell failure effects or pieces of spells. Rather |
142 | * for spell failure effects or pieces of spells. Rather |
149 | * then hardcode the names, use defines so it is easier to |
143 | * then hardcode the names, use defines so it is easier to |
150 | * update if necessary. |
144 | * update if necessary. |