enum {
	DND_WEAPON_FIST,
	DND_WEAPON_CHAINSAW,
	DND_WEAPON_DOUBLECHAINSAW,
	DND_WEAPON_KATANA,
	DND_WEAPON_EXCALIBAT,
	DND_WEAPON_INFERNOSWORD,
	DND_WEAPON_DUSKBLADE,
	DND_WEAPON_SICKLE,
	
	DND_WEAPON_PISTOL,
	DND_WEAPON_AKIMBOPISTOL,
	DND_WEAPON_MAGNUM,
	DND_WEAPON_LASERPISTOL,
	DND_WEAPON_RUBYWAND,
	DND_WEAPON_ASSAULTRIFLE,
	DND_WEAPON_VIPERSTAFF,
	DND_WEAPON_SCATTERGUN,
	
	DND_WEAPON_SHOTGUN,
	DND_WEAPON_PURIFIER,
	DND_WEAPON_KILLSTORM,
	DND_WEAPON_EMERALDWAND,
	DND_WEAPON_DEADLOCK,
	DND_WEAPON_NITROGENCROSSBOW,
	DND_WEAPON_WHEELOFTORMENT,
	DND_WEAPON_CHARONBLASTER,
	
	DND_WEAPON_SUPERSHOTGUN,
	DND_WEAPON_HEAVYSUPERSHOTGUN,
	DND_WEAPON_ERASUS,
	DND_WEAPON_HELLSMAW,
	DND_WEAPON_AXE,
	DND_WEAPON_PLASMACANNON,
	DND_WEAPON_SHOCKER,
	DND_WEAPON_HADES,
	DND_WEAPON_CROSSBOW,
	
	DND_WEAPON_SILVERGUN,
	DND_WEAPON_SLAYER,
	
	DND_WEAPON_MACHINEGUN,
	DND_WEAPON_HEAVYMACHINEGUN,
	DND_WEAPON_LEADSPITTER,
	DND_WEAPON_DEMONSEALER,
	DND_WEAPON_TEMPLARMG,
	DND_WEAPON_RIOTCANNON,
	DND_WEAPON_ACIDRIFLE,
	DND_WEAPON_FUSIONBLASTER,
	DND_WEAPON_INCINERATOR,
	
	DND_WEAPON_DESOLATOR,
	DND_WEAPON_MINIGUN,
	DND_WEAPON_EBONYCANNON,
	DND_WEAPON_MPPB,
	
	DND_WEAPON_ROCKETLAUNCHER,
	DND_WEAPON_TORPEDOLAUNCHER,
	DND_WEAPON_GRENADELAUNCHER,
	DND_WEAPON_VINDICATOR,
	DND_WEAPON_HAMMER,
	DND_WEAPON_METEORLAUNCHER,
	DND_WEAPON_HEAVYGL,
	DND_WEAPON_FREEZER,
	DND_WEAPON_GRAVDIS,
	
	DND_WEAPON_VOIDCANNON,
	DND_WEAPON_MERCURYLAUNCHER,
	DND_WEAPON_ROTARYGRENADELAUNCHER,
	DND_WEAPON_HEAVYMISSILELAUNCHER,
	DND_WEAPON_SEDRINSTAFF,
	
	DND_WEAPON_PLASMARIFLE,
	DND_WEAPON_NUCLEARPLASMARIFLE,
	DND_WEAPON_TURELCANNON,
	DND_WEAPON_FROSTFANG,
	DND_WEAPON_FLAMETHROWER,
	DND_WEAPON_LIGHTNINGGUN,
	DND_WEAPON_REBOUNDER,
	DND_WEAPON_DARKLANCE,
	
	DND_WEAPON_RHINORIFLE,
	DND_WEAPON_NAILGUN,
	DND_WEAPON_BASILISK,
	
	DND_WEAPON_BFG6000,
	DND_WEAPON_BFG32768,
	DND_WEAPON_DEVASTATOR,
	DND_WEAPON_MFG,
	DND_WEAPON_IONCANNON,
	DND_WEAPON_THUNDERSTAFF,
	
	DND_WEAPON_GAUSSRIFLE,
	DND_WEAPON_RAILGUN,
	DND_WEAPON_DEATHRAY,
	
	DND_WEAPON_DEATHSTAFF,
	DND_WEAPON_RAZORFANG,
	DND_WEAPON_SUNSTAFF,
	DND_WEAPON_SOULREAVER,
	
	DND_WEAPON_SAWEDOFF,
	DND_WEAPON_SOULRENDER,
	DND_WEAPON_SMG,
	DND_WEAPON_HELLFORGECANNON,
	DND_WEAPON_BLOODFIENDSPINE,
	DND_WEAPON_ENFORCERRIFLE,
	DND_WEAPON_VENOM,
	DND_WEAPON_DEMONHEART,
	DND_WEAPON_DARKGLOVES,
	DND_WEAPON_HEAVYNAILGUN,
	DND_WEAPON_BERETTAS,
	DND_WEAPON_PLASMABOLTER,
	DND_WEAPON_RIPPERCANNON
};

enum {
	DND_TRAILACTOR_RUBYFLAME,
	DND_TRAILACTOR_THUNDERZAP,
	DND_TRAILACTOR_OVERLOADZAP,
	DND_TRAILACTOR_CHARON1,
	DND_TRAILACTOR_CHARON2,
	DND_TRAILACTOR_CHARON3
};

enum {
	DND_DMGID_0 = 0,
	DND_DMGID_1,
	DND_DMGID_2,
	DND_DMGID_3,
	DND_DMGID_4,
	DND_DMGID_5,
	DND_DMGID_6,
	DND_DMGID_7,
};

Actor DnD_WeaponID : DnD_Info { }

enum {
	DND_OVERHEAT_SHOCKER,
	DND_OVERHEAT_FREEZER,
	DND_OVERHEAT_NUCLEARPR,
	DND_OVERHEAT_BFG32768,
	DND_OVERHEAT_ION,
	DND_OVERHEAT_REBOUNDER,
	DND_OVERHEAT_DESOLATOR,
	DND_OVERHEAT_DEATHRAY,
	DND_OVERHEAT_VOIDCANNON
};

// powersets
enum {
	DND_WEP_POWER_GHOSTHIT
};

// wdmg flags in acs
enum {
	DND_SELF = 0,
	DND_USETARGET = 1,
	DND_ISOCCULT = 2,
	DND_ISPISTOL = 4,
	DND_ISBOOMSTICK = 8,
	DND_ISSUPER = 16,
	DND_ISSPECIALAMMO = 32,
	DND_ISARTIFACT = 64,
	DND_USEMASTER = 128,
	DND_SETMASTER = 256, // this is a hack, only use when a monster directly deals damage owned by player, AND DIES AFTER DOING SO
	DND_USETRACER = 512,
	DND_ISRIPPER = 1024, // special scaling used for rippers
	DMG_ESHIELDSCALE = 2048,
	DND_ISMELEE = 4096, // counts as melee attack
	DND_ISSLOT1 = 8192,
	DND_ISSLOT2 = 16384,
	DND_ISSLOT3 = 32768,
	DND_ISSLOT4 = 65536,
	DND_ISSLOT5 = 131072,
	DND_ISSLOT6 = 262144,
	DND_ISSLOT7 = 524288,
	DND_ISSLOT8 = 1048576,
	DND_ISSLOT9 = 2097152,
	DND_ISSPELL = 4194304,
	DND_USETARGETSMASTER = 8388608,
	/*DND_FIREDAMAGE = 16777216,
	DND_ICEDAMAGE = 33554432,
	DND_POISONDAMAGE = 67108864,
	DND_LIGHTNINGDAMAGE = 134217728,*/
	DND_ISDOT = 268435456
};

enum {
	DND_CFW_ALTFIRECHECK = 1,
	DND_CFW_HOLDFIREORRELOADCHECK = 2,
	DND_CFW_DONTCHECKEQUALITY = 4,
};

enum {
	DND_RWF_NOTAKEAMMO = 1,
};

Actor DnD_RemoveLockOn : PowerDamage {
	damagefactor "normal", 1.0
	powerup.duration 25
}