gzdoom/wadsrc/static/zscript/hexen/clericflame.txt

212 lines
3.4 KiB
Plaintext

// The Cleric's Flame Strike ------------------------------------------------
class CWeapFlame : ClericWeapon
{
Default
{
+NOGRAVITY
Weapon.SelectionOrder 1000;
Weapon.AmmoUse 4;
Weapon.AmmoGive 25;
Weapon.KickBack 150;
Weapon.YAdjust 10;
Weapon.AmmoType1 "Mana2";
Inventory.PickupMessage "$TXT_WEAPON_C3";
Tag "$TAG_CWEAPFLAME";
}
native void A_CFlameAttack();
States
{
Spawn:
WCFM ABCDEFGH 4 Bright;
Loop;
Select:
CFLM A 1 A_Raise;
Loop;
Deselect:
CFLM A 1 A_Lower;
Loop;
Ready:
CFLM AAAABBBBCCCC 1 A_WeaponReady;
Loop;
Fire:
CFLM A 2 Offset (0, 40);
CFLM D 2 Offset (0, 50);
CFLM D 2 Offset (0, 36);
CFLM E 4 Bright;
CFLM F 4 Bright A_CFlameAttack;
CFLM E 4 Bright;
CFLM G 2 Offset (0, 40);
CFLM G 2;
Goto Ready;
}
}
// Floor Flame --------------------------------------------------------------
class CFlameFloor : Actor
{
Default
{
+NOBLOCKMAP +NOGRAVITY
RenderStyle "Add";
}
States
{
Spawn:
CFFX N 5 Bright;
CFFX O 4 Bright;
CFFX P 3 Bright;
Stop;
}
}
// Flame Puff ---------------------------------------------------------------
class FlamePuff : Actor
{
Default
{
Radius 1;
Height 1;
+NOBLOCKMAP +NOGRAVITY
RenderStyle "Add";;
SeeSound "ClericFlameExplode";
AttackSound "ClericFlameExplode";
}
States
{
Spawn:
CFFX ABC 3 Bright;
CFFX D 4 Bright;
CFFX E 3 Bright;
CFFX F 4 Bright;
CFFX G 3 Bright;
CFFX H 4 Bright;
CFFX I 3 Bright;
CFFX J 4 Bright;
CFFX K 3 Bright;
CFFX L 4 Bright;
CFFX M 3 Bright;
Stop;
}
}
// Flame Puff 2 -------------------------------------------------------------
class FlamePuff2 : FlamePuff
{
States
{
Spawn:
CFFX ABC 3 Bright;
CFFX D 4 Bright;
CFFX E 3 Bright;
CFFX F 4 Bright;
CFFX G 3 Bright;
CFFX H 4 Bright;
CFFX IC 3 Bright;
CFFX D 4 Bright;
CFFX E 3 Bright;
CFFX F 4 Bright;
CFFX G 3 Bright;
CFFX H 4 Bright;
CFFX I 3 Bright;
CFFX J 4 Bright;
CFFX K 3 Bright;
CFFX L 4 Bright;
CFFX M 3 Bright;
Stop;
}
}
// Circle Flame -------------------------------------------------------------
class CircleFlame : Actor
{
Default
{
Radius 6;
Damage 2;
DamageType "Fire";
Projectile;
-ACTIVATEIMPACT
-ACTIVATEPCROSS
RenderStyle "Add";
DeathSound "ClericFlameCircle";
Obituary "$OB_MPCWEAPFLAME";
}
native void A_CFlameRotate();
States
{
Spawn:
CFCF A 4 Bright;
CFCF B 2 Bright A_CFlameRotate;
CFCF C 2 Bright;
CFCF D 1 Bright;
CFCF E 2 Bright;
CFCF F 2 Bright A_CFlameRotate;
CFCF G 1 Bright;
CFCF HI 2 Bright;
CFCF J 1 Bright A_CFlameRotate;
CFCF K 2 Bright;
CFCF LM 3 Bright;
CFCF N 2 Bright A_CFlameRotate;
CFCF O 3 Bright;
CFCF P 2 Bright;
Stop;
Death:
CFCF QR 3 Bright;
CFCF S 3 Bright A_Explode(20, 20, 0);
CFCF TUVWXYZ 3 Bright;
Stop;
}
}
// Flame Missile ------------------------------------------------------------
class CFlameMissile : FastProjectile native
{
Default
{
Speed 200;
Radius 14;
Height 8;
Damage 8;
DamageType "Fire";
+INVISIBLE
RenderStyle "Add";
Obituary "$OB_MPCWEAPFLAME";
}
native void A_CFlamePuff();
native void A_CFlameMissile();
States
{
Spawn:
CFFX A 4 Bright;
CFFX A 1 A_CFlamePuff;
Goto Death + 1;
Death:
CFFX A 1 Bright A_CFlameMissile;
CFFX ABC 3 Bright;
CFFX D 4 Bright;
CFFX E 3 Bright;
CFFX F 4 Bright;
CFFX G 3 Bright;
CFFX H 4 Bright;
CFFX I 3 Bright;
CFFX J 4 Bright;
CFFX K 3 Bright;
CFFX L 4 Bright;
CFFX M 3 Bright;
Stop;
}
}