actor "MBM Floor Crawler" : CustomInventory { states { 
	pickup: TNT1 A 0 A_ChangeFlag("FLOORHUGGER", true)
		TNT1 A 0 A_GiveInventory("MBM Floor Crawler NoJump", 1) stop}}
		
actor "MBM Floor Crawler NoJump": PowerHighJump {
	powerup.strength 0 
	powerup.duration 0x7FFFFFFA 
}
	
actor "MBM HP Deplete"  { +NOINTERACTION  obituary "%o ran out of E-Tanks." 
	states {
		spawn:
			TNT1 A 0 nodelay A_SetScale((angle*256)/360)
			TNT1 A 0 A_LookEx(LOF_NOJUMP, 0, 15, 15, 0, "")
			TNT1 A 0 A_Warp(AAPTR_TARGET,0, 0, 8, angle, WARPF_NOCHECKPOSITION | WARPF_ABSOLUTEANGLE)
			TNT1 A 0 A_RearrangePointers(AAPTR_NULL, AAPTR_NULL, AAPTR_NULL)
			TNT1 A 0 A_SpawnItemEx("MBM HP Deplete Damager",0,0,0,0,0,0,0,SXF_TRANSFERSCALE)
			TNT1 A 2 
			stop}}
			
actor "MBM HP Deplete Damager" : BasicProjectile { 
	damage (scalex) radius 6 height 12 damagetype "__CONST" +PAINLESS
	+EXPLODEONDEATH // disabled medals
	states { spawn: TNT1 AA 0
		death: TNT1 A 0
			stop}}
			
actor "MBM Death" : Powerup { powerup.duration 20 }
actor "MBM Monster Scanned" : Once {}
actor "MBM Monster Regen" : Once {}
actor "MBM Combo" : powerup { powerup.duration 21 }
		
		
	
/////////////////////
// Pop-up / health //
/////////////////////
actor "MBM Counter" : Once {
 inventory.maxamount 0x1FFFF // { isHeal: bool, amount: 0xFFFF } 
}

actor "MBM Pattern" : Once { inventory.maxamount 5 } // cycle 1~5

actor "MBM Digit" : BasicGraphicEffect { scale 1.5 alpha 0.9
	 +FORCEXYBILLBOARD var int user_duration; +BRIGHT  	
	states {
		spawn: 
			TNT1 A 0
			TNT1 A 1
			stop		
		// Classic 1
		00: DMGD A 1 A_JumpIf(true, "gfx") goto gfx
		01: DMGD B 1 A_JumpIf(true, "gfx") goto gfx
		02: DMGD C 1 A_JumpIf(true, "gfx") goto gfx
		03: DMGD D 1 A_JumpIf(true, "gfx") goto gfx
		04: DMGD E 1 A_JumpIf(true, "gfx") goto gfx
		05: DMGD F 1 A_JumpIf(true, "gfx") goto gfx
		06: DMGD G 1 A_JumpIf(true, "gfx") goto gfx
		07: DMGD H 1 A_JumpIf(true, "gfx") goto gfx
		08: DMGD I 1 A_JumpIf(true, "gfx") goto gfx
		09: DMGD J 1 A_JumpIf(true, "gfx") goto gfx
		
		// Classic 2
		10: DMGE O 1 A_JumpIf(true, "gfx") goto gfx
		11: DMGE P 1 A_JumpIf(true, "gfx") goto gfx
		12: DMGE Q 1 A_JumpIf(true, "gfx") goto gfx
		13: DMGE R 1 A_JumpIf(true, "gfx") goto gfx
		14: DMGE S 1 A_JumpIf(true, "gfx") goto gfx
		15: DMGE T 1 A_JumpIf(true, "gfx") goto gfx
		16: DMGE U 1 A_JumpIf(true, "gfx") goto gfx
		17: DMGE V 1 A_JumpIf(true, "gfx") goto gfx
		18: DMGE W 1 A_JumpIf(true, "gfx") goto gfx
		19: DMGE X 1 A_JumpIf(true, "gfx") goto gfx
		
		// Battle network
		20: DMGE E 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		21: DMGE F 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		22: DMGE G 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		23: DMGE H 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		24: DMGE I 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		25: DMGE J 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		26: DMGE K 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		27: DMGE L 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		28: DMGE M 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		29: DMGE N 0 A_SetScale(scalex*1.7,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		
		// X6
		30: DMGE Y 0 A_SetScale(scalex*1.142,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		31: DMGE Z 0 A_SetScale(scalex*1.4,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		32: DMGF A 0 A_SetScale(scalex*1.09,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		33: DMGF B 0 A_SetScale(scalex*1.2,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		34: DMGF C 0 A_JumpIf(true, "gfx") goto gfx
		35: DMGF D 0 A_SetScale(scalex*1.2,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		36: DMGF E 0 A_SetScale(scalex*1.09,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		37: DMGF F 0 A_SetScale(scalex*1.09,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		38: DMGF G 0 A_SetScale(scalex*1.09,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		39: DMGF H 0 A_SetScale(scalex*1.09,scaley)  "----" A 1 A_JumpIf(true, "gfx") goto gfx
		
		gfx:
			"----" A 2
			stop}}

actor "MBM Popup Digit" : "MBM Digit" {  alpha 0.6
	states {
		gfx: 
			"----" A 2
			"----" A 0 A_FadeIn(0.2)
			"----" A 2 A_ScaleVelocity(0.6)
			"----" A 0 A_FadeIn(0.2)
			"----" A 2 A_ScaleVelocity(0.5)
			"----" A 1 A_SetTics(user_duration) // 0+(user_valueNormalized/4)
			"----" AA 2 A_ScaleVelocity(2.0)
		leave:
			"----" A 0 A_ScaleVelocity(2.0)
			"----" A 2 A_FadeOut(0.2)
			loop
		death:
			TNT1 A 0
			stop}}
		
actor "MBM Bar" : "MBM Digit" { scale 2.25 alpha 0.9 states {
	bar0: DMGD K 1 A_JumpIf(true, "gfx") goto gfx
	bar1: DMGD L 1 A_JumpIf(true, "gfx") goto gfx
	bar2: DMGD M 1 A_JumpIf(true, "gfx") goto gfx
	bar3: DMGD N 1 A_JumpIf(true, "gfx") goto gfx
	bar4: DMGD O 1 A_JumpIf(true, "gfx") goto gfx
	bar5: DMGD P 1 A_JumpIf(true, "gfx") goto gfx
	bar6: DMGD Q 1 A_JumpIf(true, "gfx") goto gfx
	bar7: DMGD R 1 A_JumpIf(true, "gfx") goto gfx
	bar8: DMGD S 1 A_JumpIf(true, "gfx") goto gfx
	bar9: DMGD T 1 A_JumpIf(true, "gfx") goto gfx
	bar10: DMGD U 1 A_JumpIf(true, "gfx") goto gfx
	bar11: DMGD V 1 A_JumpIf(true, "gfx") goto gfx
	bar12: DMGD W 1 A_JumpIf(true, "gfx") goto gfx
	bar13: DMGD X 1 A_JumpIf(true, "gfx") goto gfx
	bar14: DMGD Y 1 A_JumpIf(true, "gfx") goto gfx
	bar15: DMGD Z 1 A_JumpIf(true, "gfx") goto gfx
	bar16: DMGE A 1 A_JumpIf(true, "gfx") goto gfx
	bar17: DMGE B 1 A_JumpIf(true, "gfx") goto gfx
	bar18: DMGE C 1 A_JumpIf(true, "gfx") goto gfx
	bar19: DMGE D 1 A_JumpIf(true, "gfx") goto gfx
}}



	//////////////////////////////////////////////////////////
//                    Debug										//
	//////////////////////////////////////////////////////////

/*
actor a { MONSTER +COUNTKILL scale 2.1 health 500 Radius 24 Height 64 states {
	spawn: ICWL K -1
		stop}}
actor a2 : a { scale 4.2 Radius 48 Height 128 }
actor a4 : a { scale 8.4 Radius 96 Height 256 }
actor a6 : a { scale 16.8 Radius 192 Height 512 }
actor a02 : a { scale 1.05 Radius 12 Height 32 }
actor a04 : a { scale 0.525 Radius 6 Height 16 }
*/