ACTOR VoidCore : NemesisSphere
{
 Alpha 0.8
 Scale 1.0
 Renderstyle Add
 Inventory.Icon "BLKHO0"
 Inventory.PickupSound "VoidCore/pickup"
 Inventory.PickupMessage "$NEVCorePickup"
 +INVENTORY.INVBAR
 +INVENTORY.UNDROPPABLE
 +INVENTORY.HUBPOWER
 +INVENTORY.BIGPOWERUP
 +INVENTORY.PERSISTENTPOWER
 +FLOORCLIP
 +NOTIMEFREEZE
 Tag "$NEVCore"
 States
 {
  Spawn:
	BLKH A 0 NoDelay ACS_NamedExecuteAlways("SpawnEffectsOnItem",0,121,122)
  SpawnLoop:
	TNT1 A 0 A_PlaySound("VoidCore/Idle",7,1.0,True)
	BLKH A 12
	Loop
  Pickup:
	TNT1 A 0 A_StopSound(7)
	Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("VoidCoreActive",0,0,16,8,0,4,0)
	Stop
 }
}

Actor VoidCoreActive : ExplosiveBarrel
{
 Health 600
 Radius 16
 Height 38
 Mass 0x7fffffff
 Renderstyle Add
 -SOLID
 +SHOOTABLE
 +NEVERRESPAWN
 +DONTGIB
 +CANBLAST
 +NOICEDEATH
 +NOBLOOD
 +PUSHABLE
 +ISMONSTER
 +BOSS
 DeathSound "VoidCore/Death"
 PainSound "VoidCore/Crack"
 Obituary "$NEVCoreObituary"
 Tag "$NEVCoreActive"
 States
 {
  Spawn:
	BLKH A 0 NoDelay A_PlaySound("VoidCore/Idle2",6,5.0,True)
	TNT1 AA 0 A_CustomMissile ("VHellionSmokeSpawner", -20, 0, random(0,-360), 2, random(0,360)) 
	BLKH BCD 1 Bright A_SpawnItem("VoidSphereSight",0,38)
	TNT1 A 0 A_Jump(20,"CrackSound")
	TNT1 AAAA 0 A_CustomMissile ("VoidSparkleSpawner", 0, 0, random(0,-360), 2, random(0,360))
	BLKH EFG 1 Bright A_SpawnItem("VoidSphereSight",0,38)
	TNT1 A 0 A_Jump(20,"CrackSound")
	TNT1 AA 0 A_CustomMissile ("PHellionSmokeSpawner", -20, 0, random(0,-360), 2, random(0,360)) 
	BLKH HIJ 1 Bright A_SpawnItem("VoidSphereSight",0,38)
	TNT1 A 0 A_Jump(20,"CrackSound")
	TNT1 AAA 0 A_CustomMissile ("VoidSparkleSpawner", 0, 0, random(0,-360), 2, random(0,360))
	BLKH KLM 1 Bright A_SpawnItem("VoidSphereSight",0,38)
	TNT1 A 0 A_Jump(20,"CrackSound")
	TNT1 AA 0 A_CustomMissile ("VHellionSmokeSpawner", -20, 0, random(0,-360), 2, random(0,360))
	TNT1 A 0 A_Jump(20,"CrackSound")
	Loop
  CrackSound:
	TNT1 A 0 DamageThing(random(30,60))
	TNT1 A 0 A_PlaySound("VoidCore/Crack",7)
	BLKH A 1 A_Pain
	TNT1 AAAAAAA 0 A_CustomMissile ("VHellionSmokeSpawner", -20, 0, random(0,-360), 2, random(0,360))
	TNT1 AAAAA 0 A_CustomMissile ("VoidSparkleSpawner", 0, 0, random(0,-360), 2, random(0,360))
	Goto Spawn
  Death: 
	TNT1 A 0 A_Scream
	TNT1 A 0 A_AlertMonsters
	TNT1 A 0 A_Explode(150, 240)
	TNT1 AAA 0 Bright A_StopSound(5)
	TNT1 AAA 0 A_SpawnItemEx("PurpleParticleSpawner",0,0,0,0,0,0,0,128) 
	TNT1 A 0 Bright A_PlaySound("Black/Blast",6,1.0,0)
	TNT1 A 1 A_SpawnItemEx("BlackHoleBarrelExplosion",0,38,0)
	Stop
 }
}

ACTOR VoidSphereSight : BaseFlare
{
 Scale 1.2
 Renderstyle Add
 States
 {
  Spawn:
	TNT1 A 0 NoDelay A_JumpIf(ACS_NamedExecuteWithResult("CheckVanilla") == 1, "Vanilla")
	BLKH P 1 Bright
	Stop
 }
}