From ab60c1afccb2e53ca346c2079f8fb7779221cd08 Mon Sep 17 00:00:00 2001 From: Randy Heit Date: Tue, 20 Mar 2012 03:00:33 +0000 Subject: [PATCH] - Changed CheckActorFloor/CeilingTexture to only check 3D floors that exist and are solid. SVN r3459 (trunk) --- src/p_acs.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/p_acs.cpp b/src/p_acs.cpp index 03729e28f..4eeec9735 100644 --- a/src/p_acs.cpp +++ b/src/p_acs.cpp @@ -3199,8 +3199,9 @@ bool DLevelScript::DoCheckActorTexture(int tid, AActor *activator, int string, b for (i = 0; i < numff; ++i) { F3DFloor *ff = sec->e->XFloor.ffloors[i]; - - if (actor->z >= ff->top.plane->ZatPoint(actor->x, actor->y)) + + if ((ff->flags & (FF_EXISTS | FF_SOLID)) == (FF_EXISTS | FF_SOLID) && + actor->z >= ff->top.plane->ZatPoint(actor->x, actor->y)) { // This floor is beneath our feet. secpic = *ff->top.texture; break; @@ -3219,7 +3220,8 @@ bool DLevelScript::DoCheckActorTexture(int tid, AActor *activator, int string, b { F3DFloor *ff = sec->e->XFloor.ffloors[i]; - if (z <= ff->bottom.plane->ZatPoint(actor->x, actor->y)) + if ((ff->flags & (FF_EXISTS | FF_SOLID)) == (FF_EXISTS | FF_SOLID) && + z <= ff->bottom.plane->ZatPoint(actor->x, actor->y)) { // This floor is above our eyes. secpic = *ff->bottom.texture; break;