actor TheGirl : G2_Ghost //TheGirlFromHellItself //BloodyMary?? LOLOL
{
	xscale 0.1495
	yscale 0.1365
	speed 2
	fastspeed 3
	height 56
	radius 15
	meleerange 128
	meleedamage 0
	+LOOKALLAROUND
	+NORADIUSDMG
	+FLOORHUGGER
	CameraHeight 60
	mass 999999999
	DamageType "Skeleton"

	painchance 1
	States {
		Dance:
			GDST AAABBCCDDEEEDDCCBB 1 A_TakeInventory("G2_LightHater",1)
			loop
		Spawn:
			GOST A 0 A_GiveInventory("shell", 1)
			GOST A 0 A_JumpIfInventory("shell", 1, "ContinueSpawn")
			GOST A 0 A_PlaySound ("Girl/Idle", 0, 0.5, 1)
			GOST A 0 A_GiveInventory("G2_DoNotHurtPlayers", 1)
			GOST A 1
		ContinueSpawn:
		See:
				GOST A 0 A_TakeInventory("G2_LightHater",1)
				GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 128, 1, 360, "See.Player")
				GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 300, 1, 180, "See.Player")
				GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 512, 1, 120, "See.Player")
				GOST A 10 A_JumpIf(ACS_NamedExecuteWithResult("gd_chase") <= 0, "See.Regular")
				GOST A 4 A_JumpIf(ACS_NamedExecutewithResult("gd_dist") > 2500, "See2")
				GOST A 0 A_LookEx(LOF_NOSOUNDCHECK, 0, 1500, 1, 80, "See.Player")
			See2:
				GOST A 0 A_JumpIf(ACS_NamedExecuteWithResult("gd_hasPath") == 0, "See")
				GOST A 0 A_SpawnItemEx("GirlFootstepR")

				GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 128, 1, 360, "See.Player")
				GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 300, 1, 180, "See.Player")
				GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 512, 1, 120, "See.Player")
				GOST A 10 A_JumpIf(ACS_NamedExecuteWithResult("gd_chase") <= 0, "See.Regular2")
				GOST A 4 A_JumpIf(ACS_NamedExecutewithResult("gd_dist") > 2500, "See3")
				GOST A 0 A_LookEx(LOF_NOSOUNDCHECK, 0, 1500, 1, 80, "See.Player")
			See3:
				GOST A 0 A_SpawnItemEx("GirlFootstepL")
				Goto See

		See.Regular:
				GOST A 14 A_Chase
				GOST A 0 A_SpawnItemEx("GirlFootstepR")
			See.Regular2:
				GOST A 14 A_Chase
				GOST A 0 A_SpawnItemEx("GirlFootstepL")
				Goto See

		GirlSpecial:
			GOST A 0 A_PlaySoundEx("Girl/Pain", "Auto")
			GOST AAAAAAAAAAAA 2 A_JumpIf(ACS_NamedExecuteWithResult("gd_chase") == 999, "See.Regular")
			Goto See.Player

		See.Player:
			GOST A 1 A_GiveInventory("G2_LightHater",1)
			GOST A 0 A_FaceTarget
			GOST A 0 A_PlaySoundEx("girl/see","Auto",0,2)
			GOST A 0 ACS_NamedExecutewithResult("girl_killPlayerLights")
			GOST ABCABCBABCABCBABCCBABC 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 128, 1, 360, "FastScary")
			GOST A 0 A_FaceTarget
			GOST A 1 A_Chase
			GOST ABCABCBABCBCBABCABCABC 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 180, 1, 360, "FastScary")
			GOST A 0 A_FaceTarget
			GOST A 1 A_Chase
			GOST ABCABCBABCABACBABCBABC 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 250, 1, 360, "FastScary")
			GOST A 0 A_FaceTarget
			GOST A 1 A_Chase
			Goto See

		FastScary:
			GOST A 32
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 3 A_LookEx(LOF_NOSOUNDCHECK, 0, 500, 1, 360, "Primary")
			GOST A 1 A_LookEx(LOF_NOSOUNDCHECK, 0, 10000, 1, 80, "See.Player")
			Goto See
		Primary:
			GOST A 0 Radius_Quake(2, 25, 0, 5, 0)
			GOST A 0 ACS_NamedExecuteWithResult("girl_vs_primary")
			GOST A 0 A_FaceTarget
			GOST A 0 A_Recoil(ACS_NamedExecuteWithResult("girl_recoil"))
			GOST A 0 A_PlaySoundEx("Girl/Boo", "Soundslot6")
			GIRL GHIJKLKLKL 1 A_Explode(16, 100, XF_NOTMISSILE) 
			GIRL KLKLJIHG 1
			Goto FastScary

	//Catching on fire vvv
		OnFire:
			GOST A 0 A_GiveInventory("G2_LightHater",1)
		OnFireLoop:
			GOST A 0 Radius_Quake(1, 80, 0, 10, 0)
			GOST A 0 A_PlaySoundEx("Girl/Pain", "Auto")
			GOST AAAAAAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAAAAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAAAAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAAAAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAAAAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST A 0 A_JumpIfInventory("G2_OnFire", 3, "OnFireLoop")
		OnFireStop:
			GOST A 0 A_TakeInventory("G2_LightHater", 1)
			Goto See2
		Pain.Fire:
			GOST A 0
			GOST A 0 ACS_NamedExecuteWithResult("ghost_igniteMe")
			Goto OnFire
		Pain:
			GOST A 0
			Goto See2
	}

}

actor GirlFootstepR
{
	height 2
	radius 2
	+CLIENTSIDEONLY
	+NOINTERACTION
	scale 0.5
	States
	{
		Spawn:
			MGOR E 0
			MGOR E 0 A_PlaySound("Girl/Step")
			MGOR E 700 //A_JumpIf(z > floorz, "Nope")
		FadingOut:
			MGOR E 1 A_FadeOut(0.01)
			loop
		Nope:
			TNT1 A 0
			stop
	}
}

actor GirlFootstepL : GirlFootstepR
{
}

actor DanceGirl : TheGirl //TheGirlFromHellItself //BloodyMary?? LOLOL
{
	speed 2
	fastspeed 3
	height 56
	radius 17
	meleerange 128
	meleedamage 0
	+LOOKALLAROUND
	+NORADIUSDMG
	+FLOORHUGGER
	CameraHeight 46
	mass 999999999
	states
	{
		Spawn:
			GOST A 0
			GOST A 0
			goto Dance
	}
}

actor TheGirlShadow {
	renderstyle Translucent
	alpha 0.5
	
	+CLIENTSIDEONLY
	+NOGRAVITY
	+THRUACTORS
	+NOBLOCKMAP
	+NOINTERACTION
	+NOCLIP
	height 2
	radius 2
	mass 9999999999
	xscale 0.1495
	yscale 0.1365
	
	donthurtshooter
	
	States {
		Spawn:
			GOST A 0
			GOST A 0 A_PlaySound("Girl/ShadowClose")
			GOST AAAAAAAAAA 1 A_FadeOut(0.05)
			stop
	}
}

actor TheGirlShadow2 : TheGirlShadow {
	renderstyle Add
	States {
		Spawn:
			GIEY A 0
			GIEY AAAAAAAAAAAAAAAA 1 bright A_FadeOut(0.1)
			stop
	}
}

actor G2_GirlSmoker : G2_VisualActor
{
	height 2
	radius 2
	+CLIENTSIDEONLY
	renderstyle none
	States
	{
		Spawn:
			GIRL A 1 A_SpawnItemEx("G2_GirlSmoke", 2, 0, frandom(40, 55), 0.1, 0, frandom(-0.25, -0.1), random(0,360), SXF_CLIENTSIDE)
			GIRL A 0 A_SpawnItemEx("G2_GirlSmoke", 2, 0, frandom(5.0, 45.0), frandom(-0.05, 0.01) , 0, 0, random(0,360), SXF_CLIENTSIDE)
			GIRL A 1 A_SpawnItemEx("G2_GirlSmoke", 2, 0, frandom(40, 55), 0.1, 0, frandom(-0.25, -0.1), random(0,360), SXF_CLIENTSIDE)
			GIRL A 0 A_SpawnItemEx("G2_GirlSmoke", 2, 0, frandom(40, 55), 0.1, 0, frandom(-0.25, -0.1), random(0,360), SXF_CLIENTSIDE)
			GIRL A 1 A_SpawnItemEx("G2_GirlSmoke2", 2, 0, frandom(5.0, 45.0), frandom(-0.1, -0.05), 0, 0, random(0,360), SXF_CLIENTSIDE)
			GIRL A 0 A_SpawnItemEx("G2_GirlSmoke", 2, 0, frandom(40, 55), 0.1, 0, frandom(-0.25, -0.1), random(0,360), SXF_CLIENTSIDE)
			loop
		Disabled:
			GIRL A -1
			loop
	}
}

actor G2_GirlSmokeWhirl : G2_VisualActor
{
	height 2
	radius 2
	+CLIENTSIDEONLY
	renderstyle none
	States
	{
		Spawn:
			GIRL A 1 A_SpawnItemEx("G2_GirlSmoke", 2, 0, frandom(30, 35), velx / 12 + 0.1, vely / 12, velz / 12 + frandom(-0.1, -0.15), random(0,360), SXF_CLIENTSIDE)
			GIRL A 1 A_SpawnItemEx("G2_GirlSmoke2", 2, 0, frandom(30, 35), velx / 12 + 0.1, vely / 12, velz / 12 + frandom(-0.1, -0.15), random(0,360), SXF_CLIENTSIDE)
			loop
	}
}

actor G2_GirlSmoke : G2_VisualActor
{
	renderstyle translucent
	alpha 0.01
	xscale 0.4
	yscale 0.4
	height 2
	radius 2
	+NOGRAVITY
	+CLIENTSIDEONLY
	+FORCEXYBILLBOARD
	States
	{
		Spawn:
			SMOK A 0
			SMOK A 0 A_Jump(256, "A", "B", "C")
			goto A
		A:
			SMOK AAAAAAAAA 1 A_FadeIn(0.096) 
			SMOK A 6
		AF:
			SMOK A 1 A_FadeOut(0.025)
			loop
		B:
			SMOK BBBBBBBBB 1 A_FadeIn(0.096) 
			SMOK B 6
		BF:
			SMOK B 1 A_FadeOut(0.025)
			loop
		C:
			SMOK CCCCCCCCC 1 A_FadeIn(0.096) 
			SMOK C 6
		CF:
			SMOK C 1 A_FadeOut(0.025)
			loop
	}
}

actor G2_GirlSmoke2 : G2_GirlSmoke
{
	xscale 0.76
	yscale 0.75
}

actor TheGirlVs : TheGirl
{
	-FLOORHUGGER
	+THRUACTORS

	States
	{
		OnFire:
			GOST A 0 A_GiveInventory("G2_LightHater", 1)
			GOST A 0 ACS_NamedExecuteWithResult("vs_disableControl")
			GOST A 0 A_TakeInventory("G2_DoNotHurtPlayers", 1)
		OnFireLoop:
			GOST A 0 Radius_Quake(1, 80, 0, 10, 0)
			GOST A 0 A_PlaySoundEx("Girl/Pain", "Auto")
			GOST AAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST AAAA 0 A_Wander
			GOST A 15 A_SpawnItemEx("TheGirlShadow")
			GOST A 0 A_JumpIfInventory("G2_OnFire", 3, "OnFireLoop")
		OnFireStop:
			GOST A 0 ACS_NamedExecuteWithResult("vs_enableControl")
			GOST A 0 A_TakeInventory("G2_LightHater", 1)
			GOST A 0 A_GiveInventory("G2_DoNotHurtPlayers", 1)
			goto See

		Pain.Fire:
			GOST A 0
			GOST A 0 ACS_NamedExecuteWithResult("ghost_igniteMe")
			goto OnFire
		Pain:
			GOST A 0
			goto See
		Dance:
			GDST AAABBCCDDEEEDDCCBB 1 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See")
			loop

		Still:
			GOST A 4
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST A 4 A_PlaySoundEx("Girl/Active", "Soundslot6", false)
			GOST AAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GIRL GHIJKLKLKLKLKLJIHG 2 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			loop
		Still2:
			GOST A 4
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST A 4 A_PlaySoundEx("Girl/Active", "Soundslot6", false)
			GOST AAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GIRL GHIJKLKLKLKLKLJIHG 2 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			GOST AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8 A_JumpIf(ACS_NamedExecuteWithResult("vs_step"), "See2")
			loop

		Spawn:
			GOST A 0
			GOST A 0 A_GiveInventory("G2_GhostPrimary", 1)
			GOST A 0 A_GiveInventory("G2_GhostSecondary", 1)
			GOST A 0 A_GiveInventory("G2_GhostPrimaryCharge", 100)
			GOST A 0 A_GiveInventory("G2_GhostSecondaryCharge", 100)
			GOST A 0 ACS_NamedExecuteWithResult("girl_smoker")
			GOST A 0 A_PlaySoundEx("Girl/Idle", "Soundslot5", true)
			GOST A 0 ACS_NamedExecuteWithResult("girl_tension")
			GOST A 0 ACS_NamedExecuteWithResult("girl_shadows")
			GOST A 1
		See:
			GOST A 10 A_GiveInventory("G2_DoNotHurtPlayers", 1)
			GOST A 0 A_JumpIf(ACS_NamedExecuteWithResult("vs_step") == false, "Still")
			See2:
			GOST A 0 A_SpawnItemEx("GirlFootstepR")
			GOST A 10
			GOST A 0 A_JumpIf(ACS_NamedExecuteWithResult("vs_step") == false, "Still2")
			See3:
			GOST A 0 A_SpawnItemEx("GirlFootstepL")
			goto See

		Secondary:
			GOST A 0
			GOST A 0 ACS_NamedExecuteWithResult("vs_step", true)
			GOST A 0 ACS_NamedExecuteWithResult("girl_vs_secondary")
		SuperScary:
			GOST A 0 A_TakeInventory("G2_DoNotHurtPlayers", 1)
			GOST A 1 A_GiveInventory("G2_LightHater",1)
			GOST A 0 //A_GiveToTarget("LightBlink",15)
			GOST A 0 A_FaceTarget
			GOST A 0 ACS_NamedExecuteWithResult("vs_disableControl")
			GOST A 100 A_PlaySoundEx("girl/see","Auto",0,2)
			GOST A 0 ACS_NamedExecuteWithResult("vs_enableControl")
			GOST A 0 A_GiveInventory("G2_DoNotHurtPlayers", 1)
			goto See

		Primary:
			GOST A 0 ACS_NamedExecuteWithResult("vs_step", true)
			GOST A 0 ACS_NamedExecuteWithResult("vs_disableControl")
			GOST A 0 Radius_Quake(2, 25, 0, 5, 0)
			GOST A 0 A_TakeInventory("G2_DoNotHurtPlayers", 1)
			GOST A 0 ACS_NamedExecuteWithResult("girl_vs_primary")
			GOST A 0 A_Recoil(ACS_NamedExecuteWithResult("girl_recoil"))
			GOST A 0 A_PlaySoundEx("Girl/Boo", "Soundslot6")
			GIRL GHIJKLKLKLKLKLJIHG 1 A_Explode(16, 100, XF_NOTMISSILE) 
			GOST A 0
			GOST A 0 ACS_NamedExecuteWithResult("vs_enableControl", true)
			goto See
	}
}

actor TheGirlVsMarker : TheGirl
{
	-FLOORHUGGER
	+THRUACTORS
	+NOBLOCKMAP
	-SOLID
	+NOGRAVITY
	+CLIENTSIDEONLY

	renderstyle Translucent
	alpha 0.35

	States
	{
		Spawn:
			GOST A -1
			loop
	}
}

actor IdleGirl : TheGirl
{
	States
	{
		Spawn:
			GOST A -1
			loop
	}
}