|
Note: Wait! Stop! You do not need to copy this actor's code into your project! Here's why:
- This actor is already defined in GZDoom, there's no reason to define it again.
- In fact, trying to define an actor with the same name will cause an error (because it already exists).
- If you want to make your own version of this actor, use inheritance.
- Definitions for existing actors are put on the wiki for reference purpose only.
|
Serpent staff
|
Actor type
|
Weapon
|
Game
|
(Hexen)
|
DoomEd Number
|
10
|
Class Name
|
CWeapStaff
|
Spawn ID
|
32
|
Identifier
|
T_CLERICSTAFF
|
Classes: ClericWeapon→CWeapStaff
The Cleric's second weapon, the Serpent Staff uses blue mana to fire a pair of green poisonous projectiles. When used at close proximity to the target, the staff, instead, drains the target's health and heals the player with the amount of damage dealt.
ACTOR CWeapStaff : ClericWeapon
{
Weapon.SelectionOrder 1600
Weapon.AmmoUse1 1
Weapon.AmmoGive1 25
Weapon.KickBack 150
Weapon.YAdjust 10
Weapon.AmmoType1 "Mana1"
Inventory.PickupMessage "$TXT_WEAPON_C2"
Obituary "$OB_MPCWEAPSTAFFM"
Tag "$TAG_CWEAPSTAFF"
action native A_CStaffInitBlink();
action native A_CStaffCheckBlink();
action native A_CStaffCheck();
action native A_CStaffAttack();
States
{
Spawn:
WCSS A -1
Stop
Select:
CSSF C 1 A_Raise
Loop
Deselect:
CSSF B 3
CSSF C 4
CSSF C 1 A_Lower
Wait
Ready:
CSSF C 4
CSSF B 3 A_CStaffInitBlink
CSSF AAAAAAA 1 A_WeaponReady
CSSF A 1 A_CStaffCheckBlink
Goto Ready+2
Fire:
CSSF A 1 Offset(0, 45) A_CStaffCheck
CSSF J 1 Offset(0, 50) A_CStaffAttack
CSSF J 2 Offset(0, 50)
CSSF J 2 Offset(0, 45)
CSSF A 2 Offset(0, 40)
CSSF A 2 Offset(0, 36)
Goto Ready+2
Blink:
CSSF BBBCCCCCBBB 1 A_WeaponReady
Goto Ready+2
Drain:
CSSF K 10 Offset(0, 36)
Goto Ready+2
}
}