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

Comparing deliantra/server/include/spells.h (file contents):
Revision 1.1 by root, Fri Feb 3 07:12:51 2006 UTC vs.
Revision 1.9 by pippijn, Sat Jan 6 14:42:30 2007 UTC

1/*
2 * static char *rcsid_spells_h =
3 * "$Id: spells.h,v 1.1 2006/02/03 07:12:51 root Exp $";
4 */
5
6/* 1/*
7 CrossFire, A Multiplayer game for X-windows 2 CrossFire, A Multiplayer game for X-windows
8 3
4 Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team
9 Copyright (C) 2002-2003 Mark Wedel & Crossfire Development Team 5 Copyright (C) 2002-2003 Mark Wedel & Crossfire Development Team
10 Copyright (C) 1992 Frank Tore Johansen 6 Copyright (C) 1992 Frank Tore Johansen
11 7
12 This program is free software; you can redistribute it and/or modify 8 This program is free software; you can redistribute it and/or modify
13 it under the terms of the GNU General Public License as published by 9 it under the terms of the GNU General Public License as published by
21 17
22 You should have received a copy of the GNU General Public License 18 You should have received a copy of the GNU General Public License
23 along with this program; if not, write to the Free Software 19 along with this program; if not, write to the Free Software
24 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 20 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
25 21
26 The authors can be reached via e-mail at crossfire-devel@real-time.com 22 The authors can be reached via e-mail at crossfire@schmorp.de
27*/ 23*/
28 24
29#ifndef SPELLS_H 25#ifndef SPELLS_H
30#define SPELLS_H 26#define SPELLS_H
31 27
50#define PATH_WOUNDING 0x00020000 /* 131072 */ 46#define PATH_WOUNDING 0x00020000 /* 131072 */
51#define PATH_DEATH 0x00040000 /* 262144 */ 47#define PATH_DEATH 0x00040000 /* 262144 */
52#define PATH_LIGHT 0x00080000 /* 524288 */ 48#define PATH_LIGHT 0x00080000 /* 524288 */
53 49
54#define PATH_SP_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \ 50#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)) 51 ((op->path_repelled & spell->path_attuned) ? 1.25 : 1))
56 52
57#define NRSPELLPATHS 20 53#define NRSPELLPATHS 20
58extern char *spellpathnames[NRSPELLPATHS]; 54extern const char* const spellpathnames[NRSPELLPATHS];
59 55
60/* The only place this is really used is to allocate an array 56/* The only place this is really used is to allocate an array
61 * when printing out the spells the player knows. 57 * when printing out the spells the player knows.
62 */ 58 */
63#define NROFREALSPELLS 1024 59#define NROFREALSPELLS 1024
70#define SPELL_MANA 0x1 66#define SPELL_MANA 0x1
71#define SPELL_GRACE 0x2 67#define SPELL_GRACE 0x2
72#define SPELL_HIGHEST 0x3 68#define SPELL_HIGHEST 0x3
73 69
74/* This is the subtype for the spells. Start at 1 so that 70/* This is the subtype for the spells. Start at 1 so that
75 * it is easy to see 0 as an uninitialized value. 71 * it is easy to see 0 as an uninitialised value.
76 * Note that for some spells, subtype pretty accurately 72 * Note that for some spells, subtype pretty accurately
77 * describes the entire spell (SP_DETECT_MAGIC). But for other, the subtype 73 * describes the entire spell (SP_DETECT_MAGIC). But for other, the subtype
78 * may not really say much (eg, SP_BOLT), and it is other 74 * may not really say much (eg, SP_BOLT), and it is other
79 * fields within the object which really determines its properties. 75 * fields within the object which really determines its properties.
80 * No effort is made to match these new numbers with the old ones, 76 * No effort is made to match these new numbers with the old ones,
139/* This is for the force subtypes */ 135/* This is for the force subtypes */
140#define FORCE_CONFUSION 1 136#define FORCE_CONFUSION 1
141#define FORCE_CHANGE_ABILITY 2 137#define FORCE_CHANGE_ABILITY 2
142 138
143#define PATH_TIME_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \ 139#define PATH_TIME_MULT(op,spell) (((op->path_attuned & spell->path_attuned) ? 0.8 : 1) * \
144 ((op->path_repelled & spell->path_attuned) ? 1.25 : 1)) 140 ((op->path_repelled & spell->path_attuned) ? 1.25 : 1))
145 141
146/* These are some hard coded values that are used within the code 142/* These are some hard coded values that are used within the code
147 * for spell failure effects or pieces of spells. Rather 143 * for spell failure effects or pieces of spells. Rather
148 * then hardcode the names, use defines so it is easier to 144 * then hardcode the names, use defines so it is easier to
149 * update if necessary. 145 * update if necessary.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines