- set_int_ang in Duke.

Also changed SOUNDFX actor to use a different variable for its index.
This commit is contained in:
Christoph Oelckers 2022-08-16 23:20:35 +02:00
parent 8f904c2256
commit 150ab95a3a
15 changed files with 140 additions and 140 deletions

View file

@ -360,7 +360,7 @@ void movedummyplayers(void)
{
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->set_int_z(act->sector()->int_ceilingz() + (27 << 8));
act->spr.__int_angle = ps[p].angle.ang.asbuild();
act->set_int_ang(ps[p].angle.ang.asbuild());
if (act->temp_data[0] == 8)
act->temp_data[0] = 0;
else act->temp_data[0]++;
@ -400,7 +400,7 @@ void moveplayers(void)
{
act->spr.pos = p->opos.plusZ(gs.playerheight);
act->backupz();
act->spr.__int_angle = p->angle.oang.asbuild();
act->set_int_ang(p->angle.oang.asbuild());
SetActor(act, act->spr.pos);
}
else
@ -464,7 +464,7 @@ void moveplayers(void)
p->angle.addadjustment(getincanglebam(p->angle.ang, bvectangbam(p->wackedbyactor->spr.pos.X - p->pos.X, p->wackedbyactor->spr.pos.Y - p->pos.Y)) >> 1);
}
}
act->spr.__int_angle = p->angle.ang.asbuild();
act->set_int_ang(p->angle.ang.asbuild());
}
}
else
@ -497,13 +497,13 @@ void moveplayers(void)
if (act->spr.extra < 8)
{
act->spr.xvel = 128;
act->spr.__int_angle = p->angle.ang.asbuild();
act->set_int_ang(p->angle.ang.asbuild());
act->spr.extra++;
ssp(act, CLIPMASK0);
}
else
{
act->spr.__int_angle = 2047 - (p->angle.ang.asbuild());
act->set_int_ang(2047 - (p->angle.ang.asbuild()));
SetActor(act, act->spr.pos);
}
}
@ -641,7 +641,7 @@ void movecrane(DDukeActor *actor, int crane)
case STAT_ZOMBIEACTOR:
case STAT_STANDABLE:
case STAT_PLAYER:
actor->spr.__int_angle = getangle(cpt.pole - actor->spr.pos.XY());
actor->set_int_ang(getangle(cpt.pole - actor->spr.pos.XY()));
SetActor(a2, DVector3( cpt.pole.X, cpt.pole.Y, a2->spr.pos.Z ));
actor->temp_data[0]++;
return;
@ -750,7 +750,7 @@ void movecrane(DDukeActor *actor, int crane)
{
if (actor->spr.xvel < 192)
actor->spr.xvel += 8;
actor->spr.__int_angle = getangle(cpt.pos.XY() - actor->spr.pos.XY());
actor->set_int_ang(getangle(cpt.pos.XY() - actor->spr.pos.XY()));
ssp(actor, CLIPMASK0);
if (((actor->spr.pos.X - cpt.pos.X) * (actor->spr.pos.X - cpt.pos.X) + (actor->spr.pos.Y - cpt.pos.Y) * (actor->spr.pos.Y - cpt.pos.Y)) < (8 * 8))
actor->temp_data[0]++;
@ -1288,7 +1288,7 @@ void bounce(DDukeActor* actor)
actor->spr.zvel = zvect;
actor->spr.xvel = ksqrt(DMulScale(xvect, xvect, yvect, yvect, 8));
actor->spr.__int_angle = getangle(xvect, yvect);
actor->set_int_ang(getangle(xvect, yvect));
}
//---------------------------------------------------------------------------
@ -1317,7 +1317,7 @@ void movetongue(DDukeActor *actor, int tongue, int jaw)
return;
}
actor->spr.__int_angle = Owner->int_ang();
actor->set_int_ang(Owner->int_ang());
actor->spr.pos = Owner->spr.pos.plusZ(Owner->isPlayer() ? -34 : 0);
for (int k = 0; k < actor->temp_data[0]; k++)
@ -1433,7 +1433,7 @@ bool rat(DDukeActor* actor, bool makesound)
deletesprite(actor);
return false;
}
else actor->spr.__int_angle = (krand() & 2047);
else actor->set_int_ang((krand() & 2047));
}
if (actor->spr.xvel < 128)
actor->spr.xvel += 2;
@ -1474,7 +1474,7 @@ bool queball(DDukeActor *actor, int pocket, int queball, int stripeball)
if (j == kHitWall)
{
int k = getangle(coll.hitWall->delta());
actor->spr.__int_angle = ((k << 1) - actor->int_ang()) & 2047;
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
}
else if (j == kHitSprite)
{
@ -1522,7 +1522,7 @@ bool queball(DDukeActor *actor, int pocket, int queball, int stripeball)
if (actor->spr.pal == 12)
actor->spr.xvel = 164;
else actor->spr.xvel = 140;
actor->spr.__int_angle = ps[p].angle.ang.asbuild();
actor->set_int_ang(ps[p].angle.ang.asbuild());
ps[p].toggle_key_flag = 2;
}
}
@ -1530,7 +1530,7 @@ bool queball(DDukeActor *actor, int pocket, int queball, int stripeball)
}
if (x < 512 && actor->sector() == ps[p].cursector)
{
actor->spr.__int_angle = getangle(actor->spr.pos.XY() - ps[p].pos.XY());
actor->set_int_ang(getangle(actor->spr.pos.XY() - ps[p].pos.XY()));
actor->spr.xvel = 48;
}
}
@ -1558,7 +1558,7 @@ void forcesphere(DDukeActor* actor, int forcesphere)
{
k->spr.cstat = CSTAT_SPRITE_BLOCK_ALL | CSTAT_SPRITE_YCENTER;
k->spr.clipdist = 64;
k->spr.__int_angle = j;
k->set_int_ang(j);
k->spr.zvel = bsin(l, -5);
k->spr.xvel = bcos(l, -9);
k->SetOwner(actor);
@ -1671,10 +1671,10 @@ void recon(DDukeActor *actor, int explosion, int firelaser, int attacksnd, int p
if ((actor->temp_data[2] & 15) == 0)
{
a = actor->int_ang();
actor->spr.__int_angle = actor->tempang;
actor->set_int_ang(actor->tempang);
if (attacksnd >= 0) S_PlayActorSound(attacksnd, actor);
fi.shoot(actor, firelaser);
actor->spr.__int_angle = a;
actor->set_int_ang(a);
}
if (actor->temp_data[2] > (26 * 3) || !cansee(actor->spr.pos.plusZ(-16), actor->sector(), ps[p].pos, ps[p].cursector))
{
@ -1988,11 +1988,11 @@ void camera(DDukeActor *actor)
}
else if (actor->int_ang() + increment < minimum)
{
actor->spr.__int_angle = minimum;
actor->set_int_ang(minimum);
}
else if (actor->int_ang() + increment > maximum)
{
actor->spr.__int_angle = maximum;
actor->set_int_ang(maximum);
}
else
{
@ -2811,9 +2811,9 @@ void handle_se14(DDukeActor* actor, bool checkstat, int RPG, int JIBS6)
if (x < 20480)
{
j = actor->int_ang();
actor->spr.__int_angle = getangle(actor->spr.pos.XY() - ps[p].pos.XY());
actor->set_int_ang(getangle(actor->spr.pos.XY() - ps[p].pos.XY()));
fi.shoot(actor, RPG);
actor->spr.__int_angle = j;
actor->set_int_ang(j);
}
}
}
@ -3317,9 +3317,9 @@ void handle_se05(DDukeActor* actor, int FIRELASER)
if (x < 8192)
{
j = actor->int_ang();
actor->spr.__int_angle = getangle(actor->spr.pos.XY() - ps[p].pos);
actor->set_int_ang(getangle(actor->spr.pos.XY() - ps[p].pos));
fi.shoot(actor, FIRELASER);
actor->spr.__int_angle = j;
actor->set_int_ang(j);
}
auto Owner = actor->GetOwner();
@ -3351,8 +3351,8 @@ void handle_se05(DDukeActor* actor, int FIRELASER)
if (ldist(Owner, actor) < 1024)
{
auto ta = actor->int_ang();
actor->spr.__int_angle = getangle(ps[p].pos.XY() - actor->spr.pos.XY());
actor->spr.__int_angle = ta;
actor->set_int_ang(getangle(ps[p].pos.XY() - actor->spr.pos.XY()));
actor->set_int_ang(ta);
actor->SetOwner(nullptr);
return;
@ -4342,7 +4342,7 @@ void handle_se27(DDukeActor* actor)
}
else
{
actor->spr.__int_angle = getangle(ps[p].pos.XY() - actor->spr.pos.XY());
actor->set_int_ang(getangle(ps[p].pos.XY() - actor->spr.pos.XY()));
if (actor->temp_data[0] == 999)
{
@ -5013,7 +5013,7 @@ void alterang(int ang, DDukeActor* actor, int playernum)
if (actor->spr.zvel < 648) actor->spr.zvel += ((*(moveptr + 1) << 4) - actor->spr.zvel) / 5;
if (isRRRA() && (ang & windang))
actor->spr.__int_angle = WindDir;
actor->set_int_ang(WindDir);
else if (ang & seekplayer)
{
DDukeActor* holoduke = !isRR()? ps[playernum].holoduke_on.Get() : nullptr;
@ -5046,11 +5046,11 @@ void alterang(int ang, DDukeActor* actor, int playernum)
}
else if (ticselapsed > 18 && ticselapsed < 26) // choose
{
if (abs(angdif >> 2) < 128) actor->spr.__int_angle = goalang;
if (abs(angdif >> 2) < 128) actor->set_int_ang(goalang);
else actor->spr.__int_angle += angdif >> 2;
}
}
else actor->spr.__int_angle = goalang;
else actor->set_int_ang(goalang);
}
if (ticselapsed < 1)
@ -5059,14 +5059,14 @@ void alterang(int ang, DDukeActor* actor, int playernum)
if (ang & furthestdir)
{
goalang = furthestangle(actor, j);
actor->spr.__int_angle = goalang;
actor->set_int_ang(goalang);
actor->SetOwner(ps[playernum].GetActor());
}
if (ang & fleeenemy)
{
goalang = furthestangle(actor, j);
actor->spr.__int_angle = goalang; // += angdif; // = getincangle(aang,goalang)>>1;
actor->set_int_ang(goalang); // += angdif; // = getincangle(aang,goalang)>>1;
}
}
}

View file

@ -478,9 +478,9 @@ int movesprite_ex_d(DDukeActor* actor, int xchange, int ychange, int zchange, un
)
{
if (dasectp && dasectp->lotag == ST_1_ABOVE_WATER && actor->spr.picnum == LIZMAN)
actor->spr.__int_angle = (krand()&2047);
actor->set_int_ang((krand()&2047));
else if ((actor->temp_data[0]&3) == 1 && actor->spr.picnum != COMMANDER)
actor->spr.__int_angle = (krand()&2047);
actor->set_int_ang((krand()&2047));
SetActor(actor,actor->int_pos());
if (dasectp == nullptr) dasectp = &sector[0];
return result.setSector(dasectp);
@ -739,7 +739,7 @@ void movefallers_d(void)
act->spr.extra = x;
}
}
act->spr.__int_angle = act->temp_data[1];
act->set_int_ang(act->temp_data[1]);
act->add_int_z(+(16 << 8));
}
else if (act->temp_data[0] == 1)
@ -831,7 +831,7 @@ static void movetripbomb(DDukeActor *actor)
auto spawned = spawn(actor, EXPLOSION2);
if (spawned)
{
spawned->spr.__int_angle = actor->int_ang();
spawned->set_int_ang(actor->int_ang());
spawned->spr.xvel = 348;
ssp(spawned, CLIPMASK0);
}
@ -857,7 +857,7 @@ static void movetripbomb(DDukeActor *actor)
actor->temp_data[2] = 16;
}
actor->spr.extra = x;
actor->spr.__int_angle = l;
actor->set_int_ang(l);
}
if (actor->temp_data[0] < 32)
@ -869,7 +869,7 @@ static void movetripbomb(DDukeActor *actor)
if (actor->temp_data[0] == 32)
{
int16_t l = actor->int_ang();
actor->spr.__int_angle = actor->temp_data[5];
actor->set_int_ang(actor->temp_data[5]);
actor->temp_data[3] = actor->int_pos().X; actor->temp_data[4] = actor->int_pos().Y;
actor->add_int_pos({ bcos(actor->temp_data[5], -9), bsin(actor->temp_data[5], -9), -(3 << 8) });
@ -886,7 +886,7 @@ static void movetripbomb(DDukeActor *actor)
actor->ovel.X = x;
actor->spr.__int_angle = l;
actor->set_int_ang(l);
if (lTripBombControl & TRIPBOMB_TRIPWIRE)
{
@ -984,7 +984,7 @@ static void movecrack(DDukeActor* actor)
else
{
actor->spr.cstat = ESpriteFlags::FromInt(actor->temp_data[0]);
actor->spr.__int_angle = actor->temp_data[1];
actor->set_int_ang(actor->temp_data[1]);
actor->spr.extra = 0;
}
}
@ -1417,7 +1417,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const vec3_t &oldpos)
(wal->overpicnum == MIRROR || wal->picnum == MIRROR))
{
int k = getangle(wal->delta());
proj->spr.__int_angle = ((k << 1) - proj->int_ang()) & 2047;
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
proj->SetOwner(proj);
spawn(proj, TRANSPORTERSTAR);
return true;
@ -1436,7 +1436,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const vec3_t &oldpos)
}
int k = getangle(wal->delta());
proj->spr.__int_angle = ((k << 1) - proj->int_ang()) & 2047;
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
return true;
}
}
@ -1979,7 +1979,7 @@ void movetransports_d(void)
if (k && sectlotag == 1 && act2->spr.statnum == 4)
{
k->spr.xvel = act2->spr.xvel >> 1;
k->spr.__int_angle = act2->int_ang();
k->set_int_ang(act2->int_ang());
ssp(k, CLIPMASK0);
}
}
@ -1992,7 +1992,7 @@ void movetransports_d(void)
if (act2->spr.statnum == STAT_PROJECTILE || (checkcursectnums(act->sector()) == -1 && checkcursectnums(Owner->sector()) == -1))
{
act2->add_int_pos({ (Owner->int_pos().X - act->int_pos().X),(Owner->int_pos().Y - act->int_pos().Y), -(act->int_pos().Z - Owner->sector()->int_floorz()) });
act2->spr.__int_angle = Owner->int_ang();
act2->set_int_ang(Owner->int_ang());
act2->backupang();
@ -2148,7 +2148,7 @@ static void greenslime(DDukeActor *actor)
SetActor(actor, actor->spr.pos);
actor->spr.__int_angle = ps[p].angle.ang.asbuild();
actor->set_int_ang(ps[p].angle.ang.asbuild());
if ((PlayerInput(p, SB_FIRE) || (ps[p].quick_kick > 0)) && ps[p].GetActor()->spr.extra > 0)
if (ps[p].quick_kick > 0 || (ps[p].curr_weapon != HANDREMOTE_WEAPON && ps[p].curr_weapon != HANDBOMB_WEAPON && ps[p].curr_weapon != TRIPBOMB_WEAPON && ps[p].ammo_amount[ps[p].curr_weapon] >= 0))
@ -2650,7 +2650,7 @@ static void heavyhbomb(DDukeActor *actor)
int k = getangle(wal->delta());
actor->spr.__int_angle = ((k << 1) - actor->int_ang()) & 2047;
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
actor->spr.xvel >>= 1;
}
@ -3528,7 +3528,7 @@ void move_d(DDukeActor *actor, int playernum, int xvel)
if (angdif > -32 && angdif < 0)
{
angdif = 0;
actor->spr.__int_angle = goalang;
actor->set_int_ang(goalang);
}
actor->spr.__int_angle += angdif;
}

View file

@ -394,9 +394,9 @@ int movesprite_ex_r(DDukeActor* actor, int xchange, int ychange, int zchange, un
if (dasectp == nullptr || (dasectp != nullptr && actor->actorstayput != nullptr && actor->actorstayput != dasectp))
{
if (dasectp && dasectp->lotag == ST_1_ABOVE_WATER)
actor->spr.__int_angle = (krand() & 2047);
actor->set_int_ang((krand() & 2047));
else if ((actor->temp_data[0] & 3) == 1)
actor->spr.__int_angle = (krand() & 2047);
actor->set_int_ang((krand() & 2047));
SetActor(actor, actor->spr.pos);
if (dasectp == nullptr) dasectp = &sector[0];
return result.setSector(dasectp);
@ -660,7 +660,7 @@ void movefallers_r(void)
act->spr.extra = x;
}
}
act->spr.__int_angle = act->temp_data[1];
act->set_int_ang(act->temp_data[1]);
act->spr.pos.Z += 16;
}
else if (act->temp_data[0] == 1)
@ -740,7 +740,7 @@ static void movecrack(DDukeActor* actor)
else
{
actor->spr.cstat = ESpriteFlags::FromInt(actor->temp_data[0]);
actor->spr.__int_angle = actor->temp_data[1];
actor->set_int_ang(actor->temp_data[1]);
actor->spr.extra = 0;
}
}
@ -953,7 +953,7 @@ static void chickenarrow(DDukeActor* actor)
actor->spr.__int_angle += 51;
}
else
actor->spr.__int_angle = ang;
actor->set_int_ang(ang);
if (actor->spr.hitag > 180)
if (actor->spr.zvel <= 0)
@ -1053,7 +1053,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const vec3_t& oldpos)
if (proj->spr.picnum != RPG && (!isRRRA() || proj->spr.picnum != RPG2) && proj->spr.picnum != FREEZEBLAST && proj->spr.picnum != SPIT && proj->spr.picnum != SHRINKSPARK && (wal->overpicnum == MIRROR || wal->picnum == MIRROR))
{
int k = getangle(wal->delta());
proj->spr.__int_angle = ((k << 1) - proj->int_ang()) & 2047;
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
proj->SetOwner(proj);
spawn(proj, TRANSPORTERSTAR);
return true;
@ -1076,7 +1076,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const vec3_t& oldpos)
}
int k = getangle(wal->delta());
proj->spr.__int_angle = ((k << 1) - proj->int_ang()) & 2047;
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
return true;
}
if (proj->spr.picnum == SHRINKSPARK)
@ -1097,7 +1097,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const vec3_t& oldpos)
j->spr.xrepeat = 8;
j->spr.yrepeat = 8;
j->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL;
j->spr.__int_angle = (j->int_ang() + 512) & 2047;
j->set_int_ang((j->int_ang() + 512) & 2047);
j->spr.clipdist = MulScale(proj->spr.xrepeat, tileWidth(proj->spr.picnum), 7);
}
}
@ -1111,7 +1111,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const vec3_t& oldpos)
}
int k = getangle(wal->delta());
proj->spr.__int_angle = ((k << 1) - proj->int_ang()) & 2047;
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
return true;
}
}
@ -1658,7 +1658,7 @@ void movetransports_r(void)
if (spawned && sectlotag == 1 && act2->spr.statnum == 4)
{
spawned->spr.xvel = act2->spr.xvel >> 1;
spawned->spr.__int_angle = act2->int_ang();
spawned->set_int_ang(act2->int_ang());
ssp(spawned, CLIPMASK0);
}
}
@ -1671,7 +1671,7 @@ void movetransports_r(void)
if (checkcursectnums(act->sector()) == -1 && checkcursectnums(Owner->sector()) == -1)
{
act2->add_int_pos({ (Owner->int_pos().X - act->int_pos().X), (Owner->int_pos().Y - act->int_pos().Y), -(act->int_pos().Z - Owner->sector()->int_floorz()) });
act2->spr.__int_angle = Owner->int_ang();
act2->set_int_ang(Owner->int_ang());
act2->backupang();
@ -2175,7 +2175,7 @@ void rr_specialstats()
act->spr.lotag--;
if (act->spr.lotag < 0)
{
spawn(act, RRTILE3190)->spr.__int_angle = act->int_ang();
spawn(act, RRTILE3190)->set_int_ang(act->int_ang());
act->spr.lotag = 128;
}
break;
@ -2183,7 +2183,7 @@ void rr_specialstats()
act->spr.lotag--;
if (act->spr.lotag < 0)
{
spawn(act, RRTILE3192)->spr.__int_angle = act->int_ang();
spawn(act, RRTILE3192)->set_int_ang(act->int_ang());
act->spr.lotag = 256;
}
break;
@ -2208,7 +2208,7 @@ void rr_specialstats()
act->spr.lotag--;
if (act->spr.lotag < 0)
{
spawn(act, RRTILE3120)->spr.__int_angle = act->int_ang();
spawn(act, RRTILE3120)->set_int_ang(act->int_ang());
act->spr.lotag = 448;
}
break;
@ -2216,7 +2216,7 @@ void rr_specialstats()
act->spr.lotag--;
if (act->spr.lotag < 0)
{
spawn(act, RRTILE3122)->spr.__int_angle = act->int_ang();
spawn(act, RRTILE3122)->set_int_ang(act->int_ang());
act->spr.lotag = 64;
}
break;
@ -2224,7 +2224,7 @@ void rr_specialstats()
act->spr.lotag--;
if (act->spr.lotag < 0)
{
spawn(act, RRTILE3123)->spr.__int_angle = act->int_ang();
spawn(act, RRTILE3123)->set_int_ang(act->int_ang());
act->spr.lotag = 512;
}
break;
@ -2232,7 +2232,7 @@ void rr_specialstats()
act->spr.lotag--;
if (act->spr.lotag < 0)
{
spawn(act, RRTILE3124)->spr.__int_angle = act->int_ang();
spawn(act, RRTILE3124)->set_int_ang(act->int_ang());
act->spr.lotag = 224;
}
break;
@ -2444,7 +2444,7 @@ static void heavyhbomb(DDukeActor *actor)
actor->spr.xvel = 0;
goto DETONATEB;
}
actor->spr.__int_angle = ((k << 1) - actor->int_ang()) & 2047;
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
actor->spr.xvel >>= 1;
}
@ -2575,7 +2575,7 @@ static int henstand(DDukeActor *actor)
if (coll.type == kHitWall)
{
int k = getangle(coll.hitWall->delta());
actor->spr.__int_angle = ((k << 1) - actor->int_ang()) & 2047;
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
}
else if (coll.type == kHitSprite)
{
@ -2589,7 +2589,7 @@ static int henstand(DDukeActor *actor)
{
ns->spr.xvel = 32;
ns->spr.lotag = 40;
ns->spr.__int_angle = actor->int_ang();
ns->set_int_ang(actor->int_ang());
}
}
}
@ -3511,7 +3511,7 @@ void move_r(DDukeActor *actor, int pnum, int xvel)
if (angdif > -32 && angdif < 0)
{
angdif = 0;
actor->spr.__int_angle = goalang;
actor->set_int_ang(goalang);
}
actor->spr.__int_angle += angdif;
}
@ -3527,7 +3527,7 @@ void move_r(DDukeActor *actor, int pnum, int xvel)
if (angdif > -32 && angdif < 0)
{
angdif = 0;
actor->spr.__int_angle = goalang;
actor->set_int_ang(goalang);
}
actor->spr.__int_angle += angdif;
}

View file

@ -98,7 +98,7 @@ static int ccmd_spawn(CCmdFuncPtr parm)
{
if (set & 1) spawned->spr.pal = (uint8_t)pal;
if (set & 2) spawned->spr.cstat = ESpriteFlags::FromInt(cstat);
if (set & 4) spawned->spr.__int_angle = ang;
if (set & 4) spawned->set_int_ang(ang);
if (set & 8) SetActor(spawned, DVector3( x, y, z ));
if (spawned->sector() == nullptr)

View file

@ -1232,7 +1232,7 @@ void DoActor(bool bSet, int lVar1, int lLabelID, int lVar2, DDukeActor* sActor,
else*/ SetGameVarID(lVar2, act->spr.statnum, sActor, sPlayer);
break;
case ACTOR_ANG:
if (bSet) act->spr.__int_angle = lValue;
if (bSet) act->set_int_ang(lValue);
else SetGameVarID(lVar2, act->int_ang(), sActor, sPlayer);
break;
case ACTOR_OWNER:
@ -1561,7 +1561,7 @@ int ParseState::parse(void)
g_ac->spr.hitag = ScriptCode[g_t[5] + 2]; // Ai
g_t[0] = g_t[2] = g_t[3] = 0;
if (g_ac->spr.hitag & random_angle)
g_ac->spr.__int_angle = krand() & 2047;
g_ac->set_int_ang(krand() & 2047);
insptr++;
break;
case concmd_action:
@ -1601,10 +1601,10 @@ int ParseState::parse(void)
switch (krand() & 1)
{
case 0:
g_ac->spr.__int_angle = (+512 + g_ac->int_ang() + (krand() & 511)) & 2047;
g_ac->set_int_ang((+512 + g_ac->int_ang() + (krand() & 511)) & 2047);
break;
case 1:
g_ac->spr.__int_angle = (-512 + g_ac->int_ang() - (krand() & 511)) & 2047;
g_ac->set_int_ang((-512 + g_ac->int_ang() - (krand() & 511)) & 2047);
break;
}
insptr++;
@ -1615,7 +1615,7 @@ int ParseState::parse(void)
break;
case concmd_rndmove:
g_ac->spr.__int_angle = krand() & 2047;
g_ac->set_int_ang(krand() & 2047);
g_ac->spr.xvel = 25;
insptr++;
break;
@ -1761,23 +1761,23 @@ int ParseState::parse(void)
break;
case concmd_ifsoundid:
insptr++;
parseifelse((short)*insptr == ambientlotag[g_ac->spr.__int_angle]);
parseifelse((short)*insptr == ambientlotag[g_ac->spr.detail]);
break;
case concmd_ifsounddist:
insptr++;
if (*insptr == 0)
parseifelse(ambienthitag[g_ac->spr.__int_angle] > g_x);
parseifelse(ambienthitag[g_ac->spr.detail] > g_x);
else if (*insptr == 1)
parseifelse(ambienthitag[g_ac->spr.__int_angle] < g_x);
parseifelse(ambienthitag[g_ac->spr.detail] < g_x);
break;
case concmd_soundtag:
insptr++;
S_PlayActorSound(ambientlotag[g_ac->spr.__int_angle], g_ac);
S_PlayActorSound(ambientlotag[g_ac->spr.detail], g_ac);
break;
case concmd_soundtagonce:
insptr++;
if (!S_CheckActorSoundPlaying(g_ac, ambientlotag[g_ac->spr.__int_angle]))
S_PlayActorSound(ambientlotag[g_ac->spr.__int_angle], g_ac);
if (!S_CheckActorSoundPlaying(g_ac, ambientlotag[g_ac->spr.detail]))
S_PlayActorSound(ambientlotag[g_ac->spr.detail], g_ac);
break;
case concmd_soundonce:
insptr++;
@ -2122,7 +2122,7 @@ int ParseState::parse(void)
g_ac->spr.hitag = *insptr;
insptr++;
if(g_ac->spr.hitag&random_angle)
g_ac->spr.__int_angle = krand()&2047;
g_ac->set_int_ang(krand()&2047);
break;
case concmd_spawn:
insptr++;
@ -3170,8 +3170,7 @@ int ParseState::parse(void)
int i;
insptr++;
i = *(insptr++); // ID of def
g_ac->spr.__int_angle = GetGameVarID(i, g_ac, g_p).safeValue();
g_ac->spr.__int_angle &= 2047;
g_ac->set_int_ang(GetGameVarID(i, g_ac, g_p).safeValue() & 2047);
break;
}
case concmd_randvar:

View file

@ -846,7 +846,7 @@ void GameInterface::GetInput(ControlInfo* const hidInput, double const scaleAdju
p->angle.processhelpers(scaleAdjust);
p->horizon.processhelpers(scaleAdjust);
p->GetActor()->spr.__int_angle = p->angle.ang.asbuild();
p->GetActor()->set_int_ang(p->angle.ang.asbuild());
}
if (packet)

View file

@ -1058,7 +1058,7 @@ void shootbloodsplat(DDukeActor* actor, int p, int sx, int sy, int sz, int sa, i
{
spawned->spr.xvel = -12;
auto delta = hit.hitWall->delta();
spawned->spr.__int_angle = getangle(-delta.X, -delta.Y) + 512; // note the '-' sign here!
spawned->set_int_ang(getangle(-delta.X, -delta.Y) + 512); // note the '-' sign here!
spawned->set_int_pos(hit.hitpos);
spawned->spr.cstat |= randomXFlip();
ssp(spawned, CLIPMASK0);

View file

@ -201,7 +201,7 @@ static void shootflamethrowerflame(DDukeActor* actor, int p, int sx, int sy, int
spawned->set_int_pos({ sx + bsin(sa + 630) / 448, sy + bsin(sa + 112) / 448, sz - 256 });
spawned->setsector(actor->sector());
spawned->spr.cstat = CSTAT_SPRITE_YCENTER;
spawned->spr.__int_angle = sa;
spawned->set_int_ang(sa);
spawned->spr.xrepeat = 2;
spawned->spr.yrepeat = 2;
spawned->spr.clipdist = 40;
@ -294,7 +294,7 @@ static void shootknee(DDukeActor* actor, int p, int sx, int sy, int sz, int sa)
if (splash)
{
splash->set_int_xy(hit.hitpos.X, hit.hitpos.Y);
splash->spr.__int_angle = ps[p].angle.ang.asbuild(); // Total tweek
splash->set_int_ang(ps[p].angle.ang.asbuild()); // Total tweek
splash->spr.xvel = 32;
ssp(actor, CLIPMASK0);
splash->spr.xvel = 0;
@ -512,7 +512,7 @@ static void shootweapon(DDukeActor *actor, int p, int sx, int sy, int sz, int sa
{
hole->spr.xvel = -1;
auto delta = hit.hitWall->delta();
hole->spr.__int_angle = getangle(-delta.X, -delta.Y) + 512;
hole->set_int_ang(getangle(-delta.X, -delta.Y) + 512);
ssp(hole, CLIPMASK0);
hole->spr.cstat2 |= CSTAT2_SPRITE_DECAL;
}
@ -889,7 +889,8 @@ static void shootlaser(DDukeActor* actor, int p, int sx, int sy, int sz, int sa)
ssp(bomb, CLIPMASK0);
bomb->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL;
auto delta = hit.hitWall->delta();
bomb->temp_data[5] = bomb->spr.__int_angle = getangle(-delta.X, -delta.Y) - 512;
bomb->set_int_ang(getangle(-delta.X, -delta.Y) - 512);
bomb->temp_data[5] = bomb->int_ang();
if (p >= 0)
ps[p].ammo_amount[TRIPBOMB_WEAPON]--;
@ -1060,7 +1061,7 @@ void shoot_d(DDukeActor* actor, int atwith)
{
k->setsector(sect);
k->set_int_pos({ sx, sy, sz });
k->spr.__int_angle = sa;
k->set_int_ang(sa);
k->spr.xvel = 500;
k->spr.zvel = 0;
}

View file

@ -186,7 +186,7 @@ static void shootmelee(DDukeActor *actor, int p, int sx, int sy, int sz, int sa,
if (splash)
{
splash->set_int_xy(hit.hitpos.X, hit.hitpos.Y);
splash->spr.__int_angle = ps[p].angle.ang.asbuild(); // Total tweek
splash->set_int_ang(ps[p].angle.ang.asbuild()); // Total tweek
splash->spr.xvel = 32;
ssp(actor, 0);
splash->spr.xvel = 0;
@ -411,7 +411,7 @@ static void shootweapon(DDukeActor* actor, int p, int sx, int sy, int sz, int sa
{
hole->spr.xvel = -1;
auto delta = hit.hitWall->delta();
hole->spr.__int_angle = getangle(-delta.X, -delta.Y) + 512;
hole->set_int_ang(getangle(-delta.X, -delta.Y) + 512);
ssp(hole, CLIPMASK0);
hole->spr.cstat2 |= CSTAT2_SPRITE_DECAL;
}
@ -894,7 +894,7 @@ void shoot_r(DDukeActor* actor, int atwith)
if (j)
{
j->spr.xvel = 32;
j->spr.__int_angle = actor->int_ang();
j->set_int_ang(actor->int_ang());
j->add_int_z(-(5 << 8));
}
break;
@ -905,7 +905,7 @@ void shoot_r(DDukeActor* actor, int atwith)
if (j)
{
j->spr.xvel = 250;
j->spr.__int_angle = actor->int_ang();
j->set_int_ang(actor->int_ang());
j->add_int_z(-(15 << 8));
}
break;
@ -1506,7 +1506,7 @@ void checkweapons_r(player_struct* p)
auto j = spawn(p->GetActor(), 7220);
if (j)
{
j->spr.__int_angle = p->angle.ang.asbuild();
j->set_int_ang(p->angle.ang.asbuild());
j->saved_ammo = p->ammo_amount[MOTORCYCLE_WEAPON];
}
p->OnMotorcycle = 0;
@ -1525,7 +1525,7 @@ void checkweapons_r(player_struct* p)
auto j = spawn(p->GetActor(), 7233);
if (j)
{
j->spr.__int_angle = p->angle.ang.asbuild();
j->set_int_ang(p->angle.ang.asbuild());
j->saved_ammo = p->ammo_amount[BOAT_WEAPON];
}
p->OnBoat = 0;
@ -4106,7 +4106,7 @@ void OffMotorcycle(player_struct *p)
auto spawned = spawn(p->GetActor(), EMPTYBIKE);
if (spawned)
{
spawned->spr.__int_angle = p->angle.ang.asbuild();
spawned->set_int_ang(p->angle.ang.asbuild());
spawned->spr.xvel += p->angle.ang.bcos(7);
spawned->spr.yvel += p->angle.ang.bsin(7);
spawned->saved_ammo = p->ammo_amount[MOTORCYCLE_WEAPON];
@ -4173,7 +4173,7 @@ void OffBoat(player_struct *p)
auto spawned = spawn(p->GetActor(), EMPTYBOAT);
if (spawned)
{
spawned->spr.__int_angle = p->angle.ang.asbuild();
spawned->set_int_ang(p->angle.ang.asbuild());
spawned->spr.xvel += p->angle.ang.bcos(7);
spawned->spr.yvel += p->angle.ang.bsin(7);
spawned->saved_ammo = p->ammo_amount[BOAT_WEAPON];

View file

@ -574,7 +574,7 @@ void prelevel_r(int g, TArray<DDukeActor*>& actors)
{
ambienthitag[ambientfx] = ac->spr.hitag;
ambientlotag[ambientfx] = ac->spr.lotag;
ac->spr.__int_angle = ambientfx;
ac->spr.detail = ambientfx;
ambientfx++;
ac->spr.lotag = 0;
ac->spr.hitag = 0;

View file

@ -682,7 +682,7 @@ void checkhitwall_d(DDukeActor* spr, walltype* wal, int x, int y, int z, int atw
{
spawned->spr.cstat |= CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER;
auto delta = wal->delta();
spawned->spr.__int_angle = getangle(-delta.X, -delta.Y) - 512;
spawned->set_int_ang(getangle(-delta.X, -delta.Y) - 512);
S_PlayActorSound(SOMETHINGHITFORCE, spawned);
}
@ -1050,7 +1050,7 @@ void checkhitsprite_d(DDukeActor* targ, DDukeActor* proj)
{
proj->spr.xvel = (targ->spr.xvel >> 1) + (targ->spr.xvel >> 2);
proj->spr.__int_angle -= (targ->spr.__int_angle << 1) + 1024;
targ->spr.__int_angle = getangle(targ->int_pos().X - proj->int_pos().X, targ->int_pos().Y - proj->int_pos().Y) - 512;
targ->set_int_ang(getangle(targ->int_pos().X - proj->int_pos().X, targ->int_pos().Y - proj->int_pos().Y) - 512);
if (S_CheckSoundPlaying(POOLBALLHIT) < 2)
S_PlayActorSound(POOLBALLHIT, targ);
}
@ -1059,7 +1059,7 @@ void checkhitsprite_d(DDukeActor* targ, DDukeActor* proj)
if (krand() & 3)
{
targ->spr.xvel = 164;
targ->spr.__int_angle = proj->int_ang();
targ->set_int_ang(proj->int_ang());
}
else
{
@ -1177,7 +1177,7 @@ void checkhitsprite_d(DDukeActor* targ, DDukeActor* proj)
lotsofglass(targ, nullptr, 40);
S_PlayActorSound(GLASS_BREAKING, targ);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
lotsofglass(targ, nullptr, 8);
deletesprite(targ);
break;
@ -1303,21 +1303,21 @@ void checkhitsprite_d(DDukeActor* targ, DDukeActor* proj)
{
targ->spr.extra -= proj->spr.extra;
if (targ->spr.extra > 0) break;
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT1);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT2);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT3);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT4);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT1);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT2);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT3);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
fi.shoot(targ, BLOODSPLAT4);
fi.guts(targ, JIBS1, 1, myconnectindex);
fi.guts(targ, JIBS2, 2, myconnectindex);
@ -1395,7 +1395,7 @@ void checkhitsprite_d(DDukeActor* targ, DDukeActor* proj)
if (targ->spr.picnum != TANK && !bossguy(targ) && targ->spr.picnum != RECON && targ->spr.picnum != ROTATEGUN)
{
if ((targ->spr.cstat & CSTAT_SPRITE_ALIGNMENT_MASK) == 0)
targ->spr.__int_angle = (proj->int_ang() + 1024) & 2047;
targ->set_int_ang((proj->int_ang() + 1024) & 2047);
targ->spr.xvel = -(proj->spr.extra << 2);
auto sp = targ->sector();
pushmove(targ, &sp, 128L, (4 << 8), (4 << 8), CLIPMASK0);

View file

@ -2077,7 +2077,7 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
{
proj->spr.xvel = (targ->spr.xvel >> 1) + (targ->spr.xvel >> 2);
proj->spr.__int_angle -= (targ->spr.__int_angle << 1) + 1024;
targ->spr.__int_angle = getangle(targ->int_pos().X - proj->int_pos().X, targ->int_pos().Y - proj->int_pos().Y) - 512;
targ->set_int_ang(getangle(targ->int_pos().X - proj->int_pos().X, targ->int_pos().Y - proj->int_pos().Y) - 512);
if (S_CheckSoundPlaying(POOLBALLHIT) < 2)
S_PlayActorSound(POOLBALLHIT, targ);
}
@ -2085,14 +2085,14 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
{
proj->spr.xvel = (targ->spr.xvel >> 1) + (targ->spr.xvel >> 2);
proj->spr.__int_angle -= ((targ->spr.__int_angle << 1) + krand()) & 64;
targ->spr.__int_angle = (targ->int_ang() + krand()) & 16;
targ->set_int_ang((targ->int_ang() + krand()) & 16);
S_PlayActorSound(355, targ);
}
else if (proj->spr.picnum == HENSTAND || proj->spr.picnum == HENSTAND + 1)
{
proj->spr.xvel = (targ->spr.xvel >> 1) + (targ->spr.xvel >> 2);
proj->spr.__int_angle -= ((targ->spr.__int_angle << 1) + krand()) & 16;
targ->spr.__int_angle = (targ->int_ang() + krand()) & 16;
targ->set_int_ang((targ->int_ang() + krand()) & 16);
S_PlayActorSound(355, targ);
}
else
@ -2100,7 +2100,7 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
if (krand() & 3)
{
targ->spr.xvel = 164;
targ->spr.__int_angle = proj->int_ang();
targ->set_int_ang(proj->int_ang());
}
}
break;
@ -2205,7 +2205,7 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
lotsofglass(targ, nullptr, 40);
S_PlayActorSound(GLASS_BREAKING, targ);
targ->spr.__int_angle = krand() & 2047;
targ->set_int_ang(krand() & 2047);
lotsofglass(targ, nullptr, 8);
deletesprite(targ);
break;

View file

@ -70,7 +70,7 @@ DDukeActor* CreateActor(sectortype* whatsectp, const DVector3& pos, int s_pn, in
act->spr.yrepeat = s_yr;
act->spr.pal = 0;
act->spr.__int_angle = s_a;
act->set_int_ang(s_a);
act->spr.xvel = s_ve;
act->spr.zvel = s_zv;
act->spr.xoffset = 0;
@ -287,7 +287,7 @@ void spawninitdefault(DDukeActor* actj, DDukeActor *act)
act->timetosleep = 0;
if (actj)
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
}
}
@ -324,7 +324,7 @@ void spawntransporter(DDukeActor *actj, DDukeActor* act, bool beam)
act->spr.shade = -127;
act->spr.cstat = CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT;
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.xvel = 128;
ChangeActorStat(act, STAT_MISC);
@ -407,7 +407,7 @@ void initfootprint(DDukeActor* actj, DDukeActor* act)
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_FLOOR;
if ((ps[actj->spr.yvel].footprintcount & 1)) act->spr.cstat |= CSTAT_SPRITE_XFLIP;
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
}
act->set_int_z(sect->int_floorz());
@ -452,12 +452,12 @@ void initshell(DDukeActor* actj, DDukeActor* act, bool isshell)
if (isNamWW2GI())
{
// to the right, with feeling
act->spr.__int_angle = a + 512;
act->set_int_ang(a + 512);
act->spr.xvel = 30;
}
else
{
act->spr.__int_angle = a - 512;
act->set_int_ang(a - 512);
act->spr.xvel = 20;
}
@ -530,7 +530,7 @@ void initwaterdrip(DDukeActor* actj, DDukeActor* actor)
actor->add_int_z(-(18 << 8));
}
else actor->add_int_z(-(13 << 8));
actor->spr.__int_angle = getangle(ps[connecthead].player_int_pos().X - actor->int_pos().X, ps[connecthead].player_int_pos().Y - actor->int_pos().Y);
actor->set_int_ang(getangle(ps[connecthead].player_int_pos().X - actor->int_pos().X, ps[connecthead].player_int_pos().Y - actor->int_pos().Y));
actor->spr.xvel = 48 - (krand() & 31);
ssp(actor, CLIPMASK0);
}

View file

@ -201,7 +201,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break;
case TONGUE:
if (actj)
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.pos.Z -= gs.playerheight;
act->spr.zvel = 256 - (krand() & 511);
act->spr.xvel = 64 - (krand() & 127);
@ -243,7 +243,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
act->spr.yrepeat = 0;
}
if (actj) act->spr.__int_angle = actj->temp_data[5] + 512;
if (actj) act->set_int_ang(actj->temp_data[5] + 512);
ChangeActorStat(act, STAT_MISC);
break;
@ -560,7 +560,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
act->temp_data[0] = krand() & 2047;
act->spr.cstat = randomFlip();
act->spr.xrepeat = act->spr.yrepeat = 8;
act->spr.__int_angle = krand() & 2047;
act->set_int_ang(krand() & 2047);
}
ChangeActorStat(act, STAT_MISC);
break;
@ -607,7 +607,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (actj)
{
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.shade = -64;
act->spr.cstat = CSTAT_SPRITE_YCENTER | randomXFlip();
}
@ -683,7 +683,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == WATERBUBBLE)
{
if (actj)
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.xrepeat = act->spr.yrepeat = 4;
}
else act->spr.xrepeat = act->spr.yrepeat = 32;
@ -701,7 +701,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case TRASH:
if (act->spr.picnum != WATERDRIP)
act->spr.__int_angle = krand() & 2047;
act->set_int_ang(krand() & 2047);
[[fallthrough]];
case WATERDRIPSPLASH:
@ -876,7 +876,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == RAT)
{
act->spr.__int_angle = krand() & 2047;
act->set_int_ang(krand() & 2047);
act->spr.xrepeat = act->spr.yrepeat = 48;
act->spr.cstat = 0;
}
@ -1105,7 +1105,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case STEAM:
if (actj)
{
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT;
act->spr.xrepeat = act->spr.yrepeat = 1;
act->spr.xvel = -8;

View file

@ -283,7 +283,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break;
case TONGUE:
if (actj)
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.pos.Z -= gs.playerheight;
act->spr.zvel = 256 - (krand() & 511);
act->spr.xvel = 64 - (krand() & 127);
@ -583,7 +583,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
act->temp_data[0] = krand() & 2047;
act->spr.cstat = randomFlip();
act->spr.xrepeat = act->spr.yrepeat = 8;
act->spr.__int_angle = krand() & 2047;
act->set_int_ang(krand() & 2047);
}
ChangeActorStat(act, STAT_MISC);
break;
@ -603,12 +603,12 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break;
}
act->spr.cstat = CSTAT_SPRITE_INVISIBLE;
ChangeActorStat(act, 11);
ChangeActorStat(act, STAT_FX);
break;
case SOUNDFX:
{
act->spr.cstat |= CSTAT_SPRITE_INVISIBLE;
ChangeActorStat(act, 2);
ChangeActorStat(act, STAT_ZOMBIEACTOR);
}
break;
case EXPLOSION2:
@ -617,7 +617,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case SMALLSMOKE:
if (actj)
{
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.shade = -64;
act->spr.cstat = CSTAT_SPRITE_YCENTER | randomXFlip();
}
@ -688,7 +688,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == WATERBUBBLE)
{
if (actj)
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.xrepeat = act->spr.yrepeat = 1 + (krand() & 7);
}
else
@ -703,7 +703,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break;
case TRASH:
if (act->spr.picnum != WATERDRIP) act->spr.__int_angle = krand() & 2047;
if (act->spr.picnum != WATERDRIP) act->set_int_ang(krand() & 2047);
act->spr.xrepeat = 24;
act->spr.yrepeat = 24;
@ -1034,7 +1034,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == RAT)
{
act->spr.__int_angle = krand() & 2047;
act->set_int_ang(krand() & 2047);
act->spr.xrepeat = act->spr.yrepeat = 48;
act->spr.cstat = 0;
}
@ -1355,7 +1355,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case STEAM:
if (actj)
{
act->spr.__int_angle = actj->int_ang();
act->set_int_ang(actj->int_ang());
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT;
act->spr.xrepeat = act->spr.yrepeat = 1;
act->spr.xvel = -8;