#ifndef _EFFECT_H_76554408_ #define _EFFECT_H_76554408_ /* * APIs exported by effect.c. */ #include "structs.h" /* * Called on monster death to clean up any residual status effects. */ extern void effect_death(MONST *); /* * Add a status effect on a monster, given the effect's private data * and ops vector. Returns the EFFECT pointer. */ extern EFFECT *effect_add(MONST *, void *, EFFECTOPS *); /* * Remove a status effect from a monster. This does not free anything * or call any of the EFFECT's methods; that is assumed to be handled * by the caller. The only side effects are to free the EFFECT itself * and to call effect_recompute() on the monster. */ extern void effect_remove(MONST *, EFFECT *); /* * Recompute effects on a monster. This is suitable for use when an * effect on the monster has been added, removed, or changed. */ extern void effect_recompute(MONST *); #endif