diff --git a/src/g_shared/a_pickups.cpp b/src/g_shared/a_pickups.cpp index 8303aea39..37e4597c9 100644 --- a/src/g_shared/a_pickups.cpp +++ b/src/g_shared/a_pickups.cpp @@ -391,7 +391,7 @@ DEFINE_ACTION_FUNCTION(AActor, A_RestoreSpecialPosition) // initial spawn. self->z = self->floorz; } - if (self->z + self->height > self->ceilingz) + if ((self->flags & MF_SOLID) && (self->z + self->height > self->ceilingz)) { // Do the same for the ceiling. self->z = self->ceilingz - self->height; }