qzdoom/wadsrc/static/zscript/hexen/fighterquietus.txt

186 lines
3.2 KiB
Text
Raw Normal View History

// Fighter Weapon Piece -----------------------------------------------------
class FighterWeaponPiece : WeaponPiece
{
Default
{
Inventory.PickupSound "misc/w_pkup";
Inventory.PickupMessage "$TXT_QUIETUS_PIECE";
Inventory.ForbiddenTo "ClericPlayer", "MagePlayer";
WeaponPiece.Weapon "FWeapQuietus";
+FLOATBOB
}
}
// Fighter Weapon Piece 1 ---------------------------------------------------
class FWeaponPiece1 : FighterWeaponPiece
{
Default
{
WeaponPiece.Number 1;
}
States
{
Spawn:
WFR1 A -1 Bright;
Stop;
}
}
// Fighter Weapon Piece 2 ---------------------------------------------------
class FWeaponPiece2 : FighterWeaponPiece
{
Default
{
WeaponPiece.Number 2;
}
States
{
Spawn:
WFR2 A -1 Bright;
Stop;
}
}
// Fighter Weapon Piece 3 ---------------------------------------------------
class FWeaponPiece3 : FighterWeaponPiece
{
Default
{
WeaponPiece.Number 3;
}
States
{
Spawn:
WFR3 A -1 Bright;
Stop;
}
}
// Quietus Drop -------------------------------------------------------------
class QuietusDrop : Actor
{
States
{
Spawn:
TNT1 A 1;
TNT1 A 1 A_DropWeaponPieces("FWeaponPiece1", "FWeaponPiece2", "FWeaponPiece3");
Stop;
}
}
// The Fighter's Sword (Quietus) --------------------------------------------
class FWeapQuietus : FighterWeapon
{
Default
{
Health 3;
Weapon.SelectionOrder 2900;
+WEAPON.PRIMARY_USES_BOTH;
+Inventory.NoAttenPickupSound
Weapon.AmmoUse1 14;
Weapon.AmmoUse2 14;
Weapon.AmmoGive1 20;
Weapon.AmmoGive2 20;
Weapon.KickBack 150;
Weapon.YAdjust 10;
Weapon.AmmoType1 "Mana1";
Weapon.AmmoType2 "Mana2";
Inventory.PickupMessage "$TXT_WEAPON_F4";
Inventory.PickupSound "WeaponBuild";
Tag "$TAG_FWEAPQUIETUS";
}
action native void A_FSwordAttack();
States
{
Spawn:
TNT1 A -1;
Stop;
Select:
FSRD A 1 Bright A_Raise;
Loop;
Deselect:
FSRD A 1 Bright A_Lower;
Loop;
Ready:
FSRD AAAABBBBCCCC 1 Bright A_WeaponReady;
Loop;
Fire:
FSRD DE 3 Bright Offset (5, 36);
FSRD F 2 Bright Offset (5, 36);
FSRD G 3 Bright Offset (5, 36) A_FSwordAttack;
FSRD H 2 Bright Offset (5, 36);
FSRD I 2 Bright Offset (5, 36);
FSRD I 10 Bright Offset (5, 150);
FSRD A 1 Bright Offset (5, 60);
FSRD B 1 Bright Offset (5, 55);
FSRD C 1 Bright Offset (5, 50);
FSRD A 1 Bright Offset (5, 45);
FSRD B 1 Bright Offset (5, 40);
Goto Ready;
}
}
// Fighter Sword Missile ----------------------------------------------------
class FSwordMissile : Actor native
{
Default
{
Speed 30;
Radius 16;
Height 8;
Damage 8;
Projectile;
+EXTREMEDEATH
RenderStyle "Add";
DeathSound "FighterSwordExplode";
Obituary "$OB_MPFWEAPQUIETUS";
}
native void A_FSwordFlames();
States
{
Spawn:
FSFX ABC 3 Bright;
Loop;
Death:
FSFX D 4 Bright;
FSFX E 3 Bright A_FSwordFlames;
FSFX F 4 Bright A_Explode (64, 128, 0);
FSFX G 3 Bright;
FSFX H 4 Bright;
FSFX I 3 Bright;
FSFX J 4 Bright;
FSFX KLM 3 Bright;
Stop;
}
}
// Fighter Sword Flame ------------------------------------------------------
class FSwordFlame : Actor
{
Default
{
+NOBLOCKMAP +NOGRAVITY
RenderStyle "Translucent";
Alpha 0.6;
}
States
{
Spawn:
FSFX NOPQRSTUVW 3 Bright;
Stop;
}
}