actor StarShooter 10518
{
//$Category MM8BDM-Props
//$Sprite AMMOA0
+NOGRAVITY
-SOLID
States
{
Spawn:
TNT1 A 2 A_SpawnItemEx("Star",0,0,0,random(2,8),random(-10,10),random(-10,10),0)
loop
}
}

actor Star
{
PROJECTILE
Speed 20
scale 0.5
States
{
Spawn:
MMFX CDE 6 A_Recoil(-2)
loop
}
}

actor CopShowGuy
{
+NOGRAVITY
+ACTIVATEMCROSS
States
{
Spawn:
CRE1 A 5 A_Recoil(1)
loop
Act:
CRE1 BBBBCDDDDDE 5
Actloop:
CRE1 F 4
loop
Finish:
CRE1 F 3 A_Recoil(1)
loop
}
}


actor ZeroEXE
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE2 R 5 A_Recoil(1)
loop
Act:
CRE2 SSSTTTUUUUUUSSSS 4
Actloop:
CRE2 S 4
loop
Finish:
CRE2 S 3 A_Recoil(1)
loop
}
}

actor Brotoad
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE2 D 5 A_Recoil(1)
loop
Act:
CRE2 DEEE 5
CRE2 FGHIJKLMNO 3
CRE2 P 2
Actloop:
CRE2 Q 4
loop
Finish:
CRE2 Q 3 A_Recoil(1)
loop
}
}

actor DTD
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE1 K 5 A_Recoil(1)
loop
Act:
CRE1 GHIJKKKKKKKKKGHIJK 4
Actloop:
CRE1 K 4
loop
Finish:
CRE1 K 3 A_Recoil(1)
loop
}
}

actor Korby
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE1 L 5 A_Recoil(1)
loop
Act:
CRE1 LMLMLMLM 2
CRE1 NOPNOP 4
Actloop:
CRE1 P 4
loop
Finish:
CRE1 P 3 A_Recoil(1)
loop
}
}

actor Namo
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE1 Q 5 A_Recoil(1)
loop
Act:
CRE1 QRSTUVWXYZ 4
CRE2 ABC 4
Actloop:
CRE2 C 4
loop
Finish:
CRE2 C 3 A_Recoil(1)
loop
}
}

actor Squidgy
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
TNT1 A 5 A_Recoil(1)
loop
Act:
CRE2 WXYZ 3
CRE3 A 3
CRE3 BBBBCDDDEFFFG 4
CRE3 A 3
CRE2 ZYXW 3
TNT1 A 4
Actloop:
TNT1 A 4
loop
Finish:
TNT1 A 3 A_Recoil(1)
loop
}
}

actor PressStart
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE3 H 5 A_Recoil(1)
loop
Act:
CRE3 HIJKLMNO 4
loop
Finish:
CRE3 HIJKLMNO 1 A_Recoil(1)
loop
}
}

actor Fupoo
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE3 PQRQ 5 A_Recoil(1)
loop
Act:
CRE3 TTTSSSSSTTTSSSSSTTTSSSSS 4
Actloop:
CRE3 S 4
loop
Finish:
CRE3 PQRQ 3 A_Recoil(1)
loop
}
}

actor CutmanMike
{
+ACTIVATEMCROSS
+NOGRAVITY
States
{
Spawn:
CRE3 U 5 A_Recoil(1)
loop
Act:
CRE3 UUUUUUUUUVVVWW 5
CRE3 W 0 ACS_Execute(6,0)
Actloop:
CRE3 XY 2
loop
Finish:
CRE3 V 0 ACS_Execute(6,0)
CRE3 XYXYXYXYXYXYXYXYX 2
Finish2:
CRE3 V 5
loop
}
}


actor MegaManXProp
{
scale 2.5
+NOGRAVITY
+BRIGHT
height 1
radius 32
States
{
	Spawn:
	TFOG A 0 A_ChangeVelocity(0,0,-13,CVF_RELATIVE|CVF_REPLACE)
	TFOG A 1 A_Jumpif(floorz==z, "Land")
	loop
	Land:
	TFOG A 0 A_PlaySoundEx("misc/teleportin", "Voice", 0, 1)
	TFOG CCAAABBBBB 1
	MMXB A -1
	loop
}
}

//MM8
//Credit Sprite Art

actor SwordManCredits 
{
height 16
radius 16
States
{
Spawn:
CRRM W 1
loop
}
}

actor SearchManCredits 
{
height 16
radius 16
States
{
Spawn:
CRRM T 1
loop
}
}

actor FrostManCredits 
{
height 16
radius 16
States
{
Spawn:
CRRM L 1
loop
}
}

actor GrenadeManCredits 
{
height 16
radius 16
States
{
Spawn:
CRRM N 1
loop
}
}

actor ClownManCredits 
{
height 16
radius 16
States
{
Spawn:
CRRM H 1
loop
}
}

actor AquaManCredits 
{
height 16
radius 16
States
{
Spawn:
CRRM A 1
loop
}
}

actor CheerWomanCredits
{
height 16
radius 16
States
{
Spawn:
CRRM G 1
loop
}
}

actor ArcaneManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM B 1
loop
}
}

actor BadgeManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM C 1
loop
}
}

actor LaserManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM P 1
loop
}
}


actor TunnelManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM Z 1
loop
}
}



actor KingManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM O 1
loop
}
}

actor FurnaceManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM M 1
loop
}
}

actor SmashManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM V 1
loop
}
}

actor SketchManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM U 1
loop
}
}

actor DogManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM J 1
loop
}
}

actor ToxicManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM X 1
loop
}
}

actor FlurryManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM K 1
loop
}
}

actor BrawlManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM E 1
loop
}
}

actor BoneManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM D 1
loop
}
}

actor BuckshotManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM F 1
loop
}
}

actor RouterManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM Q 1
loop
}
}

actor DinoManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM I 1
loop
}
}

actor SawManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM S 1
loop
}
}

actor TrafficManCredits
{
height 16
radius 16
States
{
Spawn:
CRRM Y 1
loop
}
}
 

actor CreditsMetool// : DozerMetool
{
MONSTER
Height 32
Radius 32
Health 2
scale 2.5
obituary "%o was destroyed by a metool."
speed 14
-SHOOTABLE
-ACTIVATEMCROSS
-SOLID
+NORADIUSDMG
+LOOKALLAROUND
States
{
Melee:
METT A 0 
METT AAABBBCCCBBB 1 A_Wander
Goto See
}
}

actor CMMProp 
{
scale 2.5
height 64
radius 32
States
{
Spawn:
CRE3 U 1
loop 
Fire:
CRE3 UUUUUUUUUVVVWW 5
CRE3 XYXYXYXYXYXYXYXYX 2
CRE3 XYXYXYXYXYXYXYXYX 2
CRE3 XYXYXYXYXYXYXYXYX 2
CRE3 W 5
EndLoop:
CRE3 V 1
loop

}
}

//WT Credits
actor WilyRun 
{
//$Category MM8BDM-Props

-SOLID
+RANDOMIZE
Scale 2.5
States
{
Spawn:
WRUN ABCD 5
loop
Trip:
WRUN E 5 ThrustThingZ(0, 30, 0 ,0)
WRUN E 1 A_CheckFloor("Landed")
Goto Trip + 1
Landed:
WRUN F 0 A_ChangeFlag("NOGRAVITY", 1)
WRUN F 1 
goto Landed+1
WilyRise:
WRUN G 25
WRUN GH 5
Goto WilyRise+1
}
}

actor WilyRiseBeam
{
+THRUACTORS
+NOCLIP
+NOGRAVITY
+FORCEYBILLBOARD
-SOLID
scale 2.5
height 1
radius 1
reactiontime 110
States
{
Spawn:
WRUN I 0
WRUN I 0 A_JumpIf(z-floorz < 20, "SpawnLoop")
WRUN I 0 A_SpawnItemEx("WilyRiseBeam", 0, 0, -40)
goto SpawnLoop
SpawnLoop:
WRUN IZ 1 A_CountDown
loop
Death:
WRUN I 0
stop
}
}

actor WilyUFO2
{
//$Category MM8BDM-Props
-SOLID
+NOGRAVITY
+RANDOMIZE
Scale 2.5
States
{
Spawn:
WUFO ABC 4
loop
}
}

actor V6CreditsActor : RobotMasterActor
{
	+NOGRAVITY
	scale 0.26
	renderstyle translucent
	alpha 0.0
	states
	{
		Spawn:
		PLAY A -1
		stop
		Walk:
		"####" B 0 A_SetTranslucent(0.0)
		WalkIn:
		"####" B 0 A_JumpIf(alpha >= 1.0, "Stand")
		"####" BBBBBBCCCCCCDDDDDDEEEEEE 1 A_FadeIn(0.01)
		loop
		Stand:
		"####" A -1
		stop
		Pose:
		"####" F 6
		"####" G -1
		stop
		Fade:
		"####" "#" 1 A_FadeOut(0.04, 0)
		loop
		No:
		TNT1 A -1
		stop
		
		Duo:
		DUOR A -1 Thing_SetTranslation(0, 101)
		stop
		King:
		KING A -1 Thing_SetTranslation(0, 928)
		stop
		Terra:
		TRRA A -1 Thing_SetTranslation(0, 960)
		stop
		Sunstar:
		SGOD A -1 Thing_SetTranslation(0, 969)
		stop
		Maestro:
		PLY1 A -1 Thing_SetTranslation(0, 0)
		stop
		
		TerraWalk:
		TRR2 M 0 A_SetTranslucent(0.0)
		TerraWalking:
		TRR2 M 1 A_FadeIn(0.01)
		loop
		
		TerraPose:
		TRR2 CD 6
		loop
		TerraFade:
		TRR2 DDDDDCCCCCCD 1 A_FadeOut(0.04, 0)
		loop
		SunstarPose:
		S_U2 F -1
		stop
		
		KingPose:
		KING Q 10
		KING I -1
		stop
		
		DuoPose:
		DUO2 DDDEEE 8
		ShowingPower:
		DUO2 FG 4
		loop
		DuoFade:
		DUO2 FFFFGGGG 1 A_FadeOut(0.04, 0)
		loop
		
		Wily:
		DRWI A -1 Thing_SetTranslation(0, 749)
		WilyPose:
		DRWI FG 6
		loop
		WilyFade:
		DRWI GGGGGFFFFFFG 1 A_FadeOut(0.04, 0)
		loop
		
		EvilRobot:
		ERO2 I -1 A_SetTranslucent(0.0)
		EvilRobotWalk:
		"####" B 0 A_JumpIf(alpha >= 1.0, "EvilRobotStand")
		ERO2 IIIIIIIIIIIIIIIIIIIIIIII 1 A_FadeIn(0.01)
		loop
		EvilRobotStand:
		ERO2 B -1
		EvilRobotPose:
		ERO2 VW 6
		loop
		EvilRobotFade:
		ERO2 WWWWWVVVVVVW 1 A_FadeOut(0.04, 0)
		loop
	}
}

actor V6CreditsSunstar
{
	scale 2.5
	+NOGRAVITY
	states
	{
	Spawn:
	S_U4 E 0 A_SpawnItemEx("V6CreditsSunstarAsh", -2, random(-28, 28), random(0,64), 0, 2, 6, 0, 0, 200) 
	S_U4 E 1 A_JumpIf(z-floorz==0, "End")
	loop
	End:
	S_U4 F 80 A_SpawnItemEx("V6CreditsSunstarAsh", -2, random(-28, 28), random(0,64), 0, 2, -3, 0, 0) 
	S_U4 G 40 A_SpawnItemEx("V6CreditsSunstarAsh", -2, random(-28, 28), random(0,64), 0, 2, -3, 0, 0) 
	S_U4 H 40 A_SpawnItemEx("V6CreditsMaestroDropped", 1, -1, 6, 0.1, 0, 0)
	S_U4 I 90 
	S_U4 I 0 A_SpawnItemEx("V6CreditsSunstarVanishing")
	Fade:
	S_U4 I 0 A_SpawnItemEx("V6CreditsSunstarAsh", -2, random(-28, 28), random(0,64), 0, 10 + random(-1,1), frandom(-2, 1), 0, 0, 64) 
	S_U4 I 1 A_FadeOut(0.01)
	loop
	}
}

actor V6CreditsSunstarAsh
{
	scale 2.5
	PROJECTILE
	
	states
	{
	Spawn:
	S_U4 JKL 11
	stop
	}
}

actor V6CreditsSunstarVanishing
{
	+NOINTERACTION
	-SOLID
	scale 2.5
	states
	{
	Spawn:
	S_U4 V 70
	S_U4 V 0 A_SpawnItemEx("V6CreditsSunstarGem", 0, -0.5, 70)
	stop
	}
}

actor V6CreditsSunstarGem
{
	scale 2.5
	-SOLID
	//+NOGRAVITY
	states
	{
	Spawn:
	S_U4 W -1
	stop
	}
}

actor V6CreditsMaestroDropped
{
	-SOLID
	scale 2.5
	states
	{
	Spawn:
	PLYZ S -1
	stop
	}
}

actor V6CreditsMaestro
{
	scale 2.5
	+NOINTERACTION
	states
	{
		Spawn:
		TNT1 A 0
		PLYZ M 45 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 35 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 10 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 25 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 10 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 35 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 10 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 25 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M 10 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		PLYZ M -1 A_SpawnItemEx("CriticalPainFX", 0, 0, random(0, 48), random(2, 5), 0, random(2, 5), random(0,360))
		Floating:
		PLYZ MNOPQR 57
		loop
	}
}

actor V6CreditsSunstarApproach
{
	+NOINTERACTION
	scale 0.25
	translation "192:192=229:229", "198:198=220:220" 
	
	states
	{
	Spawn:
	ECL4 SSSTTT 1 A_SetScale(scalex + 0.008, scalex + 0.008)
	loop
	Fly:
	ECL4 SSSTTT 1 A_SpawnItemEx("V6CreditsSunstarFX", -5, 0, 0, 0, random(-10, 10), random(-10, 10), 0)  
	loop
	}
}

actor V6CreditsSunstarCatcher
{
	scale 2.5
	+NOINTERACTION
	states
	{
		Spawn:
		S_U4 AAAAA 0 A_SpawnItemEx("V6CreditsCatcherStarFX", -2, 0, random(-8, 8), random(0, -18), -20, random(-5, 5), 0, SXF_CLIENTSIDE)
		S_U4 AB 1 A_SpawnItemEx("V6CreditsSunstarCatcherFX", -2, 0, 0, 0, 0, 0, 0, SXF_CLIENTSIDE)
		loop
		Caught:
		S_U4 AAAAA 0 A_SpawnItemEx("V6CreditsCatcherStarFX", -2, 0, random(-8, 8), random(0, -18), -20, random(-5, 5), 0, SXF_CLIENTSIDE)
		S_U4 CD 1 A_SpawnItemEx("V6CreditsSunstarCatcherFX", -2, 0, 0, 0, 0, 0, 0, SXF_CLIENTSIDE)
		loop
		
	}
}

actor V6CreditsSunstarCatcherFX : V6CreditsSunstarCatcher
{
	states
	{
		Spawn:
		S_U4 N 1 A_FadeOut(0.04)
		loop
	}
}

actor V6CreditsSunstarFX : V6CreditsSunstarApproach
{
	scale 0.8
	renderstyle add
	states
	{
	Spawn:
	ECL4 S 0 A_ScaleVelocity(0.8)
	ECL4 S 1 A_FadeOut(0.05)
	ECL4 S 0 A_ScaleVelocity(0.8)
	ECL4 S 1 A_FadeOut(0.05)
	ECL4 T 0 A_ScaleVelocity(0.8)
	ECL4 T 1 A_FadeOut(0.05)
	ECL4 T 0 A_ScaleVelocity(0.8)
	ECL4 T 1 A_FadeOut(0.05)
	loop
	}
}

actor V6CreditsCatcherStarFX : V6CreditsSunstarFX
{
	scale 2.5
	states
	{
	Spawn:
	INTQ E 1 A_FadeOut(0.05)
	INTQ F 1 A_FadeOut(0.05)
	INTQ F 1 A_FadeOut(0.05)
	INTQ G 1 A_FadeOut(0.05)
	INTQ G 1 A_FadeOut(0.05)
	INTQ F 1 A_FadeOut(0.05)
	INTQ F 1 A_FadeOut(0.05)
	loop
	}
}

actor V6CreditsTimeFreeze : PowerTimeFreezer
{
powerup.duration -99
}

actor V6CreditsSunstarPic
{
+NOINTERACTION
states
{
Spawn:
S_U4 OOPP 3 A_SpawnItemEx("V6CreditsSunstarPicFX", 3, random(-48, 48), random(10, 40), 0, -0.1, -0.1, 0, 0, 148)
loop
}
}


actor V6CreditsSunstarPicFX
{
+NOINTERACTION
+NOGRAVITY
states
{
Spawn:
S_U4 QQQRRRSSSTTTUUU 1 A_ScaleVelocity(1.4)
stop
}
}