gzdoom-gles/wadsrc/static/zscript/hexen/magecone.txt
Christoph Oelckers 371712c53a - turned everything I could into non-action functions.
- fixed emission of the self pointer in FxVMFunctionCall. I did not realize that the self expression only sets up a register for the value, not pushing it onto the stack.
2016-10-22 17:49:08 +02:00

98 lines
1.4 KiB
Text

// The Mage's Frost Cone ----------------------------------------------------
class MWeapFrost : MageWeapon
{
Default
{
+BLOODSPLATTER
Weapon.SelectionOrder 1700;
Weapon.AmmoUse1 3;
Weapon.AmmoGive1 25;
Weapon.KickBack 150;
Weapon.YAdjust 20;
Weapon.AmmoType1 "Mana1";
Inventory.PickupMessage "$TXT_WEAPON_M2";
Obituary "$OB_MPMWEAPFROST";
Tag "$TAG_MWEAPFROST";
}
native void A_FireConePL1();
States
{
Spawn:
WMCS ABC 8 Bright;
Loop;
Select:
CONE A 1 A_Raise;
Loop;
Deselect:
CONE A 1 A_Lower;
Loop;
Ready:
CONE A 1 A_WeaponReady;
Loop;
Fire:
CONE B 3;
CONE C 4;
Hold:
CONE D 3;
CONE E 5;
CONE F 3 A_FireConePL1;
CONE G 3;
CONE A 9;
CONE A 10 A_ReFire;
Goto Ready;
}
}
// Frost Missile ------------------------------------------------------------
class FrostMissile : Actor native
{
Default
{
Speed 25;
Radius 13;
Height 8;
Damage 1;
DamageType "Ice";
Projectile;
DeathSound "MageShardsExplode";
Obituary "$OB_MPMWEAPFROST";
}
native void A_ShedShard();
States
{
Spawn:
SHRD A 2 Bright;
SHRD A 3 Bright A_ShedShard;
SHRD B 3 Bright;
SHRD C 3 Bright;
Loop;
Death:
SHEX ABCDE 5 Bright;
Stop;
}
}
// Ice Shard ----------------------------------------------------------------
class IceShard : FrostMissile
{
Default
{
DamageType "Ice";
-ACTIVATEIMPACT
-ACTIVATEPCROSS
}
States
{
Spawn:
SHRD ABC 3 Bright;
Loop;
}
}