diff --git a/src/p_mobj.c b/src/p_mobj.c
index b6dc04f6fed54c0325bb8e09118c26f17f6ac402..b8dca52a6dbf2d942ea46c1bf325d2b574f35f21 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -13077,15 +13077,15 @@ static mobj_t *P_SpawnMobjFromMapThing(mapthing_t *mthing, fixed_t x, fixed_t y,
 	mobj = P_SpawnMobj(x, y, z, i);
 	mobj->spawnpoint = mthing;
 
+	P_SetScale(mobj, mthing->scale);
+	mobj->destscale = mthing->scale;
+
 	if (!P_SetupSpawnedMapThing(mthing, mobj, &doangle))
 		return mobj;
 
 	if (doangle)
 		mobj->angle = FixedAngle(mthing->angle << FRACBITS);
 
-	P_SetScale(mobj, mthing->scale);
-	mobj->destscale = mthing->scale;
-
 	mthing->mobj = mobj;
 
 	// ignore MTF_ flags and return early