ACTOR ONI-MIKO-ZERO : GenericBoss
{
  FloatSpeed 8
  Speed 8
  Health 0x7FFFFFFF
  Mass 0x7FFFFFFF
  +NORADIUSDMG
  +NOTIMEFREEZE
  +MISSILEMORE
  +MISSILEEVENMORE
  +NOTELEFRAG
  +QUICKTORETALIATE
  +BRIGHT
  Painchance 0
  ActiveSound " "
  DeathSound " "
  SeeSound " "
  Obituary "%o became no more from ONI - MIKO - ZERO."
  Tag "\c[k7]ONI - MIKO - ZERO\c-"
  var int user_music;
  var int user_teleloop;
  var int user_script;
  States
  {
  Spawn:
	TNT1 A 0 A_JumpIf(user_music == 1,3)
    TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,724)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_JumpIf(user_script == 1,3)
    TNT1 A 0 ACS_NamedExecuteAlways("ONIMIKO")
	TNT1 A 0 A_SetUserVar("user_script",1)
	TNT1 A 0 A_Look
    ONIX AAA 1 A_Wander
	TNT1 A 0 A_Look
    ONIX BBB 1 A_Wander
	TNT1 A 0 A_Look
    ONIX CCC 1 A_Wander
	TNT1 A 0 A_Look
    ONIX DDD 1 A_Wander
	TNT1 A 0 A_Look
    ONIX EEE 1 A_Wander
	TNT1 A 0 A_Look
    ONIX FFF 1 A_Wander
	TNT1 A 0 A_Look
    ONIX GGG 1 A_Wander
	TNT1 A 0 A_Look
    ONIX HHH 1 A_Wander
	TNT1 A 0 A_Look
    ONIX III 1 A_Wander
	TNT1 A 0 A_Look
    ONIX JJJ 1 A_Wander
	Loop
  See:
	TNT1 A 0 A_JumpIf(user_music == 1,3)
    TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,724)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_JumpIf(user_script == 1,3)
    TNT1 A 0 ACS_NamedExecuteAlways("ONIMIKO")
	TNT1 A 0 A_SetUserVar("user_script",1)
    ONIX AAABBBCCCDDDEEE 1 A_Chase
	TNT1 A 0 A_Jump(30,"Teleport","Teleport2")
	ONIX FFFGGGHHHIIIJJJ 1 A_Chase
	TNT1 A 0 A_Jump(30,"Teleport","Teleport2")
    Loop
  Teleport:
	ONIX A 1 A_UnSetShootable
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("MReimuSmoke",0,0,32,random(-3,3),random(-3,3),random(-3,3),random(0, 360))
	ONIX AA 1 A_FadeOut(0.5,0)
	ONIX A 2 
	ONIX AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	ONIX AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	ONIX A 1 A_PlayWeaponSound("boss/teleport")
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("MReimuSmoke",0,0,32,random(-3,3),random(-3,3),random(-3,3),random(0, 360))
	ONIX AA 1 A_FadeIn(0.5)
	ONIX L 1 A_SetShootable
	Goto See
  Teleport2:
	TNT1 A 0 A_ChangeFlag("NOCLIP",1)
	ONIX A 1 A_UnSetShootable
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("MReimuSmoke",0,0,32,random(-3,3),random(-3,3),random(-3,3),random(0, 360))
	ONIX AA 1 A_FadeOut(0.5,0)
	ONIX A 2 
	TNT1 A 0 A_SetUserVar("user_teleloop",random(0,100))
  Teleport2Loop:
	TNT1 A 0 A_JumpIf(user_teleloop >= 300,"Teleport2End")	 
	TNT1 A 0 A_SetUserVar("user_teleloop",user_teleloop+1)
	TNT1 AAAAAAAAAA 0 A_Chase("Teleport2End","",CHF_NOPLAYACTIVE)
	TNT1 A 1 A_Chase("Teleport2End","",CHF_NOPLAYACTIVE)
	Loop
  Teleport2End:
	ONIX A 1 A_PlayWeaponSound("boss/teleport")
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("MReimuSmoke",0,0,32,random(-3,3),random(-3,3),random(-3,3),random(0, 360))
	ONIX AA 1 A_FadeIn(0.5)
	TNT1 A 0 A_ChangeFlag("NOCLIP",0)
	ONIX A 1 A_SetShootable
	Goto See
  Death:
    ONIX AAABBBCCCDDDEEE 1 A_FadeOut(0.1)
    Stop
  }
}