diff --git a/source/games/sw/src/ai.cpp b/source/games/sw/src/ai.cpp index ed0a0821a..95f0efa63 100644 --- a/source/games/sw/src/ai.cpp +++ b/source/games/sw/src/ai.cpp @@ -955,7 +955,7 @@ int FindTrackToPlayer(DSWActor* actor) { actor->user.point = point; actor->user.track_dir = track_dir; - SET(Track[track].flags, TF_TRACK_OCCUPIED); + Track[track].flags |= (TF_TRACK_OCCUPIED); return track; } @@ -994,7 +994,7 @@ int FindTrackAwayFromPlayer(DSWActor* actor) { actor->user.point = point; actor->user.track_dir = track_dir; - SET(Track[track].flags, TF_TRACK_OCCUPIED); + Track[track].flags |= (TF_TRACK_OCCUPIED); return track; } @@ -1034,7 +1034,7 @@ int FindWanderTrack(DSWActor* actor) { actor->user.point = point; actor->user.track_dir = track_dir; - SET(Track[track].flags, TF_TRACK_OCCUPIED); + Track[track].flags |= (TF_TRACK_OCCUPIED); return track; } diff --git a/source/games/sw/src/break.cpp b/source/games/sw/src/break.cpp index de7e71673..421bf415c 100644 --- a/source/games/sw/src/break.cpp +++ b/source/games/sw/src/break.cpp @@ -953,7 +953,7 @@ int AutoBreakSprite(DSWActor* breakActor, int type) SpawnBreakFlames(breakActor); RESET(breakActor->spr.cstat, CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); - SET(breakActor->spr.cstat, CSTAT_SPRITE_INVISIBLE); + breakActor->spr.cstat |= CSTAT_SPRITE_INVISIBLE; // Kill sound if one is attached DeleteNoSoundOwner(breakActor); KillBreakSprite(breakActor); diff --git a/source/games/sw/src/cheats.cpp b/source/games/sw/src/cheats.cpp index 294983213..8bf639dc1 100644 --- a/source/games/sw/src/cheats.cpp +++ b/source/games/sw/src/cheats.cpp @@ -199,8 +199,7 @@ static void WeaponCheat(int player) if (!TEST(p->Flags, PF_TWO_UZI)) { - SET(p->Flags, PF_TWO_UZI); - SET(p->Flags, PF_PICKED_UP_AN_UZI); + p->Flags |= PF_TWO_UZI | PF_PICKED_UP_AN_UZI; } // ALL WEAPONS diff --git a/source/games/sw/src/draw.cpp b/source/games/sw/src/draw.cpp index 8c1b0f022..9c7372ae1 100644 --- a/source/games/sw/src/draw.cpp +++ b/source/games/sw/src/draw.cpp @@ -299,7 +299,7 @@ void DoShadows(tspritetype* tsprite, int& spritesortcnt, tspriteptr_t tsp, int v } tSpr->shade = 127; - SET(tSpr->cstat, CSTAT_SPRITE_TRANSLUCENT); + tSpr->cstat |= CSTAT_SPRITE_TRANSLUCENT; loz = ownerActor->user.loz; if (ownerActor->user.lowActor) @@ -418,7 +418,7 @@ void DoMotionBlur(tspritetype* tsprite, int& spritesortcnt, tspritetype const * { tspriteptr_t tSpr = &tsprite[spritesortcnt]; *tSpr = *tsp; - SET(tSpr->cstat, CSTAT_SPRITE_TRANSLUCENT|CSTAT_SPRITE_TRANS_FLIP); + tSpr->cstat |= CSTAT_SPRITE_TRANSLUCENT|CSTAT_SPRITE_TRANS_FLIP; tSpr->pos.X += dx; tSpr->pos.Y += dy; diff --git a/source/games/sw/src/jsector.cpp b/source/games/sw/src/jsector.cpp index bf6a71149..52692f0c7 100644 --- a/source/games/sw/src/jsector.cpp +++ b/source/games/sw/src/jsector.cpp @@ -191,7 +191,7 @@ void JS_SpriteSetup(void) itActor->user.ActorActionFunc = GenerateDrips; change_actor_stat(itActor, STAT_NO_STATE); - SET(itActor->spr.cstat, CSTAT_SPRITE_INVISIBLE); + itActor->spr.cstat |= CSTAT_SPRITE_INVISIBLE; } break; // Sprites in editart that should play ambient sounds @@ -237,7 +237,7 @@ void JS_SpriteSetup(void) case 2608: case 2616: //case 3834: - SET(wal.extra, WALLFX_DONT_STICK); + wal.extra |= WALLFX_DONT_STICK; break; } } diff --git a/source/games/sw/src/jweapon.cpp b/source/games/sw/src/jweapon.cpp index d68606c84..7849784b7 100644 --- a/source/games/sw/src/jweapon.cpp +++ b/source/games/sw/src/jweapon.cpp @@ -1080,7 +1080,7 @@ int DoCaltrops(DSWActor* actor) { actor->user.xchange = actor->user.ychange = 0; actor->spr.extra |= (SPRX_BREAKABLE); - SET(actor->spr.cstat,CSTAT_SPRITE_BREAKABLE); + actor->spr.cstat |= (CSTAT_SPRITE_BREAKABLE); ChangeState(actor, s_CaltropsStick); return true; } @@ -1118,7 +1118,7 @@ int DoCaltrops(DSWActor* actor) { actor->user.xchange = actor->user.ychange = 0; actor->spr.extra |= (SPRX_BREAKABLE); - SET(actor->spr.cstat,CSTAT_SPRITE_BREAKABLE); + actor->spr.cstat |= (CSTAT_SPRITE_BREAKABLE); ChangeState(actor, s_CaltropsStick); return true; } diff --git a/source/games/sw/src/mytypes.h b/source/games/sw/src/mytypes.h index 0524f51a9..3a0390a6b 100644 --- a/source/games/sw/src/mytypes.h +++ b/source/games/sw/src/mytypes.h @@ -56,7 +56,6 @@ Prepared for public release: 03/28/2005 - Charlie Wiederhold, 3D Realms */ #define TEST(flags,mask) ((flags) & (mask)) -#define SET(flags,mask) ((flags) |= (mask)) #define RESET(flags,mask) ((flags) &= ~(mask)) #define FLIP(flags,mask) ((flags) ^= (mask)) diff --git a/source/games/sw/src/panel.cpp b/source/games/sw/src/panel.cpp index c0cb351b7..3750adfd0 100644 --- a/source/games/sw/src/panel.cpp +++ b/source/games/sw/src/panel.cpp @@ -1773,10 +1773,10 @@ void pSpawnUziReload(PANEL_SPRITEp oclip) PANEL_SPRITEp nclip; nclip = pSpawnSprite(oclip->PlayerP, ps_UziReload, PRI_BACK, oclip->x, UZI_RELOAD_YOFF); - SET(nclip->flags, PANF_WEAPON_SPRITE); + nclip->flags |= PANF_WEAPON_SPRITE; if (TEST(oclip->flags, PANF_XFLIP)) - SET(nclip->flags, PANF_XFLIP); + nclip->flags |= PANF_XFLIP; // move Reload in oposite direction of clip nclip->ang = NORM_ANGLE(oclip->ang + 1024); @@ -2031,7 +2031,7 @@ PANEL_SPRITEp InitWeaponUzi2(PANEL_SPRITEp uzi_orig) if (pp->WpnUziType == 1 || pp->CurWpn->sibling || TEST(pp->Flags, PF_WEAPON_RETRACT)) return nullptr; // NOTE: PRIMARY is ONLY set when there is a powerup - SET(uzi_orig->flags, PANF_PRIMARY); + uzi_orig->flags |= PANF_PRIMARY; // Spawning a 2nd uzi, set weapon mode pp->WpnUziType = 0; // 0 is up, 1 is retract @@ -2785,11 +2785,11 @@ bool pShotgunOverlays(PANEL_SPRITEp psp) { case 0: psp->over[SHOTGUN_AUTO_NUM].pic = -1; - SET(psp->over[SHOTGUN_AUTO_NUM].flags, psf_ShadeNone); + psp->over[SHOTGUN_AUTO_NUM].flags |= (psf_ShadeNone); return false; case 1: psp->over[SHOTGUN_AUTO_NUM].pic = SHOTGUN_AUTO; - SET(psp->over[SHOTGUN_AUTO_NUM].flags, psf_ShadeNone); + psp->over[SHOTGUN_AUTO_NUM].flags |= (psf_ShadeNone); return false; } return false; @@ -3753,7 +3753,7 @@ void SpawnOnFire(PLAYERp pp) while (x < 320) { fire = pSpawnSprite(pp, &ps_OnFire[RANDOM_P2(8<<8)>>8], PRI_FRONT, x, ON_FIRE_Y_BOT); - SET(fire->flags, PANF_WEAPON_SPRITE); + fire->flags |= PANF_WEAPON_SPRITE; x += tileWidth(fire->picndx); } } @@ -4086,7 +4086,7 @@ bool pMicroOverlays(PANEL_SPRITEp psp) case 0: psp->over[MICRO_SIGHT_NUM].pic = MICRO_SIGHT; psp->over[MICRO_SHOT_NUM].pic = MICRO_SHOT_1; - SET(psp->over[MICRO_SHOT_NUM].flags, psf_ShadeNone); + psp->over[MICRO_SHOT_NUM].flags |= (psf_ShadeNone); psp->over[MICRO_HEAT_NUM].pic = -1; return false; case 1: @@ -4094,7 +4094,7 @@ bool pMicroOverlays(PANEL_SPRITEp psp) { psp->over[MICRO_SIGHT_NUM].pic = MICRO_SIGHT; psp->over[MICRO_SHOT_NUM].pic = MICRO_SHOT_1; - SET(psp->over[MICRO_SHOT_NUM].flags, psf_ShadeNone); + psp->over[MICRO_SHOT_NUM].flags |= (psf_ShadeNone); ASSERT(psp->PlayerP->WpnRocketHeat < 6); @@ -4104,7 +4104,7 @@ bool pMicroOverlays(PANEL_SPRITEp psp) { psp->over[MICRO_SIGHT_NUM].pic = MICRO_SIGHT; psp->over[MICRO_SHOT_NUM].pic = MICRO_SHOT_1; - SET(psp->over[MICRO_SHOT_NUM].flags, psf_ShadeNone); + psp->over[MICRO_SHOT_NUM].flags |= (psf_ShadeNone); psp->over[MICRO_HEAT_NUM].pic = -1; } @@ -4114,7 +4114,7 @@ bool pMicroOverlays(PANEL_SPRITEp psp) psp->over[MICRO_HEAT_NUM].pic = -1; psp->over[MICRO_SHOT_NUM].pic = MICRO_SHOT_20; - SET(psp->over[MICRO_SHOT_NUM].flags, psf_ShadeNone); + psp->over[MICRO_SHOT_NUM].flags |= (psf_ShadeNone); psp->over[MICRO_HEAT_NUM].flags |= (psf_ShadeNone); return true; } @@ -4622,7 +4622,7 @@ void SpawnHeartBlood(PANEL_SPRITEp psp) blood->y = psp->y + hsp->yoff; blood->oy = blood->y; blood->xspeed = hsp->lo_xspeed + (RandomRange((hsp->hi_xspeed - hsp->lo_xspeed)>>4) << 4); - SET(blood->flags, PANF_WEAPON_SPRITE); + blood->flags |= (PANF_WEAPON_SPRITE); blood->scale = 20000 + RandomRange(50000 - 20000); @@ -4657,7 +4657,7 @@ void SpawnSmallHeartBlood(PANEL_SPRITEp psp) blood->y = psp->y + hsp->yoff; blood->oy = blood->y; blood->xspeed = hsp->lo_xspeed + (RandomRange((hsp->hi_xspeed - hsp->lo_xspeed)>>4) << 4); - SET(blood->flags, PANF_WEAPON_SPRITE); + blood->flags |= (PANF_WEAPON_SPRITE); blood->scale = 10000 + RandomRange(30000 - 10000); diff --git a/source/games/sw/src/player.cpp b/source/games/sw/src/player.cpp index 83c8db2b2..bf6283449 100644 --- a/source/games/sw/src/player.cpp +++ b/source/games/sw/src/player.cpp @@ -6019,13 +6019,13 @@ void DoPlayerDeathBounce(PLAYERp pp) RESET(plActor->spr.cstat, CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); NewStateGroup(pp->actor, sg_PlayerHead); plActor->user.slide_vel = 0; - SET(plActor->user.Flags, SPR_BOUNCE); + plActor->user.Flags |= (SPR_BOUNCE); return; } - SET(plActor->user.Flags, SPR_BOUNCE); + plActor->user.Flags |= (SPR_BOUNCE); pp->jump_speed = -300; plActor->user.slide_vel >>= 2; plActor->user.slide_ang = NORM_ANGLE((RANDOM_P2(64<<8)>>8) - 32); diff --git a/source/games/sw/src/rooms.cpp b/source/games/sw/src/rooms.cpp index c8bc8ebc5..2b85ab726 100644 --- a/source/games/sw/src/rooms.cpp +++ b/source/games/sw/src/rooms.cpp @@ -95,7 +95,7 @@ void SetWallWarpHitscan(sectortype* sect) do { if (wall_num->twoSided()) - SET(wall_num->cstat, CSTAT_WALL_WARP_HITSCAN); + wall_num->cstat |= (CSTAT_WALL_WARP_HITSCAN); wall_num = wall_num->point2Wall(); } while (wall_num != start_wall); diff --git a/source/games/sw/src/sector.cpp b/source/games/sw/src/sector.cpp index 24190b298..f987ff0ae 100644 --- a/source/games/sw/src/sector.cpp +++ b/source/games/sw/src/sector.cpp @@ -96,12 +96,12 @@ void SetSectorWallBits(sectortype* sect, int bit_mask, bool set_sectwall, bool s do { if (set_sectwall) - SET(wall_num->extra, bit_mask); + wall_num->extra |= bit_mask; if (set_nextwall) { if (wall_num->twoSided()) - SET(wall_num->nextWall()->extra, bit_mask); + wall_num->nextWall()->extra |= bit_mask; } wall_num = wall_num->point2Wall(); @@ -126,7 +126,7 @@ void WallSetupDontMove(void) { if (wal.pos.X < jActor->spr.pos.X && wal.pos.X > iActor->spr.pos.X && wal.pos.Y < jActor->spr.pos.Y && wal.pos.Y > iActor->spr.pos.Y) { - SET(wal.extra, WALLFX_DONT_MOVE); + wal.extra |= WALLFX_DONT_MOVE; } } } @@ -138,10 +138,10 @@ static void WallSetupLoop(WALLp wp, int16_t lotag, int16_t extra) { // set first wall { - SET(wp->extra, extra); + wp->extra |= extra; if (wp->twoSided()) - SET(wp->nextWall()->extra, extra); + wp->nextWall()->extra |= extra; } // Travel all the way around loop setting wall bits @@ -149,9 +149,9 @@ static void WallSetupLoop(WALLp wp, int16_t lotag, int16_t extra) wall_num->lotag != lotag; wall_num = wall_num->point2Wall()) { - SET(wall_num->extra, extra); + wall_num->extra |= extra; if (wall_num->twoSided()) - SET(wall_num->nextWall()->extra, extra); + wall_num->nextWall()->extra |= extra; } } @@ -223,7 +223,7 @@ void WallSetup(void) case TAG_WALL_DONT_MOVE: { // set first wall - SET(wal.extra, WALLFX_DONT_MOVE); + wal.extra |= WALLFX_DONT_MOVE; break; } @@ -296,7 +296,7 @@ void WallSetup(void) sw->range = range; // don't allow bullet holes/stars - SET(wall_num->extra, WALLFX_DONT_STICK); + wall_num->extra |= WALLFX_DONT_STICK; if (!sw->type) sw->orig_xy = wall_num->pos.Y - (sw->range >> 2); @@ -478,17 +478,17 @@ void SectorSetup(void) switch (num) { case 0: - SET(swf->flags, SINE_FLOOR); + swf->flags |= (SINE_FLOOR); if (TEST(sectp->floorstat, CSTAT_SECTOR_SLOPE)) { - SET(swf->flags, SINE_SLOPED); + swf->flags |= (SINE_SLOPED); } break; case 1: - SET(swf->flags, SINE_CEILING); + swf->flags |= (SINE_CEILING); break; case 2: - SET(swf->flags, SINE_FLOOR | SINE_CEILING); + swf->flags |= (SINE_FLOOR | SINE_CEILING); break; } @@ -1259,9 +1259,9 @@ void DoChangorMatch(short match) sectp->ceilingheinum += SP_TAG6(actor); if (sectp->ceilingheinum) - SET(sectp->ceilingstat, CSTAT_SECTOR_SLOPE); + sectp->ceilingstat |= CSTAT_SECTOR_SLOPE; else - RESET(sectp->ceilingstat, CSTAT_SECTOR_SLOPE); + sectp->ceilingstat &= ~CSTAT_SECTOR_SLOPE; sectp->ceilingshade += SP_TAG7(actor); sectp->ceilingpal += SP_TAG8(actor); @@ -1273,9 +1273,9 @@ void DoChangorMatch(short match) sectp->floorheinum += SP_TAG6(actor); if (sectp->floorheinum) - SET(sectp->floorstat, CSTAT_SECTOR_SLOPE); + sectp->floorstat |= CSTAT_SECTOR_SLOPE; else - RESET(sectp->floorstat, CSTAT_SECTOR_SLOPE); + sectp->floorstat &= ~CSTAT_SECTOR_SLOPE; sectp->floorshade += SP_TAG7(actor); sectp->floorpal += SP_TAG8(actor); diff --git a/source/games/sw/src/sprite.cpp b/source/games/sw/src/sprite.cpp index 94b62768b..aa1f8261f 100644 --- a/source/games/sw/src/sprite.cpp +++ b/source/games/sw/src/sprite.cpp @@ -583,7 +583,7 @@ void SetOwner(DSWActor* ownr, DSWActor* child, bool flag) { if (flag && ownr != nullptr && ownr->hasU()) { - SET(ownr->user.Flags2, SPR2_CHILDREN); + ownr->user.Flags2 |= (SPR2_CHILDREN); } child->ownerActor = ownr; } @@ -603,7 +603,7 @@ void SetAttach(DSWActor* ownr, DSWActor* child) { if (child && child->hasU() && ownr->hasU()) { - SET(ownr->user.Flags2, SPR2_CHILDREN); + ownr->user.Flags2 |= (SPR2_CHILDREN); child->user.attachActor = ownr; } } @@ -1525,8 +1525,8 @@ void SpriteSetupPost(void) jActor->user.ActorActionFunc = DoActorDebris; - SET(jActor->spr.cstat, CSTAT_SPRITE_BREAKABLE); - SET(jActor->spr.extra, SPRX_BREAKABLE); + jActor->spr.cstat |= CSTAT_SPRITE_BREAKABLE; + jActor->spr.extra |= SPRX_BREAKABLE; } } } @@ -1899,7 +1899,7 @@ void SpriteSetup(void) break; } - SET(hit.hitWall->extra, WALLFX_DONT_STICK); + hit.hitWall->extra |= WALLFX_DONT_STICK; KillActor(actor); break; } @@ -2643,7 +2643,7 @@ void SpriteSetup(void) // DO NOT TAG WHITE WALLS! if (wall_num->twoSided()) { - SET(wall_num->cstat, CSTAT_WALL_WARP_HITSCAN); + wall_num->cstat |= (CSTAT_WALL_WARP_HITSCAN); } wall_num = wall_num->point2Wall(); @@ -2753,9 +2753,9 @@ void SpriteSetup(void) // Travel all the way around loop setting wall bits do { - SET(wall_num->cstat, CSTAT_WALL_BLOCK_ACTOR); + wall_num->cstat |= (CSTAT_WALL_BLOCK_ACTOR); if (wall_num->twoSided()) - SET(wall_num->nextWall()->cstat, CSTAT_WALL_BLOCK_ACTOR); + wall_num->nextWall()->cstat |= CSTAT_WALL_BLOCK_ACTOR; wall_num = wall_num->point2Wall(); } while (wall_num != start_wall); @@ -4930,8 +4930,8 @@ int DoSpawnItemTeleporterEffect(DSWActor* actor) effect->spr.shade = -40; effect->spr.xrepeat = effect->spr.yrepeat = 36; - SET(effect->spr.cstat, CSTAT_SPRITE_YCENTER); - RESET(effect->spr.cstat, CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); + effect->spr.cstat |= CSTAT_SPRITE_YCENTER; + effect->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); return 0; } diff --git a/source/games/sw/src/track.cpp b/source/games/sw/src/track.cpp index bf13ca0e7..ec447c28d 100644 --- a/source/games/sw/src/track.cpp +++ b/source/games/sw/src/track.cpp @@ -770,7 +770,7 @@ void SectorObjectSetupBounds(SECTOR_OBJECTp sop) // all sectors in sector object have this flag set - for colision // detection and recognition - SET(sect->extra, SECTFX_SECTOR_OBJECT); + sect->extra |= SECTFX_SECTOR_OBJECT; sop->zorig_floor[sop->num_sectors] = sect->floorz; sop->zorig_ceiling[sop->num_sectors] = sect->ceilingz; @@ -810,9 +810,9 @@ void SectorObjectSetupBounds(SECTOR_OBJECTp sop) FoundOutsideLoop = true; // each wall has this set - for collision detection - SET(wal.extra, WALLFX_SECTOR_OBJECT|WALLFX_DONT_STICK); + wal.extra |= WALLFX_SECTOR_OBJECT|WALLFX_DONT_STICK; if (wal.twoSided()) - SET(wal.nextWall()->extra, WALLFX_SECTOR_OBJECT|WALLFX_DONT_STICK); + wal.nextWall()->extra |= WALLFX_SECTOR_OBJECT|WALLFX_DONT_STICK; } } @@ -889,7 +889,7 @@ void SectorObjectSetupBounds(SECTOR_OBJECTp sop) itActor->user.sy = sop->ymid - itActor->spr.pos.Y; itActor->user.sz = sop->mid_sector->floorz - itActor->spr.pos.Z; - SET(itActor->user.Flags, SPR_SO_ATTACHED); + itActor->user.Flags |= (SPR_SO_ATTACHED); itActor->user.sang = itActor->spr.ang; itActor->user.spal = itActor->spr.pal; @@ -917,7 +917,7 @@ void SectorObjectSetupBounds(SECTOR_OBJECTp sop) { if (sop->sectp[j] == itActor->spr.sector()) { - SET(itActor->user.Flags, SPR_ON_SO_SECTOR); + itActor->user.Flags |= (SPR_ON_SO_SECTOR); itActor->user.sz = itActor->spr.sector()->floorz - itActor->spr.pos.Z; break; } diff --git a/source/games/sw/src/vis.cpp b/source/games/sw/src/vis.cpp index 2c9824a61..8bc0f8036 100644 --- a/source/games/sw/src/vis.cpp +++ b/source/games/sw/src/vis.cpp @@ -146,11 +146,11 @@ void SpawnVis(DSWActor* parentActor, sectortype* sect, int x, int y, int z, int ASSERT(parentActor->hasU()); - SET(parentActor->user.Flags2, SPR2_CHILDREN); + parentActor->user.Flags2 |= (SPR2_CHILDREN); actorNew->spr.pos = parentActor->spr.pos; - SET(parentActor->user.Flags2, SPR2_VIS_SHADING); + parentActor->user.Flags2 |= (SPR2_VIS_SHADING); } else { diff --git a/source/games/sw/src/weapon.cpp b/source/games/sw/src/weapon.cpp index 17bac2958..3778c1218 100644 --- a/source/games/sw/src/weapon.cpp +++ b/source/games/sw/src/weapon.cpp @@ -10265,7 +10265,7 @@ void SpawnBigGunFlames(DSWActor* actor, DSWActor* Operator, SECTOR_OBJECTp sop, sop->so_actors[sn] = expActor; so_setspriteinterpolation(sop, expActor); - SET(expActor->user.Flags, TEST(actor->user.Flags, SPR_ON_SO_SECTOR|SPR_SO_ATTACHED)); + expActor->user.Flags |= (actor->user.Flags & (SPR_ON_SO_SECTOR|SPR_SO_ATTACHED)); if (TEST(actor->user.Flags, SPR_ON_SO_SECTOR)) { @@ -10828,7 +10828,7 @@ int DoNapalm(DSWActor* actor) expActor->spr.backupz(); if (TEST(actor->user.Flags, SPR_UNDERWATER)) - SET(expActor->user.Flags, SPR_UNDERWATER); + expActor->user.Flags |= SPR_UNDERWATER; ASSERT(expActor->spr.picnum == 3072); ASSERT(expActor->user.Tics == 0); @@ -12157,7 +12157,7 @@ int InitFistAttack(PLAYERp pp) PlaySound(DIGI_ARMORHIT, &hit.hitpos, v3df_none); if (RandomRange(1000) > 700) PlayerUpdateHealth(pp,1); // Give some health - SET(hitActor->spr.cstat, CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); + hitActor->spr.cstat |= (CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); break; } } @@ -12312,7 +12312,7 @@ int InitSumoSkull(DSWActor* actor) // defaults do change the statnum EnemyDefaults(actorNew, nullptr, nullptr); - SET(actorNew->spr.extra, SPRX_PLAYER_OR_ENEMY); + actorNew->spr.extra |= SPRX_PLAYER_OR_ENEMY; actorNew->spr.clipdist = (128+64) >> 2; actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); @@ -12564,8 +12564,8 @@ DSWActor* WeaponAutoAimHitscan(DSWActor* actor, int *z, short *ang, bool test) if ((picked = DoPickTarget(actor, *ang, test)) != nullptr) { - SET(picked->user.Flags, SPR_TARGETED); - SET(picked->user.Flags, SPR_ATTACKED); + picked->user.Flags |= (SPR_TARGETED); + picked->user.Flags |= (SPR_ATTACKED); *ang = NORM_ANGLE(getangle(picked->spr.pos.X - actor->spr.pos.X, picked->spr.pos.Y - actor->spr.pos.Y)); @@ -12707,7 +12707,7 @@ int InitStar(PLAYERp pp) actorNew2->user.Flags2 = actorNew->user.Flags2 & ~(SPR2_FLAMEDIE); // mask out any new flags here for safety. if (TEST(pp->Flags, PF_DIVING) || SpriteInUnderwaterArea(actorNew2)) - SET(actorNew2->user.Flags, SPR_UNDERWATER); + actorNew2->user.Flags |= SPR_UNDERWATER; zvel = -MulScale(pp->horizon.horiz.asq16(), HORIZ_MULT+STAR_HORIZ_ADJ, 16); actorNew2->spr.zvel = zvel >> 1; @@ -13784,8 +13784,8 @@ int InitMicro(PLAYERp pp) } actorNew->user.WpnGoalActor = ts->actor; - SET(picked->user.Flags, SPR_TARGETED); - SET(picked->user.Flags, SPR_ATTACKED); + picked->user.Flags |= (SPR_TARGETED); + picked->user.Flags |= (SPR_ATTACKED); } else { @@ -15525,8 +15525,8 @@ int InitTurretMicro(DSWActor* actor, PLAYERp pp) } actorNew->user.WpnGoalActor = ts->actor; - SET(picked->user.Flags, SPR_TARGETED); - SET(picked->user.Flags, SPR_ATTACKED); + picked->user.Flags |= (SPR_TARGETED); + picked->user.Flags |= (SPR_ATTACKED); } else { @@ -15788,7 +15788,7 @@ int InitSobjMachineGun(DSWActor* actor, PLAYERp pp) { // spawn sparks here and pass the sprite as SO_MISSILE spark = SpawnBoatSparks(pp, hit.hitSector, hit.hitWall, hit.hitpos.X, hit.hitpos.Y, hit.hitpos.Z, daang); - SET(spark->user.Flags2, SPR2_SO_MISSILE); + spark->user.Flags2 |= SPR2_SO_MISSILE; if (MissileHitMatch(spark, -1, hit.actor())) return 0; return 0; @@ -18439,7 +18439,7 @@ void QueueLoWangs(DSWActor* actor) spawnedActor->user.spal = spawnedActor->spr.pal = actor->spr.pal; change_actor_stat(spawnedActor, STAT_DEFAULT); // Breakable spawnedActor->spr.cstat |= (CSTAT_SPRITE_BREAKABLE); - SET(spawnedActor->spr.extra, SPRX_BREAKABLE); + spawnedActor->spr.extra |= SPRX_BREAKABLE; spawnedActor->spr.cstat |= (CSTAT_SPRITE_BLOCK_HITSCAN); LoWangsQueueHead = (LoWangsQueueHead+1) & (MAX_LOWANGS_QUEUE-1);