gzdoom/wadsrc/static/actors/doom/doomweapons.txt
2016-03-01 09:47:10 -06:00

574 lines
9 KiB
Text

// --------------------------------------------------------------------------
//
// Doom weapon base class
//
// --------------------------------------------------------------------------
ACTOR DoomWeapon : Weapon
{
Weapon.Kickback 100
}
// --------------------------------------------------------------------------
//
// Fist
//
// --------------------------------------------------------------------------
ACTOR Fist : Weapon
{
Weapon.SelectionOrder 3700
Weapon.Kickback 100
Obituary "$OB_MPFIST"
Tag "$TAG_FIST"
+WEAPON.WIMPY_WEAPON
+WEAPON.MELEEWEAPON
States
{
Ready:
PUNG A 1 A_WeaponReady
Loop
Deselect:
PUNG A 1 A_Lower
Loop
Select:
PUNG A 1 A_Raise
Loop
Fire:
PUNG B 4
PUNG C 4 A_Punch
PUNG D 5
PUNG C 4
PUNG B 5 A_ReFire
Goto Ready
}
}
// --------------------------------------------------------------------------
//
// Pistol
//
// --------------------------------------------------------------------------
ACTOR Pistol : DoomWeapon
{
Weapon.SelectionOrder 1900
Weapon.AmmoUse 1
Weapon.AmmoGive 20
Weapon.AmmoType "Clip"
Obituary "$OB_MPPISTOL"
+WEAPON.WIMPY_WEAPON
Inventory.Pickupmessage "$PICKUP_PISTOL_DROPPED"
Tag "$TAG_PISTOL"
States
{
Ready:
PISG A 1 A_WeaponReady
Loop
Deselect:
PISG A 1 A_Lower
Loop
Select:
PISG A 1 A_Raise
Loop
Fire:
PISG A 4
PISG B 6 A_FirePistol
PISG C 4
PISG B 5 A_ReFire
Goto Ready
Flash:
PISF A 7 Bright A_Light1
Goto LightDone
PISF A 7 Bright A_Light1
Goto LightDone
Spawn:
PIST A -1
Stop
}
}
// --------------------------------------------------------------------------
//
// Chainsaw
//
// --------------------------------------------------------------------------
ACTOR Chainsaw : Weapon
{
Weapon.Kickback 0
Weapon.SelectionOrder 2200
Weapon.UpSound "weapons/sawup"
Weapon.ReadySound "weapons/sawidle"
Inventory.PickupMessage "$GOTCHAINSAW"
Obituary "$OB_MPCHAINSAW"
Tag "$TAG_CHAINSAW"
+WEAPON.MELEEWEAPON
States
{
Ready:
SAWG CD 4 A_WeaponReady
Loop
Deselect:
SAWG C 1 A_Lower
Loop
Select:
SAWG C 1 A_Raise
Loop
Fire:
SAWG AB 4 A_Saw
SAWG B 0 A_ReFire
Goto Ready
Spawn:
CSAW A -1
Stop
}
}
// --------------------------------------------------------------------------
//
// Shotgun
//
// --------------------------------------------------------------------------
ACTOR Shotgun : DoomWeapon
{
Weapon.SelectionOrder 1300
Weapon.AmmoUse 1
Weapon.AmmoGive 8
Weapon.AmmoType "Shell"
Inventory.PickupMessage "$GOTSHOTGUN"
Obituary "$OB_MPSHOTGUN"
Tag "$TAG_SHOTGUN"
States
{
Ready:
SHTG A 1 A_WeaponReady
Loop
Deselect:
SHTG A 1 A_Lower
Loop
Select:
SHTG A 1 A_Raise
Loop
Fire:
SHTG A 3
SHTG A 7 A_FireShotgun
SHTG BC 5
SHTG D 4
SHTG CB 5
SHTG A 3
SHTG A 7 A_ReFire
Goto Ready
Flash:
SHTF A 4 Bright A_Light1
SHTF B 3 Bright A_Light2
Goto LightDone
Spawn:
SHOT A -1
Stop
}
}
// --------------------------------------------------------------------------
//
// Shotgun
//
// --------------------------------------------------------------------------
ACTOR SuperShotgun : DoomWeapon
{
Weapon.SelectionOrder 400
Weapon.AmmoUse 2
Weapon.AmmoGive 8
Weapon.AmmoType "Shell"
Inventory.PickupMessage "$GOTSHOTGUN2"
Obituary "$OB_MPSSHOTGUN"
Tag "$TAG_SUPERSHOTGUN"
States
{
Ready:
SHT2 A 1 A_WeaponReady
Loop
Deselect:
SHT2 A 1 A_Lower
Loop
Select:
SHT2 A 1 A_Raise
Loop
Fire:
SHT2 A 3
SHT2 A 7 A_FireShotgun2
SHT2 B 7
SHT2 C 7 A_CheckReload
SHT2 D 7 A_OpenShotgun2
SHT2 E 7
SHT2 F 7 A_LoadShotgun2
SHT2 G 6
SHT2 H 6 A_CloseShotgun2
SHT2 A 5 A_ReFire
Goto Ready
// unused states
SHT2 B 7
SHT2 A 3
Goto Deselect
Flash:
SHT2 I 4 Bright A_Light1
SHT2 J 3 Bright A_Light2
Goto LightDone
Spawn:
SGN2 A -1
Stop
}
}
// --------------------------------------------------------------------------
//
// Chaingun
//
// --------------------------------------------------------------------------
ACTOR Chaingun : DoomWeapon
{
Weapon.SelectionOrder 700
Weapon.AmmoUse 1
Weapon.AmmoGive 20
Weapon.AmmoType "Clip"
Inventory.PickupMessage "$GOTCHAINGUN"
Obituary "$OB_MPCHAINGUN"
Tag "$TAG_CHAINGUN"
States
{
Ready:
CHGG A 1 A_WeaponReady
Loop
Deselect:
CHGG A 1 A_Lower
Loop
Select:
CHGG A 1 A_Raise
Loop
Fire:
CHGG AB 4 A_FireCGun
CHGG B 0 A_ReFire
Goto Ready
Flash:
CHGF A 5 Bright A_Light1
Goto LightDone
CHGF B 5 Bright A_Light2
Goto LightDone
Spawn:
MGUN A -1
Stop
}
}
// --------------------------------------------------------------------------
//
// Rocket launcher
//
// --------------------------------------------------------------------------
ACTOR RocketLauncher : DoomWeapon
{
Weapon.SelectionOrder 2500
Weapon.AmmoUse 1
Weapon.AmmoGive 2
Weapon.AmmoType "RocketAmmo"
+WEAPON.NOAUTOFIRE
Inventory.PickupMessage "$GOTLAUNCHER"
Tag "$TAG_ROCKETLAUNCHER"
States
{
Ready:
MISG A 1 A_WeaponReady
Loop
Deselect:
MISG A 1 A_Lower
Loop
Select:
MISG A 1 A_Raise
Loop
Fire:
MISG B 8 A_GunFlash
MISG B 12 A_FireMissile
MISG B 0 A_ReFire
Goto Ready
Flash:
MISF A 3 Bright A_Light1
MISF B 4 Bright
MISF CD 4 Bright A_Light2
Goto LightDone
Spawn:
LAUN A -1
Stop
}
}
ACTOR Rocket
{
Radius 11
Height 8
Speed 20
Damage 20
Projectile
+RANDOMIZE
+DEHEXPLOSION
+ROCKETTRAIL
SeeSound "weapons/rocklf"
DeathSound "weapons/rocklx"
Obituary "$OB_MPROCKET"
States
{
Spawn:
MISL A 1 Bright
Loop
Death:
MISL B 8 Bright A_Explode
MISL C 6 Bright
MISL D 4 Bright
Stop
}
}
// --------------------------------------------------------------------------
//
// Grenade -- Taken and adapted from Skulltag, with MBF stuff added to it
//
// --------------------------------------------------------------------------
ACTOR Grenade
{
Radius 8
Height 8
Speed 25
Damage 20
Projectile
-NOGRAVITY
+RANDOMIZE
+DEHEXPLOSION
+GRENADETRAIL
BounceType "Doom"
Gravity 0.25
SeeSound "weapons/grenlf"
DeathSound "weapons/grenlx"
BounceSound "weapons/grbnce"
Obituary "$OB_GRENADE"
DamageType Grenade
States
{
Spawn:
SGRN A 1 Bright
Loop
Death:
MISL B 8 Bright A_Explode
MISL C 6 Bright
MISL D 4 Bright
Stop
Grenade:
MISL A 1000 A_Die
Wait
Detonate:
MISL B 4 A_Scream
MISL C 6 A_Detonate
MISL D 10
Stop
Mushroom:
MISL B 8 A_Mushroom
Goto Death+1
}
}
// --------------------------------------------------------------------------
//
// Plasma rifle
//
// --------------------------------------------------------------------------
ACTOR PlasmaRifle : DoomWeapon
{
Weapon.SelectionOrder 100
Weapon.AmmoUse 1
Weapon.AmmoGive 40
Weapon.AmmoType "Cell"
Inventory.PickupMessage "$GOTPLASMA"
Tag "$TAG_PLASMARIFLE"
States
{
Ready:
PLSG A 1 A_WeaponReady
Loop
Deselect:
PLSG A 1 A_Lower
Loop
Select:
PLSG A 1 A_Raise
Loop
Fire:
PLSG A 3 A_FirePlasma
PLSG B 20 A_ReFire
Goto Ready
Flash:
PLSF A 4 Bright A_Light1
Goto LightDone
PLSF B 4 Bright A_Light1
Goto LightDone
Spawn:
PLAS A -1
Stop
}
}
ACTOR PlasmaBall
{
Radius 13
Height 8
Speed 25
Damage 5
Projectile
+RANDOMIZE
RenderStyle Add
Alpha 0.75
SeeSound "weapons/plasmaf"
DeathSound "weapons/plasmax"
Obituary "$OB_MPPLASMARIFLE"
States
{
Spawn:
PLSS AB 6 Bright
Loop
Death:
PLSE ABCDE 4 Bright
Stop
}
}
// --------------------------------------------------------------------------
//
// BFG 2704
//
// --------------------------------------------------------------------------
ACTOR PlasmaBall1 : PlasmaBall
{
Damage 4
BounceType "Classic"
BounceFactor 1.0
Obituary "$OB_MPBFG_MBF"
States
{
Spawn:
PLS1 AB 6 Bright
Loop
Death:
PLS1 CDEFG 4 Bright
Stop
}
}
ACTOR PlasmaBall2 : PlasmaBall1
{
States
{
Spawn:
PLS2 AB 6 Bright
Loop
Death:
PLS2 CDE 4 Bright
Stop
}
}
// --------------------------------------------------------------------------
//
// BFG 9000
//
// --------------------------------------------------------------------------
ACTOR BFG9000 : DoomWeapon
{
Height 20
Weapon.SelectionOrder 2800
Weapon.AmmoUse 40
Weapon.AmmoGive 40
Weapon.AmmoType "Cell"
+WEAPON.NOAUTOFIRE
Inventory.PickupMessage "$GOTBFG9000"
Tag "$TAG_BFG9000"
States
{
Ready:
BFGG A 1 A_WeaponReady
Loop
Deselect:
BFGG A 1 A_Lower
Loop
Select:
BFGG A 1 A_Raise
Loop
Fire:
BFGG A 20 A_BFGsound
BFGG B 10 A_GunFlash
BFGG B 10 A_FireBFG
BFGG B 20 A_ReFire
Goto Ready
Flash:
BFGF A 11 Bright A_Light1
BFGF B 6 Bright A_Light2
Goto LightDone
Spawn:
BFUG A -1
Stop
OldFire:
BFGG A 10 A_BFGsound
BFGG BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_FireOldBFG
BFGG B 0 A_Light0
BFGG B 20 A_ReFire
Goto Ready
}
}
ACTOR BFGBall
{
Radius 13
Height 8
Speed 25
Damage 100
Projectile
+RANDOMIZE
RenderStyle Add
Alpha 0.75
DeathSound "weapons/bfgx"
Obituary "$OB_MPBFG_BOOM"
States
{
Spawn:
BFS1 AB 4 Bright
Loop
Death:
BFE1 AB 8 Bright
BFE1 C 8 Bright A_BFGSpray
BFE1 DEF 8 Bright
Stop
}
}
ACTOR BFGExtra
{
+NOBLOCKMAP
+NOGRAVITY
RenderStyle Add
Alpha 0.75
DamageType "BFGSplash"
States
{
Spawn:
BFE2 ABCD 8 Bright
Stop
}
}