Angband
effects.h
Go to the documentation of this file.
1 
19 #ifndef INCLUDED_EFFECTS_H
20 #define INCLUDED_EFFECTS_H
21 
22 /* Types of effect */
23 typedef enum
24 {
26  #define EFFECT(x, a, b, d) EF_##x,
27  #include "list-effects.h"
28  #undef EFFECT
29  EF_MAX
30 } effect_index;
31 
32 struct effect {
33  struct effect *next;
36  int params[3];
37 };
38 
39 /*** Functions ***/
40 
41 bool remove_all_curse(void);
42 
43 void free_effect(struct effect *source);
44 bool effect_valid(struct effect *effect);
45 bool effect_aim(struct effect *effect);
46 const char *effect_info(struct effect *effect);
47 const char *effect_desc(struct effect *effect);
48 effect_index effect_lookup(const char *name);
49 int effect_param(const char *type);
50 bool effect_do(struct effect *effect, bool *ident, bool aware, int dir, int beam, int boost);
51 void effect_simple(int index, const char* dice_string, int p1, int p2, int p3, bool *ident);
52 
53 #endif /* INCLUDED_EFFECTS_H */