From 142278a8186725f65d4ac2fe8add1ad965f365ee Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Tue, 25 Oct 2016 13:29:58 +0200 Subject: [PATCH] - fixed incomplete commit for bounce flags - fixed flag clearing in new function. --- src/p_actionfunctions.cpp | 10 +++++----- src/scripting/thingdef_data.cpp | 9 +++++---- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/p_actionfunctions.cpp b/src/p_actionfunctions.cpp index 3d9ccb326..f5d7251c3 100644 --- a/src/p_actionfunctions.cpp +++ b/src/p_actionfunctions.cpp @@ -4867,13 +4867,13 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_ChangeLinkFlags) if (blockmap != -1) { - if (blockmap == 0) self->flags &= MF_NOBLOCKMAP; + if (blockmap == 0) self->flags &= *MF_NOBLOCKMAP; else self->flags |= MF_NOBLOCKMAP; } if (sector != -1) { - if (sector == 0) self->flags &= MF_NOSECTOR; + if (sector == 0) self->flags &= *MF_NOSECTOR; else self->flags |= MF_NOSECTOR; } @@ -4899,19 +4899,19 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_ChangeCountFlags) if (kill != -1) { - if (kill == 0) self->flags &= MF_COUNTKILL; + if (kill == 0) self->flags &= ~MF_COUNTKILL; else self->flags |= MF_COUNTKILL; } if (item != -1) { - if (item == 0) self->flags &= MF_COUNTITEM; + if (item == 0) self->flags &= ~MF_COUNTITEM; else self->flags |= MF_COUNTITEM; } if (secret != -1) { - if (secret == 0) self->flags5 &= MF5_COUNTSECRET; + if (secret == 0) self->flags5 &= ~MF5_COUNTSECRET; else self->flags5 |= MF5_COUNTSECRET; } if (self->CountsAsKill() && self->health > 0) ++level.total_monsters; diff --git a/src/scripting/thingdef_data.cpp b/src/scripting/thingdef_data.cpp index 4622e764c..a4815cb33 100644 --- a/src/scripting/thingdef_data.cpp +++ b/src/scripting/thingdef_data.cpp @@ -279,11 +279,7 @@ static FFlagDef ActorFlagDefs[]= DEFINE_FLAG(RF, MASKROTATION, AActor, renderflags), DEFINE_FLAG(RF, ABSMASKANGLE, AActor, renderflags), DEFINE_FLAG(RF, ABSMASKPITCH, AActor, renderflags), -}; -// These won't be accessible through bitfield variables -static FFlagDef MoreFlagDefs[] = -{ // Bounce flags DEFINE_FLAG2(BOUNCE_Walls, BOUNCEONWALLS, AActor, BounceFlags), DEFINE_FLAG2(BOUNCE_Floors, BOUNCEONFLOORS, AActor, BounceFlags), @@ -299,6 +295,11 @@ static FFlagDef MoreFlagDefs[] = DEFINE_FLAG2(BOUNCE_MBF, MBFBOUNCER, AActor, BounceFlags), DEFINE_FLAG2(BOUNCE_AutoOffFloorOnly, BOUNCEAUTOOFFFLOORONLY, AActor, BounceFlags), DEFINE_FLAG2(BOUNCE_UseBounceState, USEBOUNCESTATE, AActor, BounceFlags), +}; + +// These won't be accessible through bitfield variables +static FFlagDef MoreFlagDefs[] = +{ // Deprecated flags. Handling must be performed in HandleDeprecatedFlags DEFINE_DEPRECATED_FLAG(FIREDAMAGE),