ACTOR SmoothZombieman : Zombieman replaces Zombieman
{
	dropitem none
	states
	{
	Spawn:
		POSW AB 10 A_Look
		loop
	See:
	    POSW ABCDEFGH 3 a_chase
		loop
	Missile:
		PSSA A 1 A_FaceTarget
		PSSA B 2 A_FaceTarget
		POSS E 7 A_FaceTarget
		POSS F 3 bright A_PosAttack
		POSS G 2 bright
			TNT1 A 0 A_JumpIf(CallACS("CasingToggle")==0, "+3")
			TNT1 A 0 A_JumpIf(CallACS("CasingToggle")==1, "+2")
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(4,6), random(7,8), random(7,9), 0)
		POSS E 4
		PSSA B 3
		PSSA A 4
		Goto See
	Pain:
		stro a 3
		stro b 3 a_pain
		goto see
		
	Death.GibbyHaynes:
		TNT1 A 0 A_JumpIf(CallACS("StudioGibbly")==0, "Death")
		TNT1 A 0 A_JumpIfCloser(128, "XDeath")
		goto death
	Death.Saw:
		TNT1 A 0 A_JumpIf(CallACS("ChainsawGib")==0, "Death")
		goto Xdeath	
	
	Death:
		TNT1 A 0 A_JumpIf(CallACS("MoDeathToggle")==1, "DeathExtra")
		TNT1 A 0 A_Jump(255, "Death1")
		Goto Death1	
	
	DeathExtra:
		TNT1 A 0 A_Jump(255, "Death1", "Death2")
		goto Death1
	
	Death1:
		5OSS A 3 A_Scream
		5OSS B 3 A_NoBlocking
			TNT1 a 0 a_jumpif(CallACS("RifleDropToggle")==0,+3)
			TNT1 a 0 a_dropitem("rifle")
			TNT1 a 0 a_jump(255,+2)
			TNT1 a 0 a_dropitem("clip")
		5OSS CDEFG 2
		5OSS HI 3
		//TNT1 A 0 a_jumpif(callACS("NukeCheck")==1, "NukeMelt")
		//TNT1 A 0 a_jumpif(callACS("LavaCheck")==1, "LavaMelt")
		5OSS I -1
		Stop
	Death2:
		PSD1 A 2 A_Scream
		PSD1 B 2 A_NoBlocking
		PSD1 C 3
			TNT1 a 0 a_jumpif(CallACS("RifleDropToggle")==0,+3)
			TNT1 a 0 a_dropitem("rifle")
			TNT1 a 0 a_jump(255,+2)
			TNT1 a 0 a_dropitem("clip")
		PSD1 D 2
		PSD1 EFG 2
		PSD1 H 2
		PSD1 IJKLM 2
		//TNT1 A 0 a_jumpif(callACS("NukeCheck")==1, "NukeMelt2")
		//TNT1 A 0 a_jumpif(callACS("LavaCheck")==1, "LavaMelt2")
		PSD1 N -1
		Stop
		
	XDeath:
		TGIB ab 2
			TNT1 A 0 A_JumpIf(CallACS("Gibtoggle")==0, +2)
			TNT1 a 0 a_spawnitemex("gorecontroller")
			TNT1 a 0 a_jumpif(CallACS("RifleDropToggle")==0,+3)
			TNT1 a 0 a_dropitem("rifle")
			TNT1 a 0 a_jump(255,+2)
			TNT1 a 0 a_dropitem("clip")

		TGIB cd 2 A_XScream
		TGIB e 2 a_noblocking
		TGIB f 2
		TGIB ghijklmnop 2
		TGIB q -1
		Stop
		
	Death.massacre:
		TGIB ab 2
		
			TNT1 a 0 a_jumpif(CallACS("RifleDropToggle")==0,+3)
			TNT1 a 0 a_dropitem("rifle")
			TNT1 a 0 a_jump(255,+2)
			TNT1 a 0 a_dropitem("clip")
		TGIB cd 2 A_XScream
		TGIB e 2 a_noblocking
		TGIB f 2
		TGIB ghijklmnop 2
		TGIB q -1
		Stop
		
	NukeMelt:
		ZMEL abcdefghij 3
		ZMEL klmnopq 3
		ZMEL q -1
		stop
	NukeMelt2:
		ZME2 abcde 2
		ZME2 fghijklmnopqrs 3
		ZME2 s -1
		stop
	LavaMelt:
		ZLAV abcdefghij 3
		ZLAV klmnopq 3
		ZLAV q -1
		stop
	LavaMelt2:
		ZLA2 abcde 2
		ZLA2 fghijklmnopqrs 3
		ZLA2 s -1
		stop
	Raise:
		POSS K 5
		POSS JIH 5
		Goto See
	}
}