mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-24 21:11:39 +00:00
523cf6acb2
* BUMPSPECIAL flag: actors with this flag will run their special if collided on by a player * WEAPON.NOAUTOAIM flag, though it is restricted to attacks that spawn a missile (it will not affect autoaim settings for a hitscan or railgun, and that's deliberate) * A_FireSTGrenade codepointer, extended to be parameterizable * The grenade (as the default actor for A_FireSTGrenade) * Protective armors à la RedArmor: they work with a DamageFactor; for example to recreate the RedArmor from Skulltag, copy its code from skulltag.pk3 but remove the "native" keyword and add DamageFactor "Fire" 0.1 to its properties. SVN r1661 (trunk)
536 lines
8.8 KiB
Text
536 lines
8.8 KiB
Text
// --------------------------------------------------------------------------
|
|
//
|
|
// Doom weapon base class
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
ACTOR DoomWeapon : Weapon
|
|
{
|
|
Weapon.Kickback 100
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
//
|
|
// Fist
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
ACTOR Fist : Weapon
|
|
{
|
|
Game Doom
|
|
Weapon.SelectionOrder 3700
|
|
Weapon.Kickback 100
|
|
Obituary "$OB_MPFIST"
|
|
+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
|
|
}
|
|
}
|
|
|
|
|
|
// --------------------------------------------------------------------------
|
|
//
|
|
// Fist
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
ACTOR Pistol : DoomWeapon 5010
|
|
{
|
|
Game Doom
|
|
Weapon.SelectionOrder 1900
|
|
Weapon.AmmoUse 1
|
|
Weapon.AmmoGive 20
|
|
Weapon.AmmoType "Clip"
|
|
Obituary "$OB_MPPISTOL"
|
|
+WEAPON.WIMPY_WEAPON
|
|
Inventory.Pickupmessage "$PICKUP_PISTOL_DROPPED"
|
|
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 2005
|
|
{
|
|
Game Doom
|
|
SpawnID 32
|
|
Weapon.Kickback 0
|
|
Weapon.SelectionOrder 2200
|
|
Weapon.UpSound "weapons/sawup"
|
|
Weapon.ReadySound "weapons/sawidle"
|
|
Inventory.PickupMessage "$GOTCHAINSAW"
|
|
Obituary "$OB_MPCHAINSAW"
|
|
+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 2001
|
|
{
|
|
Game Doom
|
|
SpawnID 27
|
|
Weapon.SelectionOrder 1300
|
|
Weapon.AmmoUse 1
|
|
Weapon.AmmoGive 8
|
|
Weapon.AmmoType "Shell"
|
|
Inventory.PickupMessage "$GOTSHOTGUN"
|
|
Obituary "$OB_MPSHOTGUN"
|
|
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 82
|
|
{
|
|
Game Doom
|
|
SpawnID 33
|
|
Weapon.SelectionOrder 400
|
|
Weapon.AmmoUse 2
|
|
Weapon.AmmoGive 8
|
|
Weapon.AmmoType "Shell"
|
|
Inventory.PickupMessage "$GOTSHOTGUN2"
|
|
Obituary "$OB_MPSSHOTGUN"
|
|
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 2002
|
|
{
|
|
Game Doom
|
|
SpawnID 28
|
|
Weapon.SelectionOrder 700
|
|
Weapon.AmmoUse 1
|
|
Weapon.AmmoGive 20
|
|
Weapon.AmmoType "Clip"
|
|
Inventory.PickupMessage "$GOTCHAINGUN"
|
|
Obituary "$OB_MPCHAINGUN"
|
|
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 2003
|
|
{
|
|
Game Doom
|
|
SpawnID 29
|
|
Weapon.SelectionOrder 2500
|
|
Weapon.AmmoUse 1
|
|
Weapon.AmmoGive 2
|
|
Weapon.AmmoType "RocketAmmo"
|
|
+WEAPON.NOAUTOFIRE
|
|
Inventory.PickupMessage "$GOTLAUNCHER"
|
|
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
|
|
{
|
|
Game Doom
|
|
SpawnID 127
|
|
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
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
ACTOR Grenade
|
|
{
|
|
SpawnID 216
|
|
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
|
|
}
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
//
|
|
// Plasma rifle
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
ACTOR PlasmaRifle : DoomWeapon 2004
|
|
{
|
|
Game Doom
|
|
SpawnID 30
|
|
Weapon.SelectionOrder 100
|
|
Weapon.AmmoUse 1
|
|
Weapon.AmmoGive 40
|
|
Weapon.AmmoType "Cell"
|
|
Inventory.PickupMessage "$GOTPLASMA"
|
|
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
|
|
{
|
|
Game Doom
|
|
SpawnID 51
|
|
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 9000
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
ACTOR BFG9000 : DoomWeapon 2006
|
|
{
|
|
Game Doom
|
|
Height 20
|
|
SpawnID 31
|
|
Weapon.SelectionOrder 2800
|
|
Weapon.AmmoUse 40
|
|
Weapon.AmmoGive 40
|
|
Weapon.AmmoType "Cell"
|
|
+WEAPON.NOAUTOFIRE
|
|
Inventory.PickupMessage "$GOTBFG9000"
|
|
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
|
|
}
|
|
}
|
|
|
|
|
|
ACTOR BFGBall
|
|
{
|
|
Game Doom
|
|
SpawnID 128
|
|
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
|
|
States
|
|
{
|
|
Spawn:
|
|
BFE2 ABCD 8 Bright
|
|
Stop
|
|
}
|
|
}
|
|
|