Actor DarkWanderer {
	Health 0x7FFFFFF
	Radius 20
	Height 56
	Mass 0x7FFFFFF
	MONSTER
	Activation THINGSPEC_NoDeathSpecial|THINGSPEC_ThingTargets
	Tag "Dark Wanderer"
	Alpha 1.0
	Renderstyle Translucent
	Species "Player"
	+THRUSPECIES
	-COUNTKILL
	-SHOOTABLE
	-SOLID
	+USESPECIAL
	+FRIENDLY
	+NODAMAGETHRUST
	+DONTBLAST
	+NOPAIN
	+LOOKALLAROUND
	
	States {
		Spawn:
			
		Idle:
			THOR M 10 A_Look
		Loop
		See:
			THOR M 4
		Loop
		GoBack:
			THOR M 35 A_ChangeFlag("UseSpecial",0)
			TNT1 A 0 A_ChangeFlag("NOCLIP", 1)
			TNT1 A 0 A_ChangeFlag("NOGRAVITY", 1)
			THOR MMMMMMMM 4 A_Setangle(angle - 15)
			THOR NOPMNOPMNOPM 4 A_GiveInventory("DarkWandererMove", 1)
			TNT1 A 0 A_SpawnItemEx("DarkWanderer_Teleport", 16, 0, 52)
			THOR NO 4 A_GiveInventory("DarkWandererMove", 1)
		Stop
		Death:
			TNT1 A 0 A_ChangeFlag("UseSpecial",0)
			THOR MMMMMMMMMM 1 A_FadeOut(0.1)
		Stop
	}
}

Actor DarkWandererMove : DnD_Activator {
	States {
		Pickup:
			TNT1 A 0 A_ChangeVelocity(5 * cos(angle), 5 * sin(angle), 0, CVF_REPLACE)
			TNT1 A 0 A_FadeOut(0.05)
			TNT1 A 0 A_SpawnItemEx("DarkWanderer_Step", frandom(-8 , 8), frandom(-16, 16), -8)
		Stop
	}
}

Actor DarkWanderer_Step {
	Renderstyle Add
	Alpha 1.0
	+NOINTERACTION
	+CLIENTSIDEONLY
	States {
		Spawn:
			FX18 HIJKL 3 Bright
		Stop
	}
}

Actor DarkWanderer_Teleport {
	Renderstyle Translucent
	Alpha 1.0
	Scale 1.175
	+NOINTERACTION
	+CLIENTSIDEONLY
	States {
		Spawn:
			TNT1 A 0 NoDelay A_PlaySound("DarkWanderer/Disappear")
			X127 ABCDEFGHIJKLMNO 3 Bright A_FadeOut(0.0375)
		Stop
	}
}

Actor DarkWandererFirstTime : PowerDamage {
	damagefactor "normal", 1.0
	powerup.duration 0x7FFFFFFF
}

Actor NPC_Trigger_Cooldown : PowerDamage {
	damagefactor "normal", 1.0
	powerup.duration -1
}

Actor DarkWanderer_Artifact : CustomInventory {
	inventory.maxamount 1
	inventory.pickupmessage "\c[Y5]ARTIFACT FOUND!"
	inventory.pickupsound "Items/NPCArtifactPick"
	Height 20
	Radius 16
	+INVENTORY.NEVERRESPAWN
	+FLOATBOB
	States {
		Spawn:
			TNT1 A 0 NoDelay A_PlaySound("Items/NPCArtifactLoop", CHAN_BODY, 1.0, true)
		SpawnLoop:
			NAR0 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 Bright A_SpawnItemEx("DarkWanderer_ArtifactFX", random(-32, 32), random(-32, 32), random(0, 8), 0, 0, random(2,8), 0, SXF_CLIENTSIDE, 0)
		Loop
		Pickup:
			TNT1 A 0 ACS_NamedExecuteAlways("DnD NPC Artifact Pickup", 0)
		Stop
	}
}

Actor DarkWanderer_ArtifactFX : SoulSphereFX {
	Translation "0:255=%[0.00,0.00,0.00]:[1.46,0.30,1.84]"
}

Actor NPC_Offer_Accepted : DnD_Boolean { }
Actor NPC_Offer_Declined : DnD_Boolean { }

Actor ReceivedDialogID : DnD_Info { }

Actor DarkWanderer_Boss : DnD_BaseRangedMonster_NoRes {

}