
//*************** Here are all of the Corvette specific spawners ***************

//==============================================================================
//=============================== BACKPACK STUFF ===============================
//==============================================================================

Actor ClassicBackpackSpawner : RandomSpawner
{
	DropItem "CBackpackGroup1"
	DropItem "CBackpackGroup2"
	DropItem "CBackpackGroup3"
	DropItem "CBackpackGroup4"
	DropItem "CBackpackGroup5"
	DropItem "CBackpackGroup6"
	DropItem "CBackpackGroup7"
	DropItem "CBackpackGroup8"
	DropItem "CBackpackGroup9"
	DropItem "CBackpackGroup10"
	DropItem "CBackpackGroup11"
	DropItem "CBackpackGroup12"
}

ACTOR CBackpackGroup1 : CustomInventory
{
	+FLOATBOB
	Inventory.PickupSound "PICUP5"
	Inventory.PickupMessage "This bag of holding seems to have a few items already in it..."
	
	States
	{
		Spawn:
			BAGH A 1 Bright A_SpawnItemEx("WingsOfWrathFlare",0,0,31,0,0,0,0,SXF_NOCHECKPOSITION)
			Loop
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("CBottleBundle", 1)
			TNT1 A 0 A_GiveInventory ("AmuletOfProtection", 1)
			TNT1 A 0 A_GiveInventory ("BrutalTorch",1)		
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup2 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BrutalArtiTeleport",1)
			TNT1 A 0 A_GiveInventory ("BrutalShadowSphere",1)
			TNT1 A 0 A_GiveInventory ("BlastVest", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup3 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("AdrenalineBooster", 1)
			TNT1 A 0 A_GiveInventory ("BrutalArtiFly", 1)
			TNT1 A 0 A_GiveInventory ("HDKrater",1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup4 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BrutalChickenDevice", 1)
			TNT1 A 0 A_GiveInventory ("CBottleBundle", 1)
			//TNT1 A 0 A_GiveInventory ("RoosterRoaster", 1)
			TNT1 A 0 A_GiveInventory ("ClassicTomeofPower", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup5 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("CBottleBundle", 1)
			TNT1 A 0 A_GiveInventory ("BrutalArtiTeleport",1)
			TNT1 A 0 A_GiveInventory ("AdrenalineBooster", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup6 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BrutalChickenDevice", 1)
			TNT1 A 0 A_GiveInventory ("AmuletOfProtection", 1)
			TNT1 A 0 A_GiveInventory ("BrutalShadowSphere",1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup7 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BrutalArtiFly", 1)
			TNT1 A 0 A_GiveInventory ("CBottleBundle", 1)
			//TNT1 A 0 A_GiveInventory ("RoosterRoaster", 1)
			TNT1 A 0 A_GiveInventory ("BrutalTorch",1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup8 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BlastVest", 1)
			TNT1 A 0 A_GiveInventory ("HDKrater",1)
			TNT1 A 0 A_GiveInventory ("ClassicTomeofPower", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup9 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("CBottleBundle", 1)
			TNT1 A 0 A_GiveInventory ("HDKrater",1)
			TNT1 A 0 A_GiveInventory ("BrutalChickenDevice", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup10 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BrutalArtiFly", 1)
			TNT1 A 0 A_GiveInventory ("BlastVest", 1)
			TNT1 A 0 A_GiveInventory ("AmuletOfProtection", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup11 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("AdrenalineBooster", 1)
			TNT1 A 0 A_GiveInventory ("CBottleBundle", 1)
			//TNT1 A 0 A_GiveInventory ("RoosterRoaster", 1)
			TNT1 A 0 A_GiveInventory ("BrutalShadowSphere",1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR CBackpackGroup12 : CBackpackGroup1
{
	States
	{
		Pickup:
			TNT1 A 0 A_GiveInventory ("BrutalBagOfHolding", 1)
			TNT1 A 0 A_GiveInventory ("BrutalTorch",1)
			TNT1 A 0 A_GiveInventory ("BrutalArtiTeleport",1)
			TNT1 A 0 A_GiveInventory ("ClassicTomeofPower", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (100 * GetCvar("ExpModifier")))
			stop
	}
}

//==============================================================================
//========================= Corvete Specific Artifacts =========================
//==============================================================================

ACTOR CBottleBundle : CustomInventory
{
	+FLOATBOB
	+NOGRAVITY
	-INVENTORY.INVBAR
	+INVENTORY.PICKUPFLASH
	+INVENTORY.FANCYPICKUPSOUND
	Inventory.PickupSound "PICUP5"
	Inventory.InterHubAmount 16

	States
	{
		Spawn:
			TNT1 A 0
			Stop
		Pickup:
			TNT1 A 0
			{
				If (GetCVAR("WildBottles") == 0)
				{
					A_GiveInventory("ClassicExplosiveBottle",1);
					A_GiveInventory("ClassicDroppedBottle",1);
					A_GiveInventory("ClassicPoisonBottle",1);
					A_Print("Picked up one of each Flechette");
				}
				If (GetCVAR("WildBottles") == 1)
				{
					A_GiveInventory("ClassicExplosiveBottle",1);
					A_Print("Picked up a Green Flechette");
				}
				If (GetCVAR("WildBottles") == 2)
				{
					A_GiveInventory("ClassicDroppedBottle",1);
					A_Print("Picked up a Red Flechette");
				}
				If (GetCVAR("WildBottles") == 3)
				{
					A_GiveInventory("ClassicPoisonBottle",1);
					A_Print("Picked up a Blue Flechette");
				}
				If (GetCVAR("WildBottles") == 4)
				{
					A_GiveInventory("ClassicExplosiveBottle",1);
					A_GiveInventory("ClassicDroppedBottle",1);
					A_Print("Picked up both a Green and Blue Flechette");
				}
				If (GetCVAR("WildBottles") == 5)
				{
					A_GiveInventory("ClassicExplosiveBottle",1);
					A_GiveInventory("ClassicPoisonBottle",1);
					A_Print("Picked up both a Green and Red Flechette");
				}
				If (GetCVAR("WildBottles") == 6)
				{
					A_GiveInventory("ClassicDroppedBottle",1);
					A_GiveInventory("ClassicPoisonBottle",1);
					A_Print("Picked up both a Red and Blue Flechette");
				}
			}
			stop
	}
}

ACTOR BlastFoil : CustomInventory
{
	+FLOATBOB
	+COUNTITEM
	+INVENTORY.INVBAR
	+INVENTORY.PICKUPFLASH
	+INVENTORY.FANCYPICKUPSOUND
	-INVENTORY.INVBAR
	Inventory.MaxAmount 10
	Inventory.Icon "ABV1A0"
	Inventory.PickupSound "PICUP5"
	Inventory.PickupMessage "Protective clothing for dealing with explosives"
	Inventory.InterHubAmount 3
	
	States
	{
		Spawn:
			ARM1 A 1 Bright
			loop	
		Pickup:
			TNT1 A 0 A_GiveInventory("BlastVest",1)
			TNT1 A 0 A_GiveInventory ("Experience", (50 * GetCvar("ExpModifier")))
			Stop	
	}
}

ACTOR AmuletSpawner : CustomInventory
{
	+FLOATBOB
	-INVENTORY.INVBAR
	Inventory.PickupSound "PICUP5"
	Inventory.PickupMessage "May you be granted protection from the elements..."
	
	States
	{
		Spawn:
			ARM4 B -1 Bright A_SpawnItemEx("EtherealFlare1",0,0,30,0,0,0,0,SXF_NOCHECKPOSITION)
			loop
		Pickup:
			TNT1 A 0 A_GiveInventory("AmuletOfProtection",1)
			TNT1 A 0 A_GiveInventory ("Experience", (50 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR TomeSpawner : CustomInventory
{
	+COUNTITEM
	+FLOATBOB
	-INVENTORY.INVBAR
	Inventory.PickupSound "PICUP5"
	Inventory.PickupMessage "Picked up a Tome of Power!	Its magical energy seems to resonate with your weapons."
	
	States
	{
		Spawn:
			PWBK AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPP 1 Bright A_SpawnItemEx("TomeOfPowerFlare",0,0,29,0,0,0,0,SXF_NOCHECKPOSITION)
			Loop
		Pickup:
			TNT1 A 0 A_GiveInventory ("ClassicTomeofPower", 1)
			TNT1 A 0 A_GiveInventory ("Experience", (50 * GetCvar("ExpModifier")))
			stop
	}
}

ACTOR BrutalTorch : CustomInventory
{
	+COUNTITEM
	+FLOATBOB
	+INVENTORY.PICKUPFLASH
	-INVENTORY.INVBAR
	Inventory.Icon "ARTITRCH"
	Inventory.PickupSound "PICUP5"
	Inventory.PickupMessage "Got a Torch to illuminate the darkness!"
	Inventory.InterHubAmount 3
	Tag "$TAG_TORCHFUEL"
	
	States
	{
		Spawn:
			TRCH ABC 1 Bright A_SpawnItemEx("WingsOfWrathFlare",0,0,31,0,0,0,0,SXF_NOCHECKPOSITION)
			Loop
		Pickup:
			TNT1 A 0 A_GiveInventory("ArtiTorch",1)
			TNT1 A 0 A_GiveInventory ("Experience", (50 * GetCvar("ExpModifier")))
			Stop
	}
}

//==============================================================================
//========================== Corvete Specific Spawners =========================
//==============================================================================

ACTOR CBottleSpawner : RandomSpawner
{
	Dropitem "ClassicGreenSpawner"
	Dropitem "ClassicRedSpawner"
	Dropitem "ClassicBlueSpawner"
}

ACTOR ClassicGRSpawner : RandomSpawner
{
	Dropitem "ClassicGreenSpawner"
	Dropitem "ClassicRedSpawner"
}
ACTOR ClassicGBSpawner : RandomSpawner
{
	Dropitem "ClassicGreenSpawner"
	Dropitem "ClassicBlueSpawner"
}
ACTOR ClassicRBSpawner : RandomSpawner
{
	Dropitem "ClassicRedSpawner"
	Dropitem "ClassicBlueSpawner"
}