actor RainbowGalaxyWep_NormalBar : NormalBar { args 59, 62 }

actor RainbowGalaxyWep : BaseMM8BDMWep
{//SerendipityGunner
Weapon.AmmoUse 1
Weapon.AmmoGive 56
Weapon.SlotNumber 3
Inventory.Pickupmessage "$PU_RAINBOWGALAXY"
Obituary "$OB_RAINBOWGALAXY"
Tag "$TAG_RAINBOWGALAXY"//Rainbow Gunner
weapon.ammotype "RainbowGalaxyAmmo"
inventory.icon "XTR0WI_Q"
States
{
SpawnLoop:
XWI0 Q -1
loop

Deselect:
BHUD A 0
goto DeselectSwap
Select:
BHUD A 0
goto SelectSwap

Ready:
BHUD A 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_RAINBOWGALAXY)
BHUD A 1 A_WeaponReady
wait

Fire:
BHUD C 0 A_JumpIfNoAmmo("NoAmmo")
BHUD C 0 A_GiveInventory("RainbowGalaxy_Fire_P")
BHUD CBA 2
BHUD A 0 A_Refire
Goto Ready+1
NoAmmo:
BHUD A 1 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor RainbowGalaxyAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 56
+INVENTORY.IGNORESKILL
}

actor RainbowGalaxy_Fire_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_PlaySoundEx("weapon/blackholebombC","Weapon")
TNT1 A 0 A_Jump(256,1,2,3,4,5,6,7,8)
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew1",random(-4,4),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew2",random(-3,3),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew3",random(-4,4),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew4",random(-2,2),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew5",random(-4,4),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew6",random(-4,4),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew7",random(-3,3),1,8,0)
stop
TNT1 A 0 A_FireCustomMissile("RainbowGalaxyPew0",random(-2,2),1,8,0)
stop
}
}

actor RainbowGalaxyPew0 : ProjSpawnFuncActor
{
PROJECTILE
damagetype "RainbowGalaxy"
Obituary "$OB_RAINBOWGALAXY"
+FORCEXYBILLBOARD
+BRIGHT
Damage (130)
radius 10
height 15
Speed 13
scale 1.25
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_Jump(256,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56)
S1:
XH0Q AABBCCDD 1 A_SpawnItemEx("RainbowGalaxyPewFX1",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+SXF_TRANSFERSCALE)//16384
loop
S2:
XH0Q HHIIJJKK 1 A_SpawnItemEx("RainbowGalaxyPewFX2",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+16384)
loop
S3:
XH0Q OOPPQQRR 1 A_SpawnItemEx("RainbowGalaxyPewFX3",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+16384)
loop
S4:
XH0Q VVWWXXYY 1 A_SpawnItemEx("RainbowGalaxyPewFX4",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+16384)
loop
S5:
XH0R HHIIJJKK 1 A_SpawnItemEx("RainbowGalaxyPewFX5",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+16384)
loop
S6:
XH0R OOPPQQRR 1 A_SpawnItemEx("RainbowGalaxyPewFX6",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+16384)
loop
S7:
XH0R VVWWXXYY 1 A_SpawnItemEx("RainbowGalaxyPewFX7",0,0,ScaleY*4,random(-1,-4),random(2,-2),random(2,-2),0,1+16384)
loop
}
}

actor RainbowGalaxyPew1 : RainbowGalaxyPew0{Speed 15}
actor RainbowGalaxyPew2 : RainbowGalaxyPew0{Damage (140) Speed 12}
actor RainbowGalaxyPew3 : RainbowGalaxyPew0{Damage (150) Radius 11 Height 16 Speed 14 Scale 1.375}
actor RainbowGalaxyPew4 : RainbowGalaxyPew0{Damage (150) Speed 11}
actor RainbowGalaxyPew5 : RainbowGalaxyPew0{Radius 12 Height 18 Scale 1.5}
actor RainbowGalaxyPew6 : RainbowGalaxyPew0{Damage (160)}
actor RainbowGalaxyPew7 : RainbowGalaxyPew0{Speed 14}

actor RainbowGalaxyPewFX0 : BasicGraphicEffect
{
+FORCEXYBILLBOARD
+BRIGHT
Scale 1.5
States
{
SpawnFrame:
TNT1 A 0
TNT1 A 0 A_SetScale(ScaleX+0.25-random(0,5)*0.05)
TNT1 AA 1 A_Jump(256,"FX")
stop
}
}

actor RainbowGalaxyPewFX1 : RainbowGalaxyPewFX0{States{FX:XH0Q EFG random(2,3) A_ScaleVelocity(1.25)stop}}
actor RainbowGalaxyPewFX2 : RainbowGalaxyPewFX0{States{FX:XH0Q LMN random(2,3) A_ScaleVelocity(1.25)stop}}
actor RainbowGalaxyPewFX3 : RainbowGalaxyPewFX0{States{FX:XH0Q STU random(2,3) A_ScaleVelocity(1.25)stop}}
actor RainbowGalaxyPewFX4 : RainbowGalaxyPewFX0{States{FX:XH0Q "Z[]" random(2,3) A_ScaleVelocity(1.25)stop}}
actor RainbowGalaxyPewFX5 : RainbowGalaxyPewFX0{States{FX:XH0R LMN random(2,3) A_ScaleVelocity(1.25)stop}}
actor RainbowGalaxyPewFX6 : RainbowGalaxyPewFX0{States{FX:XH0R STU random(2,3) A_ScaleVelocity(1.25)stop}}
actor RainbowGalaxyPewFX7 : RainbowGalaxyPewFX0{States{FX:XH0R "Z[]" random(2,3) A_ScaleVelocity(1.25)stop}}
