Actor PowercoreSoundPlayer : CustomInventory {
	States {
		Pickup:
			TNT1 A 0 A_PlaySound("Items/PowercoreEquip")
			TNT1 A 0 A_SetBlend("25 99 25", 0.6, 17)
		Stop
	}
}

Actor PowercoreDrop : InventoryBase {
	Renderstyle Translucent
	Alpha 1.0
	States {
		PickupSuccess:
			TNT1 A 8 ACS_NamedExecuteAlways("DnD Powercore Item Pickup", 0, mass - 1)
		stop
	}
}

Actor PowercoreDrop_0 : PowercoreDrop {
	States {
		Spawn:
			PCOR A 0
		Goto SpawnInit
	}
}

Actor PowercoreDrop_1 : PowercoreDrop {
	States {
		Spawn:
			PCOR B 0
		Goto SpawnInit
	}
}

Actor PowercoreDrop_2 : PowercoreDrop {
	States {
		Spawn:
			PCOR D 0
		Goto SpawnInit
	}
}

Actor PowercoreDrop_3 : PowercoreDrop {
	States {
		Spawn:
			PCOR C 0
		Goto SpawnInit
	}
}

Actor PowercoreDrop_Unique0 : PowercoreDrop {
	States {
		Spawn:
			UCOR A 0
		Goto SpawnInit
	}
}

Actor UnstableExplosion : DnD_ExplosiveBase {
	PROJECTILE
	Health 1
	Speed 0
	Height 2
	Radius 1
	Alpha 0.975
	Scale 1.15
	Renderstyle Add
	+THRUACTORS
	+FORCERADIUSDMG
	+DONTBLAST
	+DONTREFLECT
	+FOILINVUL
	States {
		Spawn:
			TNT1 A 0 NoDelay A_PlaySound("UnstableExplosion")
			
			TNT1 A 0 A_SetUserVar("user_expdmg", score)
			TNT1 A 0 A_SetUserVar("user_expradius", mass * (1.0 + ACS_NamedExecuteWithResult("DND Explosion Radius Retrieve", DND_USETARGET) * exprad_factor))
			TNT1 A 0 A_SetUserVar("user_fullexpradius", 0)
			TNT1 A 0 A_SetUserVar("user_flags", 0)
			TNT1 A 0 A_SetUserVar("user_damagetype", DND_DAMAGETYPE_ENERGY)
		Goto DoExplosionDamage
		ContinueFromExplosion:
			PLNS F 2
			TNT1 A 0 A_JumpIf(health > 1, "TesseractExp")
		Goto ContBlue
		ContBlue:
			TNT1 AAAAAAA 0 A_SpawnItemEx("ExplosionFX5", frandom(-36, 36), frandom(-36, 36), frandom(8, 32), frandom(-2, 2), frandom(-2, 2), frandom(-1, 1))
		ContAnim:
			PNLS GHI 2 A_FadeOut(0.025)
			PLNS JKLMNOP 2 A_FadeOut(0.035)
		Goto Stop
		TesseractExp:
			TNT1 AAAAAAA 0 A_SpawnItemEx("ExplosionFX3", frandom(-36, 36), frandom(-36, 36), frandom(8, 32), frandom(-2, 2), frandom(-2, 2), frandom(-1, 1))
		Goto ContAnim
	}
}