actor Page : CustomInventory 
{
	inventory.pickupmessage "Picked up a page"
	inventory.pickupsound "Page/Pick"
	+COUNTITEM
	scale 0.2
	height 32
	radius 8
	speed 5
	states
	{
		Spawn:
			PMSG A 0
			PMSG A 0 A_Jump(40,"A","B","D","H")
			PMSG A 0 A_Jump(200,"H","D","A","A","A","A","B","B","C","D", "D", "E", "E", "F", "G", "K")
			PMSG A 0 A_Jump(1,"I", "J", "L")
		A:
			PMSG A -1 //bright
			loop
		B:
			PMSG B -1
			loop
		C:
			PMSG C -1
			loop
		D:
			PMSG D -1 
			loop
		E:
			PMSG E -1
			loop
		F:
			PMSG F 0 
			PMSG F 1400
			PMSG F 0 A_PlaySoundEx("Page/Whisper","soundslot5",0,0)
			loop
		G:
			PMSG G -1
			loop
		H:
			PMSG H -1
			loop
		I:
			PMSG I -1
			loop
		J:
			PMSG J 0 A_Wander 
			PMSG J 40 A_SpawnItem("G2_BloodFloor")
			PMSG J 0 A_Wander 
			PMSG J 40 
			PMSG J 0 A_Wander 
			PMSG J 40 
			PMSG J 0 A_Wander 
			PMSG J 40
			loop
		K:
			PMSG K -1
			loop
		L:
			PMSG L -1
			loop
		Pickup:
			TNT1 A 0
			TNT1 A 0 ACS_NamedExecuteWithResult("page_pick")
			stop
	}
}

actor Present : CustomInventory 
{
	inventory.pickupmessage "Picked up a present."
	inventory.pickupsound "Present/Pick"
	+COUNTITEM
	scale 0.45
	height 32
	radius 8
	speed 5
	states
	{
		Spawn:
			PRST A 0
			PRST A 0 A_Jump(256, "A", "B", "D")
		A:
			PRST A -1
			loop
		B:
			PRST B -1
			loop
		C:
			PRST C -1
			loop
		D:
			PRST D -1 
			loop
		Pickup:
			TNT1 A 0
			TNT1 A 0 ACS_NamedExecuteWithResult("page_pick")
			TNT1 A 0 A_SpawnItemEx("G2_PresentLoot")
			stop
	}
}

actor G2_PresentLoot {
	+NOINTERACTION
	+NOGRAVITY

	states {
		Spawn:
			TNT1 A 2
			TNT1 AAAAAAAAAAAAAA 1 A_SpawnItemEx("G2_PresentParticle", Frandom(-16.0, 16.0), Frandom(-16.0, 16.0), Frandom(0.5, 16.0), Frandom(-5.0, 5.0), Frandom(-5.0, 5.0), Frandom(2.0, 16.0), 0, SXF_CLIENTSIDE)
			TNT1 A 10
			TNT1 A 0 A_SpawnItem("LootSpawner")
			stop
	}
}

actor G2_PresentParticle {
	+THRUACTORS
	+MISSILE
	+HEXENBOUNCE
	+CLIENTSIDEONLY
	gravity 0.5

	scale 0.15

	height 4
	radius 4

	renderstyle translucent
	alpha 1.5

	States {
		Spawn:
			PRST A 0
			PRST A 0 A_Jump(256, "A", "B", "D")
		A:
			PRST A 1 A_FadeOut(0.01)
			loop
		B:
			PRST B 1 A_FadeOut(0.01)
			loop
		C:
			PRST C 1 A_FadeOut(0.01)
			loop
		D:
			PRST D 1 A_FadeOut(0.01) 
			loop
	}
}

actor TutorialPage : CustomInventory 31150 
{
	inventory.pickupmessage "Picked up a page"
	inventory.pickupsound "Page/Pick"
	+COUNTITEM
	scale 0.2
	height 32
	radius 8
	speed 5
	states
	{
		Spawn:
			PMSG A -1 //bright
			loop
		Pickup:
			TNT1 A 0
			TNT1 A 0 A_GiveInventory("BatteryLife", 1)
			stop
	}
}
