tfe-1.0/area/
tfe-1.0/files/
tfe-1.0/logs/
tfe-1.0/logs/immortal/
tfe-1.0/logs/mob/
tfe-1.0/logs/object/
tfe-1.0/logs/player/
tfe-1.0/logs/room/
tfe-1.0/notes/clans/
tfe-1.0/player/
tfe-1.0/prev/
tfe-1.0/prev/area/
tfe-1.0/prev/player/
tfe-1.0/prev/rooms/
tfe-1.0/rooms/
tfe-1.0/src-gc/
tfe-1.0/src-msvc/
tfe-1.0/src-unix/
tfe-1.0/www/
tfe-1.0/www/html/
#define APPLY_NONE                  0
#define APPLY_STR                   1
#define APPLY_DEX                   2
#define APPLY_INT                   3
#define APPLY_WIS                   4
#define APPLY_CON                   5
#define APPLY_MAGIC                 6
#define APPLY_FIRE                  7
#define APPLY_COLD                  8
#define APPLY_ELECTRIC              9
#define APPLY_MIND                 10
#define APPLY_AGE                  11 
#define APPLY_MANA                 12
#define APPLY_HIT                  13
#define APPLY_MOVE                 14
#define APPLY_AC                   17
#define APPLY_HITROLL              18
#define APPLY_DAMROLL              19
#define APPLY_MANA_REGEN           20
#define APPLY_HIT_REGEN            21
#define APPLY_MOVE_REGEN           22
#define APPLY_ACID                 23
#define APPLY_POISON               24
#define MAX_AFF_LOCATION           25


#define AFFECT_INTS                 3


class Affect_Data
{
 public:
  char_data*    leech;
  char_data*    victim;
  int           type;
  int           duration;
  int           level;
  int           location;
  int           modifier;
  int           leech_regen;
  int           leech_max;

  Affect_Data( );
  ~Affect_Data( );
};


extern const char* fake_mob [ MAX_FAKE_MOB ];


void   add_affect         ( char_data*, affect_data* );
void   add_affect         ( obj_data*, affect_data* );
int    affect_level       ( char_data*, int ); 
int    affect_duration    ( char_data*, int ); 
bool   has_affect         ( char_data*, int );
bool   is_affected        ( obj_data*, int );
void   strip_affect       ( char_data*, int );
bool   strip_affect       ( obj_data*, int );
void   remove_affect      ( char_data* );
void   remove_affect      ( char_data*, affect_data* );
void   remove_affect      ( obj_data*, affect_data*, bool = TRUE );
void   read_affects       ( FILE*, obj_clss_data* );
void   read_affects       ( FILE*, obj_data* );
void   read_affects       ( FILE*, char_data* );
void   write_affects      ( FILE*, obj_clss_data* );
void   write_affects      ( FILE*, obj_data* );
void   write_affects      ( FILE*, char_data* );