
/*

The ACS tasked with checking for room does the following:
	1. clears the caller's SOLID flag and sets THRUACTORS and GHOST flags
	2. tries spawning the checker
	3. if failed, restores the caller's SOLID, THRUACTORS and GHOST flags
	4. if succeeded. deletes the checker

<never used as replacements>
	Cacodemon_
	ZombieHelicopter
	TehLostSoul
	Nazi
	BullDemon
	
<require no checking, being standard humanoid size> 
	<any evil marines or maradeurs>
	FBD_UberSniper
	FBD_UberZoldat
	ArachnorbChe
	ChaingunGuy1
	FBD_Mummy
	ShotgunGuy1
	RifleZombie
	Spectro -- because he only ever replaces BullDemon

VilePotpourriChecker 1
	TehArchvile
	RaiseableArchvile
	VileSoulReaver
	ArchDevil
CyberPotpourriChecker 2
	TheCyberdemon
	CyberdemonChad
	CyberdemonGrizzly
KnightPotpourriChecker 3
	HellKnight2
BaronPotpourriChecker 4
	BaronofHell2
BelphegorPotpourriChecker 5
	Belphegor2
	BossBelphegor
MancubusPotpourriChecker 6
	Mancubus
	Volcabus
MastermindPotpourriChecker 7	
	TheSpiderMastermind
	MightyMastermind
	SupremeMastermind
PEPotpourriChecker 8
	PainElemental1
RevenantPotpourriChecker 9
	Revenant1
ArachnotronPotpourriChecker 10
	Arachnotron1
	Arachnotron2
TankPotpourriChecker 11
	ZombieMainBattleTank
	ZombieArtilleryTank
MechPotpourriChecker 12
	ZombieMech
DukePotpourriChecker 13
	DukeOfHell
JuggernautPotpourriChecker 14
	Juggernaut
	
	
		PotPourriSwap:
			TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
			TNT1 A 0 A_ChangeFlag("SHOOTABLE", 0)
			KYPP A 70 // a two-second delay to allow re-randomizing on loading an auto-save
			TNT1 A 0 A_Jumpif(!CallAcs("GetPotPourriChance", 33), "PotPourriNoSwap")
			TNT1 A 0 A_ChangeFlag("SOLID", 0)
			TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)	
			TNT1 A 0 A_SpawnItemEx ("",0,0,0, 0,0,0, 0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS | SXF_TRANSFERSPECIAL | SXF_CLEARCALLERSPECIAL | SXF_CLEARCALLERTID  ,0, tid)
			TNT1 A 30
			Stop
		PotPourriNoSwap:
			TNT1 A 0 A_ChangeFlag("SHOOTABLE", 1)
			TNT1 A 0 A_ChangeFlag("COUNTKILL", 1)
			Goto PotPourriCancel			
	
 A_JumpIf(CallAcs("GetPotPourri"), "PotPourriSwap")
			TNT1 A 0 
			
			TNT1 A 0 A_Jump(64, 2) // bosses have has 75% replacement probability instead of normal 33%
			TNT1 A 0 A_JumpIf(CallAcs("GetPotPourri"), "PotPourriSwap")
			
			
*/	