- the remaining SET()s.

These had to be done manually.
This commit is contained in:
Christoph Oelckers 2021-12-27 18:07:45 +01:00
parent fe292fce0d
commit 387d65abb4
15 changed files with 73 additions and 75 deletions

View file

@ -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;
}

View file

@ -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);

View file

@ -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

View file

@ -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;

View file

@ -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;
}
}

View file

@ -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;
}

View file

@ -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))

View file

@ -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);

View file

@ -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);

View file

@ -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);

View file

@ -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);

View file

@ -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;
}

View file

@ -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;
}

View file

@ -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
{

View file

@ -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);