diff --git a/src/g_demo.c b/src/g_demo.c
index c97dbcf9ee0559e23e6635e4a62f2de1cb843af2..01bc84a40ab79f3dbe4d870d070e869d05f88e8e 100644
--- a/src/g_demo.c
+++ b/src/g_demo.c
@@ -2212,7 +2212,7 @@ void G_AddGhost(char *defdemoname)
 		gh->mo->angle = FixedAngle(mthing->angle << FRACBITS);
 		f = gh->mo->floorz;
 		c = gh->mo->ceilingz - mobjinfo[MT_PLAYER].height;
-		if (!!(mthing->options & MTF_AMBUSH) ^ !!(mthing->options & MTF_OBJECTFLIP))
+		if (!!(mthing->args[0]) ^ !!(mthing->options & MTF_OBJECTFLIP))
 		{
 			z = c - offset;
 			if (z < f)
diff --git a/src/m_cheat.c b/src/m_cheat.c
index ddc1f6f29793e42265e163a6b3ceff64a95d37f7..b5c3b6563529131e3c3ddc61ca1f89b0153f7792 100644
--- a/src/m_cheat.c
+++ b/src/m_cheat.c
@@ -539,7 +539,7 @@ void Command_Teleport_f(void)
 
 			// Flagging a player's ambush will make them start on the ceiling
 			// Objectflip inverts
-			if (!!(mt->options & MTF_AMBUSH) ^ !!(mt->options & MTF_OBJECTFLIP))
+			if (!!(mt->args[0]) ^ !!(mt->options & MTF_OBJECTFLIP))
 				intz = ss->sector->ceilingheight - p->mo->height - offset;
 			else
 				intz = ss->sector->floorheight + offset;
diff --git a/src/p_mobj.c b/src/p_mobj.c
index 7c44ae8da3fb10f5df174070de612375f97d80a9..e97719ddbf970b3d61408a623e2be1a7dd4ca0b2 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -11652,7 +11652,7 @@ void P_MovePlayerToSpawn(INT32 playernum, mapthing_t *mthing)
 			mobj->eflags |= MFE_VERTICALFLIP;
 			mobj->flags2 |= MF2_OBJECTFLIP;
 		}
-		if (mthing->options & MTF_AMBUSH)
+		if (mthing->args[0])
 			P_SetPlayerMobjState(mobj, S_PLAY_FALL);
 		else if (metalrecording)
 			P_SetPlayerMobjState(mobj, S_PLAY_WAIT);