actor WindStormWepU : WindStormWep replaces WindStormWep
{
States
{
Fire:
BUBB D 0 A_JumpIfNoAmmo("NoAmmo")
BUBB D 0 A_PlaySoundEx("weapon/mbuster","Weapon")
BUBB D 0 A_JumpIfInventory("WindUpgrade",2,"Fire3")
BUBB D 0 A_JumpIfInventory("WindUpgrade",1,"Fire2")
BUBB E 0 A_FireCustomMissile("WindStormStart",0,1,8,0)
BUBB EF 5
BUBB D 2
BUBB D 0 A_Refire
goto Ready+1
Fire2:
BUBB E 0 A_FireCustomMissile("WindStormStart",0,1,8,0)
BUBB EF 4
BUBB D 2
BUBB D 0 A_Refire
goto Ready+1
Hold:
BUBB D 0 A_JumpIfNoAmmo("NoAmmo")
BUBB D 0 A_PlaySoundEx("weapon/mbuster","Weapon")
BUBB E 0 A_JumpIfInventory("WindRide",1,"KeepRiding")
BUBB D 0 A_JumpIfInventory("WindUpgrade",2,"Fire3S")
BUBB D 0 A_JumpIfInventory("WindUpgrade",1,"Fire2")
Goto Fire+4
Fire3:
BUBB E 0 A_JumpIf(ACS_ExecuteWithResult(196,0)==1,"Rider")
Fire3S:
BUBB E 0 A_FireCustomMissile("WindStormStart",0,1,8,0)
BUBB EF 4
BUBB D 2
BUBB D 0 A_Refire
goto Ready+1
Rider:
BUBB EF 4
BUBB E 0 A_SetArg(0,angle)
BUBB E 0 A_GiveInventory("WindRide",1)
BUBB E 0 A_GunFlash
KeepRiding:
BUBB D 1
BUBB D 0 A_SetAngle(args[0])
BUBB D 0 A_Refire
BUBB D 0 A_TakeInventory("WindRide",999)
goto Ready+1
Flash:
TNT1 A 0 A_TakeInventory("WindStormAmmo",1)
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield1", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield1", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_SpawnItemEx("WindBlower", 0, 0, 32, momx, momy, momz+20, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_JumpIfInventory("WindRide",1,"Flash2")
stop
Flash2:
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield2", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield2", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_SpawnItemEx("WindBlower", 0, 0, 32, momx, momy, momz+20, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_JumpIfInventory("WindRide",1,"Flash3")
stop
Flash3:
TNT1 A 0 A_TakeInventory("WindStormAmmo",1)
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield3", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield3", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_SpawnItemEx("WindBlower", 0, 0, 32, momx, momy, momz+20, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_JumpIfInventory("WindRide",1,"Flash4")
stop
Flash4:
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield4", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 2 A_ChangeVelocity(20,0,momz,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("WindShield4", 0, 0, 0, momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_SpawnItemEx("WindBlower", 0, 0, 32, momx, momy, momz+20, 0, SXF_ABSOLUTEMOMENTUM, 0)
TNT1 A 0 A_JumpIfInventory("WindRide",1,"Flash")
stop
NoAmmo:
BUBB D 0 A_TakeInventory("WindRide",999)
BUBB D 1 ACS_Execute(979,0)
Goto Ready+1
}
}
actor WindUpgrade : CutterFlag {inventory.maxamount 3}
actor WindRide : Once {}
actor WindShield1
{
scale 2.5
-SOLID
+NOGRAVITY
+DONTSPLASH
+CLIENTSIDEONLY
+NOTIMEFREEZE
+NOINTERACTION
States
{
Spawn:
WIND A 1
WIND A 1
stop
}
}
actor WindShield2 : WindShield1
{
States
{
Spawn:
WIND B 1
WIND B 1
stop
}
}
actor WindShield3 : WindShield1
{
States
{
Spawn:
WIND C 1
WIND C 1
stop
}
}
actor WindShield4 : WindShield1
{
States
{
Spawn:
WIND D 1
WIND D 1
stop
}
}