server/src/common/kernel/karma.h

80 lines
1.6 KiB
C
Raw Normal View History

2001-01-25 10:37:55 +01:00
/* vi: set ts=2:
*
* Eressea PB(E)M host Copyright (C) 1998-2003
2001-01-25 10:37:55 +01:00
* Christian Schlittchen (corwin@amber.kn-bremen.de)
* Katja Zedel (katze@felidae.kn-bremen.de)
* Henning Peters (faroul@beyond.kn-bremen.de)
* Enno Rehling (enno@eressea-pbem.de)
* Ingo Wilken (Ingo.Wilken@informatik.uni-oldenburg.de)
*
* This program may not be used, modified or distributed without
* prior permission by the authors of Eressea.
*/
#ifndef H_KRNL_KARMA
#define H_KRNL_KARMA
#ifdef __cplusplus
extern "C" {
#endif
2001-01-25 10:37:55 +01:00
struct faction;
typedef enum {
FS_REGENERATION,
FS_URBAN,
FS_WARRIOR,
FS_WYRM,
FS_MILITIA,
FS_FAERIE,
FS_ADMINISTRATOR,
FS_TELEPATHY,
FS_AMPHIBIAN,
FS_MAGOCRACY,
FS_SAPPER,
FS_JUMPER,
FS_HIDDEN,
FS_EARTHELEMENTALIST,
FS_MAGICIMMUNE,
FS_VARIEDMAGIC,
FS_JIHAD,
FS_UNDEAD,
FS_QUICK,
FS_LUCKY,
2002-04-12 14:46:16 +02:00
FS_LYCANTROPE,
FS_ELITE,
2001-01-25 10:37:55 +01:00
MAXFACTIONSPECIALS
} fspecial_t;
typedef enum {
PR_AID,
PR_MERCY,
MAXPRAYEREFFECTS
} prayereffect_t;
typedef struct fspecialdata fspecialdata;
struct fspecialdata {
const char *name;
const char *description;
const short maxlevel;
2001-01-25 10:37:55 +01:00
};
extern struct attrib_type at_faction_special;
extern struct attrib_type at_prayer_timeout;
extern struct attrib_type at_prayer_effect;
extern struct attrib_type at_wyrm;
extern struct attrib_type at_fshidden;
extern struct attrib_type at_jihad;
extern struct fspecialdata fspecials[];
extern int fspecial(const struct faction *f, fspecial_t special);
#ifdef KARMA_MODULE
2004-06-21 18:45:27 +02:00
extern void karma(void);
extern int jihad(struct faction *, const struct race *);
extern void jihad_attacks(void);
#endif
2001-01-25 10:37:55 +01:00
#ifdef __cplusplus
}
#endif
2001-01-25 10:37:55 +01:00
#endif