qzdoom-gpl/wadsrc/static/actors/hexen/magestaff.txt
Randy Heit 62ffe7e4e2 Add NOGRAVITY to every Raven actor with FLOATBOB
- Fixed: Heretic and Hexen completely skip all normal Z processing on
  mobjs with FLOATBOB set. To emulate that, we need to add NOGRAVITY to
  everything with that flag set.
2013-11-19 19:42:13 -06:00

150 lines
2.8 KiB
Text

// Mage Weapon Piece --------------------------------------------------------
ACTOR MageWeaponPiece : WeaponPiece
{
Inventory.PickupSound "misc/w_pkup"
Inventory.PickupMessage "$TXT_BLOODSCOURGE_PIECE"
Inventory.ForbiddenTo FighterPlayer, ClericPlayer
WeaponPiece.Weapon MWeapBloodscourge
+FLOATBOB
+NOGRAVITY
}
// Mage Weapon Piece 1 ------------------------------------------------------
ACTOR MWeaponPiece1 : MageWeaponPiece 21
{
Game Hexen
SpawnID 37
WeaponPiece.Number 1
States
{
Spawn:
WMS1 A -1 Bright
Stop
}
}
// Mage Weapon Piece 2 ------------------------------------------------------
ACTOR MWeaponPiece2 : MageWeaponPiece 22
{
Game Hexen
SpawnID 38
WeaponPiece.Number 2
States
{
Spawn:
WMS2 A -1 Bright
Stop
}
}
// Mage Weapon Piece 3 ------------------------------------------------------
ACTOR MWeaponPiece3 : MageWeaponPiece 23
{
Game Hexen
SpawnID 39
WeaponPiece.Number 3
States
{
Spawn:
WMS3 A -1 Bright
Stop
}
}
// Bloodscourge Drop --------------------------------------------------------
ACTOR BloodscourgeDrop
{
States
{
Spawn:
TNT1 A 1
TNT1 A 1 A_DropWeaponPieces("MWeaponPiece1", "MWeaponPiece2", "MWeaponPiece3")
Stop
}
}
// The Mages's Staff (Bloodscourge) -----------------------------------------
ACTOR MWeapBloodscourge : MageWeapon native
{
Game Hexen
Health 3
Weapon.SelectionOrder 3100
Weapon.AmmoUse1 15
Weapon.AmmoUse2 15
Weapon.AmmoGive1 20
Weapon.AmmoGive2 20
Weapon.KickBack 150
Weapon.YAdjust 20
Weapon.AmmoType1 "Mana1"
Weapon.AmmoType2 "Mana2"
+WEAPON.PRIMARY_USES_BOTH
+Inventory.NoAttenPickupSound
Inventory.PickupMessage "$TXT_WEAPON_M4"
Inventory.PickupSound "WeaponBuild"
Tag "$TAG_MWEAPBLOODSCOURGE"
action native A_MStaffAttack();
action native A_MStaffPalette();
States
{
Spawn:
TNT1 A -1
Stop
Select:
MSTF A 1 A_Raise
Loop
Deselect:
MSTF A 1 A_Lower
Loop
Ready:
MSTF AAAAAABBBBBBCCCCCCDDDDDDEEEEEEFFFFF 1 A_WeaponReady
Loop
Fire:
MSTF G 4 Offset (0, 40)
MSTF H 4 Bright Offset (0, 48) A_MStaffAttack
MSTF H 2 Bright Offset (0, 48) A_MStaffPalette
MSTF II 2 Offset (0, 48) A_MStaffPalette
MSTF I 1 Offset (0, 40)
MSTF J 5 Offset (0, 36)
Goto Ready
}
}
// Mage Staff FX2 (Bloodscourge) --------------------------------------------
ACTOR MageStaffFX2 native
{
Speed 17
Height 8
Damage 4
DamageType "Fire"
Projectile
+SEEKERMISSILE
+SCREENSEEKER
+EXTREMEDEATH
DeathSound "MageStaffExplode"
Obituary "$OB_MPMWEAPBLOODSCOURGE"
action native A_MStaffTrack();
States
{
Spawn:
MSP2 ABCD 2 Bright A_MStaffTrack
Loop
Death:
MSP2 E 4 Bright A_SetTranslucent(1,1)
MSP2 F 5 Bright A_Explode (80, 192, 0)
MSP2 GH 5 Bright
MSP2 I 4 Bright
Stop
}
}