|
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.
|
Staff
|
Actor type
|
Weapon
|
Game
|
(Heretic)
|
DoomEd Number
|
None
|
Class Name
|
Staff
|
Classes: Inventory→Weapon→HereticWeapon→Staff
→StaffPowered
Corvus's ironshod staff. Useless against ghosts.
|
Note: The ZScript definition below is for reference and may be different in the current version of GZDoom.The most up-to-date version of this code can be found on GZDoom GitHub.
|
class Staff : HereticWeapon
{
Default
{
Weapon.SelectionOrder 3800;
+THRUGHOST
+WEAPON.WIMPY_WEAPON
+WEAPON.MELEEWEAPON
Weapon.sisterweapon "StaffPowered";
Obituary "$OB_MPSTAFF";
Tag "$TAG_STAFF";
}
States
{
Ready:
STFF A 1 A_WeaponReady;
Loop;
Deselect:
STFF A 1 A_Lower;
Loop;
Select:
STFF A 1 A_Raise;
Loop;
Fire:
STFF B 6;
STFF C 8 A_StaffAttack(random[StaffAttack](5, 20), "StaffPuff");
STFF B 8 A_ReFire;
Goto Ready;
}
|
Warning: This is legacy code, kept for archival purposes only. DECORATE is deprecated in GZDoom and is completely superseded by ZScript. GZDoom internally uses the ZScript definition above.
|
ACTOR Staff : HereticWeapon
{
Weapon.SelectionOrder 3800
+THRUGHOST
+WIMPY_WEAPON
+MELEEWEAPON
Weapon.SisterWeapon "StaffPowered"
Obituary "$OB_MPSTAFF"
Tag "$TAG_STAFF"
action native A_StaffAttack(int damage, class<Actor> puff);
States
{
Ready:
STFF A 1 A_WeaponReady
Loop
Deselect:
STFF A 1 A_Lower
Loop
Select:
STFF A 1 A_Raise
Loop
Fire:
STFF B 6
STFF C 8 A_StaffAttack(random[StaffAttack](5, 20), "StaffPuff")
STFF B 8 A_ReFire
Goto Ready
}
}