actor RiotMissileWep_NormalBar : NormalBar{args 219,227}
actor RiotMissileWep : BaseMM8BDMWep
{
Weapon.AmmoUse 3
Weapon.AmmoGive 28
Weapon.SlotNumber 5
Inventory.Pickupmessage "$PU_RIOTMISSILE"
Obituary "$OB_RIOTMISSILE"
Tag "$TAG_RIOTMISSILE"
weapon.ammotype "RiotMissileAmmo"
inventory.icon "RMSSICON"
States
{
SpawnLoop:
RMSS Z 1
loop
Ready:
RMSS A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_RIOTMISSILE)
RMSS A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
RMSS A 0 
goto DeselectSwap
Select:
RMSS A 0 
goto SelectSwap
Fire:
RMSS B 0 A_JumpIfNoAmmo("NoAmmo")
RMSS B 0 A_PlaySoundEx("Weapon/RiotMissileFire","Weapon")
RMSS B 0 A_GiveInventory("RiotMissileFire_P",1)
RMS0 ABCDEF 2
RMS0 G 24
RMS0 HIJK 2
RMSS A 0 A_Refire
Goto Ready+1
NoAmmo:
RMSS A 0 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor RiotMissileAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
+INVENTORY.IGNORESKILL
}

actor RiotMissileFire_P : CustomInventory
{
    States
    {
    Pickup:
		TNT1 A 0 A_TakeInventory("RiotMissileAmmo",3,TIF_NOTAKEINFINITE)
        TNT1 A 0 A_SpawnItemEx("RiotMissileLaunch", 0, 8, 16, cos(-pitch)*2, 0, sin(-pitch)*2, 0, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
        TNT1 A 0 A_JumpIfInventory("PowerSpreadRune", 1, "PickupSpread")
        stop
    PickupSpread:
        TNT1 A 0 A_SpawnItemEx("RiotMissileLaunch", 0, 8, 16, cos(-pitch)*2, 0, sin(-pitch)*2, 15, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
        TNT1 A 0 A_SpawnItemEx("RiotMissileLaunch", 0, 8, 16, cos(-pitch)*2, 0, sin(-pitch)*2, -15, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
        stop
    }
}

actor RiotMissileLaunch : BasicProjectile
{
+THRUACTORS
PROJECTILE
Radius 0
Height 0
damage (0)
speed 0
States
{
Spawn:
TNT1 A 0
TNT1 A 2
TNT1 A 0 A_SpawnItemEx("RiotMissileBarrage", 0, 8, 16, cos(-pitch)*-3, 9, sin(-pitch)*3, 0, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
TNT1 A 0 A_SpawnItemEx("RiotMissileBarrage", 0, 8, 16, cos(-pitch)*-3, 4.5, sin(-pitch)*3, 0, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
TNT1 A 0 A_SpawnItemEx("RiotMissileBarrage", 0, 8, 16, cos(-pitch)*-3, 0, sin(-pitch)*3, 0, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
TNT1 A 0 A_SpawnItemEx("RiotMissileBarrage", 0, 8, 16, cos(-pitch)*-3, -4.5, sin(-pitch)*3, 0, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
TNT1 A 0 A_SpawnItemEx("RiotMissileBarrage", 0, 8, 16, cos(-pitch)*-3, -9, sin(-pitch)*3, 0, SXF_TRANSFERTRANSLATION|SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
stop
Death:
TNT1 A 0 
stop
}
}

actor RiotMissileBarrage : BasicProjectile
{
PROJECTILE
damagetype "RiotMissile"
Obituary "$OB_RIOTMISSILE" 
Damage (0)
Speed 20
Radius 10
Height 10
scale 2.5
translation "192:192=219:219", "198:198=227:227"
States
{
Spawn:
RMSS M 3
RMSS L 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS L 0 A_ScaleVelocity(0.8)
RMSS M 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS M 0 A_ScaleVelocity(0.8)
RMSS L 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS L 0 A_ScaleVelocity(0.8)
RMSS L 0 A_SpawnItemEx("RiotBarrageMissile",0,0,0,cos(-pitch)*15,0,sin(-pitch)*15,0,SXF_TRANSFERPITCH)
Goto Death
Crash:
RMSS L 0 A_Explode(CallACS("vile_cbm_damage",20), 64, 0)
TNT1 A 35 A_SpawnItemEx("ExplosionEffect2", 0, 0, 0, 0, 0, 0, 0, SXF_WEPFXCOLOR)
Death:
RMSS L 0
stop
}
}

actor RiotBarrageMissile : BasicProjectile
{
Radius 6
Height 7
damagetype "RiotMissile"
Obituary "$OB_RIOTMISSILE" 
damage (0)
speed 15
translation "192:192=219:219", "198:198=227:227"
States
{
Spawn:
RMSS L 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS L 0 A_ScaleVelocity(1.33)
RMSS M 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS M 0 A_ScaleVelocity(1.33)
RMSS L 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS L 0 A_ScaleVelocity(1.33)
RMSS M 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
RMSS M 0 A_ScaleVelocity(1.33)
SpawnLoop:
RMSS LM 3 A_SpawnItemEx("RiotMissileEffect", 0, 0, 0, -8)
loop
Death:
RMSS L 0 A_Stop
RMSS L 0 A_PlaySoundEx("Weapon/TriadMissileBoom", "Weapon")
RMSS L 0 A_Explode(CallACS("vile_cbm_damage",30), 64, 0)
TNT1 AAAA 0 A_SpawnItemEX("TriadExplosionSmoke",0,0,0,random(-2,2),random(-2,2),random(-2,2))
TNT1 A 35 
stop
}
}

Actor RiotMissileEffect : BasicGraphicEffect
{
PROJECTILE
+NOINTERACTION
Scale 2.0
States
{
SpawnFrame:
RMSS OPQRSTUV 2
stop
}
}
