wileymud-1.187b/
wileymud-1.187b/attic/
wileymud-1.187b/attic/bin/
wileymud-1.187b/attic/lib/
wileymud-1.187b/attic/lib/adm/
wileymud-1.187b/attic/lib/man/
wileymud-1.187b/attic/lib/new-wld/
wileymud-1.187b/attic/lib/new-wld/default/
wileymud-1.187b/attic/lib/old/
wileymud-1.187b/attic/lib/wld/
wileymud-1.187b/attic/public_html/
wileymud-1.187b/attic/public_html/gfx/
wileymud-1.187b/attic/src/bin/
wileymud-1.187b/attic/src/etc/
wileymud-1.187b/attic/src/libauth-4.0-p5/
wileymud-1.187b/attic/src/sedna/
wileymud-1.187b/backups/
wileymud-1.187b/bin/
wileymud-1.187b/docs/
wileymud-1.187b/etc/
wileymud-1.187b/lib/
wileymud-1.187b/lib/adm/
wileymud-1.187b/lib/boards/
wileymud-1.187b/lib/log/
wileymud-1.187b/lib/man/
wileymud-1.187b/lib/ply/
wileymud-1.187b/lib/ply/a/
wileymud-1.187b/lib/ply/b/
wileymud-1.187b/lib/ply/c/
wileymud-1.187b/lib/ply/d/
wileymud-1.187b/lib/ply/g/
wileymud-1.187b/lib/ply/k/
wileymud-1.187b/lib/ply/m/
wileymud-1.187b/lib/ply/s/
wileymud-1.187b/lib/ply/t/
wileymud-1.187b/public_html/gfx/
wileymud-1.187b/src/bin/
wileymud-1.187b/src/convert/attic/
wileymud-1.187b/src/convert/obj/
wileymud-1.187b/src/convert/perl/
wileymud-1.187b/src/convert/perl/MudConvert/
wileymud-1.187b/src/convert/perl/MudConvert/DUMP/
wileymud-1.187b/src/convert/perl/MudConvert/Report/
wileymud-1.187b/src/convert/perl/MudConvert/WileyMUD/
wileymud-1.187b/src/convert/perl/output/
wileymud-1.187b/src/convert/perl/output/DUMP/
wileymud-1.187b/src/convert/perl/output/Report/
wileymud-1.187b/src/convert/perl/output/WileyMUD/
wileymud-1.187b/src/etc/
wileymud-1.187b/src/etc/init.d/
wileymud-1.187b/src/etc/rc.d/
wileymud-1.187b/src/etc/rc.d/init.d/
wileymud-1.187b/src/lib/
wileymud-1.187b/src/lib/adm/
wileymud-1.187b/src/lib/boards/
wileymud-1.187b/src/lib/log/
wileymud-1.187b/src/lib/man/
wileymud-1.187b/src/lib/ply/
wileymud-1.187b/src/lib/ply/a/
wileymud-1.187b/src/lib/ply/b/
wileymud-1.187b/src/lib/ply/c/
wileymud-1.187b/src/lib/ply/d/
wileymud-1.187b/src/lib/ply/e/
wileymud-1.187b/src/lib/ply/f/
wileymud-1.187b/src/lib/ply/g/
wileymud-1.187b/src/lib/ply/h/
wileymud-1.187b/src/lib/ply/i/
wileymud-1.187b/src/lib/ply/j/
wileymud-1.187b/src/lib/ply/k/
wileymud-1.187b/src/lib/ply/l/
wileymud-1.187b/src/lib/ply/m/
wileymud-1.187b/src/lib/ply/n/
wileymud-1.187b/src/lib/ply/o/
wileymud-1.187b/src/lib/ply/p/
wileymud-1.187b/src/lib/ply/q/
wileymud-1.187b/src/lib/ply/r/
wileymud-1.187b/src/lib/ply/s/
wileymud-1.187b/src/lib/ply/t/
wileymud-1.187b/src/lib/ply/u/
wileymud-1.187b/src/lib/ply/v/
wileymud-1.187b/src/lib/ply/w/
wileymud-1.187b/src/lib/ply/x/
wileymud-1.187b/src/lib/ply/y/
wileymud-1.187b/src/lib/ply/z/
wileymud-1.187b/src/obj/
wileymud-1.187b/src/utils/
wileymud-1.187b/src/utils/mobmaker/
#ifndef _TRAP_H
#define _TRAP_H

#define TRAP_EFFECT_TYPE   0
#define TRAP_DAM_TYPE      1
#define TRAP_LEVEL         2
#define TRAP_CHARGES       3

/*
 * trap damage types...
 */

#define TRAP_DAM_SLEEP     -3
#define TRAP_DAM_TELEPORT  -2
#define TRAP_DAM_FIRE      SPELL_FIREBALL
#define TRAP_DAM_COLD      SPELL_FROST_BREATH
#define TRAP_DAM_ACID      SPELL_ACID_BLAST
#define TRAP_DAM_ENERGY    SPELL_COLOUR_SPRAY
#define TRAP_DAM_BLUNT     TYPE_BLUDGEON
#define TRAP_DAM_PIERCE    TYPE_PIERCE
#define TRAP_DAM_SLASH     TYPE_SLASH

#define TRAP_EFF_MOVE      1				       /* trigger on movement */
#define TRAP_EFF_OBJECT    2				       /* trigger on get or put */
#define TRAP_EFF_ROOM      4				       /* affect all in room */
#define TRAP_EFF_NORTH     8				       /* movement in this dir */
#define TRAP_EFF_EAST     16
#define TRAP_EFF_SOUTH    32
#define TRAP_EFF_WEST     64
#define TRAP_EFF_UP      128
#define TRAP_EFF_DOWN    256

#define GET_TRAP_LEV(obj) (obj)->obj_flags.value[TRAP_LEVEL]
#define GET_TRAP_EFF(obj) (obj)->obj_flags.value[TRAP_EFFECT_TYPE]
#define GET_TRAP_CHARGES(obj) (obj)->obj_flags.value[TRAP_CHARGES]
#define GET_TRAP_DAM_TYPE(obj) (obj)->obj_flags.value[TRAP_DAM_TYPE]

void                                    do_settrap(struct char_data *ch, const char *argument, int cmd);
int                                     CheckForMoveTrap(struct char_data *ch, int dir);
int                                     CheckForInsideTrap(struct char_data *ch,
							   struct obj_data *i);
int                                     CheckForAnyTrap(struct char_data *ch,
							struct obj_data *i);
int                                     CheckForGetTrap(struct char_data *ch,
							struct obj_data *i);
int                                     TriggerTrap(struct char_data *ch, struct obj_data *i);
void                                    FindTrapDamage(struct char_data *v, struct obj_data *i);
void                                    TrapDamage(struct char_data *v, int damtype, int amnt,
						   struct obj_data *t);
void                                    TrapDam(struct char_data *v, int damtype, int amnt,
						struct obj_data *t);
void                                    TrapTeleport(struct char_data *v);
void                                    TrapSleep(struct char_data *v);
void                                    InformMess(struct char_data *v);

#endif