//
//    EDGE WEAPONS.DDF -redefine or add new weapons.
//    For documentation, see http://edge.sourceforge.net/
//    DDF Version 6.1
//

<WEAPONS>

#VERSION 2.10

// HERETIC DDF code by C.J. Mullen (c_eejay@hotmail.com)

[CHAINSAW]
AMMOTYPE=NOAMMO;
AUTOMATIC=TRUE;
BINDKEY=1;
PRIORITY=1;
ATTACK=PLAYER_GAUNTLETS;
NOTHRUST=TRUE;
START_SOUND=GNTACT;
ENGAGED_SOUND=GNTFUL;
HIT_SOUND=GNTHIT;
FEEDBACK=TRUE;
STATES(UP)=GAUN:A:1:NORMAL:RAISE;
STATES(DOWN)=GAUN:A:1:NORMAL:LOWER;
STATES(READY)=GAUN:A:1:NORMAL:READY;
STATES(WARMUP)=GAUN:B:4:NORMAL:PLAYSOUND(GNTUSE),
               GAUN:C:4:NORMAL:NOTHING;
STATES(ATTACK)=GAUN:D:4:BRIGHT:SHOOT,
               GAUN:E:4:BRIGHT:SHOOT,
               GAUN:F:4:BRIGHT:SHOOT,
               GAUN:C:4:NORMAL:REFIRE,
               GAUN:B:4:NORMAL:NOTHING;
STATES(FLASH)=NULL:A:0:BRIGHT:TRANS_SET(50%),
              NULL:A:2:BRIGHT:LIGHT2,
              NULL:A:2:BRIGHT:LIGHT1,
              NULL:A:0:NORMAL:LIGHT0,
              #REMOVE;

[FIST]
AMMOTYPE=NOAMMO;
AUTOMATIC=TRUE;
FREE=TRUE;
BINDKEY=1;
PRIORITY=0;
ATTACK=PLAYER_STAFF;
HIT_SOUND=STFHIT;
STATES(UP)=STFF:A:1:NORMAL:RAISE;
STATES(DOWN)=STFF:A:1:NORMAL:LOWER;
STATES(READY)=STFF:A:1:NORMAL:READY;
STATES(ATTACK)=STFF:B:6:NORMAL:NOTHING,
               STFF:C:8:NORMAL:SHOOT,
               STFF:B:8:NORMAL:REFIRE;

[PISTOL]
AMMOTYPE=BULLETS;
AMMOPERSHOT=1;
AUTOMATIC=TRUE;
REFIRE_INACCURATE=TRUE;
BINDKEY=2;
PRIORITY=2;
FREE=TRUE;
ATTACK=ELVEN_WAND;
STATES(UP)=GWND:A:1:NORMAL:RAISE;
STATES(DOWN)=GWND:A:1:NORMAL:LOWER;
STATES(READY)=GWND:A:1:NORMAL:READY;
STATES(ATTACK)=GWND:B:3:NORMAL:NOTHING,
               GWND:C:5:BRIGHT:SHOOT,
               GWND:D:3:NORMAL:NOTHING,
               GWND:D:0:NORMAL:REFIRE;

[SUPERSHOTGUN]
AMMOTYPE=SHELLS;
AMMOPERSHOT=2;
AUTOMATIC=TRUE;
BINDKEY=3;
PRIORITY=4;
ATTACK=PLAYER_SHOTGUN2;
KICK=0.1;
STATES(UP)=SHT2:A:1:NORMAL:RAISE;
STATES(DOWN)=SHT2:A:1:NORMAL:LOWER;
STATES(READY)=SHT2:A:1:NORMAL:READY;
STATES(ATTACK)=SHT2:A:2:NORMAL:NOTHING,
               SHT2:A:8:NORMAL:SHOOT,
               SHT2:B:7:NORMAL:NOTHING,
               SHT2:C:7:NORMAL:NOTHING,
               SHT2:C:0:NORMAL:CHECKRELOAD;
STATES(RELOAD)=SHT2:D:7:NORMAL:PLAYSOUND(DBOPN),
               SHT2:E:7:NORMAL:NOTHING,
               SHT2:F:7:NORMAL:PLAYSOUND(DBLOAD),
               SHT2:G:6:NORMAL:NOTHING,
               SHT2:H:0:NORMAL:PLAYSOUND(DBCLS),
               SHT2:H:6:NORMAL:REFIRE,
               SHT2:A:5:NORMAL:NOTHING;
STATES(FLASH)=SHT2:I:0:BRIGHT:TRANS_SET(50%),
              SHT2:I:4:BRIGHT:LIGHT1,
              SHT2:J:4:BRIGHT:LIGHT2,
              SHT2:J:0:NORMAL:LIGHT0,
              #REMOVE;

[SHOTGUN]
AMMOTYPE=SHELLS;
AMMOPERSHOT=1;
AUTOMATIC=TRUE;
BINDKEY=3;
PRIORITY=3;
ATTACK=CROSSBOW_BOLT_A;
STATES(UP)=CRBW:A:1:NORMAL:RAISE;
STATES(DOWN)=CRBW:A:1:NORMAL:LOWER;
STATES(READY)=CRBW:A:1:NORMAL:READY,
              CRBW:A:1:NORMAL:READY,
              CRBW:A:1:NORMAL:READY,
              CRBW:A:1:NORMAL:READY,
              CRBW:A:1:NORMAL:READY,
              CRBW:A:1:NORMAL:READY,

              CRBW:B:1:NORMAL:READY,
              CRBW:B:1:NORMAL:READY,
              CRBW:B:1:NORMAL:READY,
              CRBW:B:1:NORMAL:READY,
              CRBW:B:1:NORMAL:READY,
              CRBW:B:1:NORMAL:READY,

              CRBW:C:1:NORMAL:READY,
              CRBW:C:1:NORMAL:READY,
              CRBW:C:1:NORMAL:READY,
              CRBW:C:1:NORMAL:READY,
              CRBW:C:1:NORMAL:READY,
              CRBW:C:1:NORMAL:READY;
STATES(ATTACK)=CRBW:D:0:NORMAL:PLAYSOUND(BOWSHT),
               CRBW:D:0:NORMAL:EJECT(CROSSBOW_BOLT_B1),
               CRBW:D:0:NORMAL:EJECT(CROSSBOW_BOLT_B2),
               CRBW:D:6:BRIGHT:SHOOT,
               CRBW:E:3:NORMAL:NOTHING,
               CRBW:F:3:NORMAL:NOTHING,
               CRBW:G:3:NORMAL:NOTHING,
               CRBW:H:3:NORMAL:NOTHING,
               CRBW:A:4:NORMAL:NOTHING,
               CRBW:B:4:NORMAL:NOTHING,
               CRBW:C:5:NORMAL:REFIRE;

[CHAINGUN]
AMMOTYPE=ROCKETS;
AMMOPERSHOT=1;
AUTOMATIC=TRUE;
REFIRE_INACCURATE=TRUE;
BINDKEY=4;
PRIORITY=5;
ATTACK=DRAGON_CLAW;
KICK=0.02;
STATES(UP)=BLSR:A:1:NORMAL:RAISE;
STATES(DOWN)=BLSR:A:1:NORMAL:LOWER;
STATES(READY)=BLSR:A:1:NORMAL:READY;
STATES(WARMUP)=BLSR:B:3:NORMAL:NOTHING,
               BLSR:C:3:NORMAL:NOTHING;
STATES(ATTACK)=BLSR:D:2:BRIGHT:SHOOT,
               BLSR:C:2:BRIGHT:NOTHING,
               BLSR:B:2:NORMAL:NOTHING,
               BLSR:A:0:NORMAL:REFIRE;

[PLASMA_RIFLE]
AMMOTYPE=CELLS;
AMMOPERSHOT=1;
AUTOMATIC=TRUE;
BINDKEY=5;
PRIORITY=6;
ATTACK=PLAYER_HELLSTAFF;
KICK=0.005;
STATES(UP)=HROD:A:1:NORMAL:RAISE;
STATES(DOWN)=HROD:A:1:NORMAL:LOWER;
STATES(READY)=HROD:A:1:NORMAL:READY;
STATES(ATTACK)=HROD:A:4:NORMAL:SHOOT,
               HROD:B:4:NORMAL:SHOOT,
               HROD:B:0:NORMAL:REFIRE;

[BFG9000]
AMMOTYPE=AMMO5;
AMMOPERSHOT=1;
AUTOMATIC=TRUE;
BINDKEY=6;
PRIORITY=7;
DANGEROUS=TRUE;
ATTACK=PLAYER_PHOENIX;
KICK=0.2;
STATES(UP)=PHNX:A:1:NORMAL:RAISE;
STATES(DOWN)=PHNX:A:1:NORMAL:LOWER;
STATES(READY)=PHNX:A:1:NORMAL:READY;
STATES(ATTACK)=PHNX:B:5:NORMAL:NOTHING,
               PHNX:C:7:NORMAL:SHOOT,
               PHNX:D:4:NORMAL:NOTHING,
               PHNX:B:4:NORMAL:NOTHING,
               PHNX:B:0:NORMAL:REFIRE;

[ROCKET_LAUNCHER]
AMMOTYPE=AMMO6;
AMMOPERSHOT=1;
AUTOMATIC=TRUE;
BINDKEY=7;
PRIORITY=8;
DANGEROUS=TRUE;
ATTACK=PLAYER_MACE_A;
KICK=0.15;
STATES(UP)=MACE:A:1:NORMAL:RAISE;
STATES(DOWN)=MACE:A:1:NORMAL:LOWER;
STATES(READY)=MACE:A:1:NORMAL:READY;

STATES(WARMUP)=MACE:B:4:NORMAL:NOTHING;

STATES(ATTACK)=MACE:C:0:NORMAL:JUMP(ATTACK:14,21%),
               MACE:C:3:NORMAL:SHOOT,

               MACE:D:0:NORMAL:JUMP(ATTACK:15,21%),
               MACE:D:3:NORMAL:SHOOT,

               MACE:E:0:NORMAL:JUMP(ATTACK:16,21%),
               MACE:E:3:NORMAL:SHOOT,

               MACE:F:0:NORMAL:JUMP(ATTACK:17,21%),
               MACE:F:3:NORMAL:SHOOT,

               MACE:C:4:NORMAL:REFIRE,
               MACE:D:4:NORMAL:NOTHING,
               MACE:E:4:NORMAL:NOTHING,
               MACE:F:4:NORMAL:NOTHING,
               MACE:B:4:NORMAL:NOTHING,

               #READY,

               MACE:C:3:NORMAL:SHOOT(PLAYER_MACE_B),
               #ATTACK:3,

               MACE:D:3:NORMAL:SHOOT(PLAYER_MACE_B),
               #ATTACK:5,

               MACE:E:3:NORMAL:SHOOT(PLAYER_MACE_B),
               #ATTACK:7,

               MACE:F:3:NORMAL:SHOOT(PLAYER_MACE_B),
               #ATTACK:9;
