class GoreImp:Doomimp replaces Doomimp
{
	
	override int DamageMobj(
    Actor inflictor, Actor source, int damage,
    Name mod, int flags = 0, double angle = 0)
	
	{
    if(inflictor is "XtremePlasmaBall")source.A_PlaySound("gore/sizzle",CHAN_AUTO,attenuation:0.8);
    else
	if(inflictor is "XtremeRocket")source.A_PlaySound("gore/snap",CHAN_AUTO,attenuation:0.8);
	else
	if(source is "PlayerPawn")source.A_PlaySound("gore/hitmarker",CHAN_AUTO,attenuation:0.8);

	return super.damagemobj
	(inflictor,source,damage,
    mod,flags,angle);
	}
		
	states
	{
	Spawn:
		TNT1 a 0;
		TNT1 a 0 a_giveinventory("scream",1);
		TROO ab 10 a_look;
		goto spawn+2;

	See:
		TNT1 a 0 a_jumpifinventory("scream",1,"ScreamSee");
		TROO AABBCCDD 3 A_Chase;
		loop;
		
	ScreamSee:
		TROC AABBCCDD 3 A_Chase;
		TNT1 a 0 a_takeinventory("scream",1);
		goto see;
	
	Death.SSG:
		TNT1 A 0 A_JumpIfCloser(128, "XDeath");
		goto death;
	Death:
		TNT1 a 0 a_spawnitemex("DeathController");
		TNT1 a 0 a_jump(100,"death2");

		TROO I 8;
		TROO J 8 A_scream;
		TROO K 6;
		TROO L 6 A_NoBlocking;
		TROO M random(10,20);
	
		TNT1 A 0 a_jumpif(callACS("NukeCheck")==1, "NukeMelt");	
		TNT1 A 0 a_jumpif(callACS("LavaCheck")==1, "LavaMelt");
	
		TROO M -1;
		stop;
		
	Death2:
		TROO V 8;
		TROO W 8 A_Scream;
		TROO X 5;
		TROO Y 5 A_Fall;
		TROO Z random(10,20);
		
		TNT1 A 0 a_jumpif(callACS("NukeCheck")==1, "NukeMelt2");	
		TNT1 A 0 a_jumpif(callACS("LavaCheck")==1, "LavaMelt2");

		TROO Z -1;
		Stop;

	xDeath:
		TROO N 5;
	
		TNT1 a 0 a_spawnitemex("gibcontroller");
	
		TROO O 5 A_xscream;
		TROO P 5;
		TROO Q 5 a_noblocking;
		TROO RST 5;
		TROO U -1;
	
	NukeMelt:
		TNT1 a 0 a_playsound("terrain/melties",7);
		IMEL abcdefhijklmnopqrstu 3;
		TNT1 v -1;
		stop;
	NukeMelt2:
		TNT1 a 0 a_playsound("terrain/melties",7);
		IME2 abcdefghijklmnopqrst 3;
		TNT1 u -1;
		stop;
	LavaMelt:
		TNT1 a 0 a_playsound("terrain/melties",7);
		ILAV abcdefhijklmnopqrstu 4;
		TNT1 v -1;
		stop;
	LavaMelt2:
		TNT1 a 0 a_playsound("terrain/melties",7);
		ILV2 abcdefghijklmnopqrst 4;
		TNT1 u -1;
		stop;
	
	Death.massacre:
    TROO N 5;
    TROO O 5 A_XScream;
    TROO P 5;
    TROO Q 5 A_NoBlocking;
    TROO RST 5;
    TROO U -1;
    Stop;
	}
}