sprite[plr.spritenum] globally replaced.

This commit is contained in:
Christoph Oelckers 2021-11-14 19:44:59 +01:00
parent 56494526d5
commit 11f459cd83
10 changed files with 31 additions and 31 deletions

View file

@ -688,7 +688,7 @@ void attack(PLAYER& plr, DWHActor* actor) {
// if ((krand() & (15 < plr.armortype ? 11 : 10)) != 0)
// return;
auto& spr = actor->s();
auto& pspr = sprite[plr.spritenum];
auto& pspr = plr.actor()->s();
if (!droptheshield && plr.shieldpoints > 0 && plr.selectedgun > 0 && plr.selectedgun < 5) {
short a = getangle(spr.x - plr.x, spr.y - plr.y);

View file

@ -21,7 +21,7 @@ static void facerat(PLAYER& plr, DWHActor* actor)
spr.ang = getangle(plr.x - spr.x, plr.y - spr.y);
spr.ang = (short) (((krand() & 512 - 256) + spr.ang + 1024) & 2047); // NEW
spr.owner = sprite[plr.spritenum].owner;
spr.owner = plr.actor()->s().owner;
SetNewStatus(actor, FLEE);
}
@ -59,7 +59,7 @@ static void fleerat(PLAYER& plr, DWHActor* actor)
}
if (abs(plr.x - spr.x) <= 1024 && abs(plr.y - spr.y) <= 1024) {
spr.owner = sprite[plr.spritenum].owner;
spr.owner = plr.actor()->s().owner;
SetNewStatus(actor, FACE);
}

View file

@ -114,7 +114,7 @@ void GameInterface::clearlocalinputstate()
static void UpdatePlayerSpriteAngle(PLAYER& plr)
{
sprite[plr.spritenum].ang = plr.angle.ang.asbuild();
plr.actor()->s().ang = plr.angle.ang.asbuild();
}
void GameInterface::GetInput(InputPacket* packet, ControlInfo* const hidInput)
@ -242,13 +242,13 @@ void processinput(int num) {
if (damage_angvel != 0)
damage_angvel = std::max(damage_angvel - (tics << 1), 0);
sprite[plr.spritenum].cstat ^= 1;
plr.actor()->s().cstat ^= 1;
getzrange(plr.x, plr.y, plr.z, plr.sector, 128, CLIPMASK0);
loz = zr_florz;
auto lohit = zr_florHit;
sprite[plr.spritenum].cstat ^= 1;
plr.actor()->s().cstat ^= 1;
if (lohit.type == kHitSprite) {
auto& spr = lohit.actor->s();
@ -583,7 +583,7 @@ void processinput(int num) {
}
}
//game.pInt.setsprinterpolate(plr.spritenum, sprite[plr.spritenum]);
//game.pInt.setsprinterpolate(plr.spritenum, plr.actor()->s());
SetActorPos(plr.actor(), plr.x, plr.y, plr.z + (plr.height << 8));
UpdatePlayerSpriteAngle(plr);

View file

@ -45,18 +45,18 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly)
if (plr.over_shoulder_on)
{
sprite[plr.spritenum].cstat |= CSTAT_SPRITE_TRANSLUCENT;
plr.actor()->s().cstat |= CSTAT_SPRITE_TRANSLUCENT;
cposz -= 2560;
if (!calcChaseCamPos(&cposx, &cposy, &cposz, &sprite[plr.spritenum], &plr.sector, cang, choriz, dasmoothratio))
if (!calcChaseCamPos(&cposx, &cposy, &cposz, &plr.actor()->s(), &plr.sector, cang, choriz, dasmoothratio))
{
cposz += 2560;
calcChaseCamPos(&cposx, &cposy, &cposz, &sprite[plr.spritenum], &plr.sector, cang, choriz, dasmoothratio);
calcChaseCamPos(&cposx, &cposy, &cposz, &plr.actor()->s(), &plr.sector, cang, choriz, dasmoothratio);
}
}
else
{
sprite[plr.spritenum].cstat &= ~CSTAT_SPRITE_TRANSLUCENT;
plr.actor()->s().cstat &= ~CSTAT_SPRITE_TRANSLUCENT;
}
}

View file

@ -1720,7 +1720,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.xvel = 0;
spawned.yvel = 0;
spawned.zvel = 0;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 32;
spawned.hitag = 0;
spawned.backuploc();
@ -1771,7 +1771,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.xvel = 0;
spawned.yvel = 0;
spawned.zvel = 0;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 32;
spawned.hitag = 0;
movesprite(spawnedactor, (bcos(spawned.ang) * TICSPERFRAME) << 3,
@ -1978,7 +1978,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
} else {
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
}
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 1024;
spawned.hitag = 0;
spawned.pal = 0;
@ -2005,7 +2005,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.xvel = (short) ((krand() & 256) - 128);
spawned.yvel = (short) ((krand() & 256) - 128);
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 1024;
spawned.hitag = 0;
spawned.pal = 0;
@ -2034,7 +2034,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.yvel = (short) ((krand() & 256) - 128);
// spawned.zvel=((krand()&256)-128);
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 1024;
spawned.hitag = 0;
spawned.pal = 0;
@ -2075,7 +2075,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.xvel = (short) ((krand() & 256) - 128);
spawned.yvel = (short) ((krand() & 256) - 128);
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 1024;
spawned.hitag = 0;
spawned.pal = 0;
@ -2102,7 +2102,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.xvel = (short) ((krand() & 256) - 128);
spawned.yvel = (short) ((krand() & 256) - 128);
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 1024;
spawned.hitag = 0;
spawned.pal = 0;
@ -2129,7 +2129,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.xvel = (short) ((krand() & 256) - 128);
spawned.yvel = (short) ((krand() & 256) - 128);
spawned.zvel = (short) ((krand() & 256) - 128);
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 1024;
spawned.hitag = 0;
spawned.pal = 0;
@ -2168,7 +2168,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
}
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 256;
spawned.hitag = 0;
spawned.clipdist = 48;
@ -2209,7 +2209,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
spawned.zvel = plr.horizon.horiz.asq16() >> 12;
}
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 256;
spawned.hitag = 0;
spawned.clipdist = 64;
@ -2259,7 +2259,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
case WILLOWTYPE:
if (cansee(plr.x, plr.y, plr.z, plr.sector, spk.x, spk.y,
spk.z - (tileHeight(spk.picnum) << 7), spk.sectnum))
if ((isWh2() && spk.owner != sprite[plr.spritenum].owner)
if ((isWh2() && spk.owner != plr.actor()->s().owner)
|| checkmedusadist(j, plr.x, plr.y, plr.z, 12))
nukespell(plr, j);
break;

View file

@ -971,7 +971,7 @@ void animateobjs(PLAYER& plr) {
}
if (moveStat.type != kHitNone && spr.picnum == MONSTERBALL)
if (spr.owner == sprite[plr.spritenum].owner) {
if (spr.owner == plr.actor()->s().owner) {
explosion2(i, spr.x, spr.y, spr.z, i);
} else {
explosion(i, spr.x, spr.y, spr.z, i);
@ -990,7 +990,7 @@ void animateobjs(PLAYER& plr) {
} else if (moveStat.type == kHitWall) { // hit a wall
if (spr.picnum == MONSTERBALL) {
if (spr.owner == sprite[plr.spritenum].owner)
if (spr.owner == plr.actor()->s().owner)
explosion2(i, spr.x, spr.y, spr.z, i);
else
explosion(i, spr.x, spr.y, spr.z, i);
@ -1009,7 +1009,7 @@ void animateobjs(PLAYER& plr) {
if (moveStat.type == kHitSprite) { // Bullet hit a sprite
if (spr.picnum == MONSTERBALL) {
if (spr.owner == sprite[plr.spritenum].owner)
if (spr.owner == plr.actor()->s().owner)
explosion2(i, spr.x, spr.y, spr.z, i);
else
explosion(i, spr.x, spr.y, spr.z, i);

View file

@ -776,7 +776,7 @@ boolean prepareboard(const char* fname) {
plr.hvel = 0;
plr.spritenum = insertsprite(plr.sector, (short) 0);
plr.oldsector = plr.sector;
auto& pspr = sprite[plr.spritenum];
auto& pspr = plr.actor()->s();
pspr.x = plr.x;
pspr.y = plr.y;

View file

@ -127,7 +127,7 @@ void processobjs(PLAYER& plr) {
if(isItemSprite(actor->GetSpriteIndex()))
items[(tspr.detail & 0xFF) - ITEMSBASE].pickup(plr, actor);
if (tspr.picnum >= EXPLOSTART && tspr.picnum <= EXPLOEND && tspr.owner != sprite[plr.spritenum].owner)
if (tspr.picnum >= EXPLOSTART && tspr.picnum <= EXPLOEND && tspr.owner != plr.actor()->s().owner)
if (plr.manatime < 1)
addhealth(plr, -1);
}
@ -1537,10 +1537,10 @@ boolean damageactor(PLAYER& plr, DWHActor* hitactor, DWHActor* actor)
{
auto& spr = actor->s();
auto& hitspr = hitactor->s();
if (hitactor == plr.actor() && spr.owner == sprite[plr.spritenum].owner)
if (hitactor == plr.actor() && spr.owner == plr.actor()->s().owner)
return false;
if (hitactor == plr.actor() && spr.owner != sprite[plr.spritenum].owner) {
if (hitactor == plr.actor() && spr.owner != plr.actor()->s().owner) {
if (plr.invincibletime > 0 || plr.godMode) {
DeleteActor(actor);
return false;

View file

@ -427,7 +427,7 @@ void chunksofmeat(PLAYER& plr, DWHActor* hitActor, int hitx, int hity, int hitz,
spawned.zvel = (short) ((krand() & 1023) - 512);
if (newchunk == 1)
spawned.zvel <<= 1;
spawned.owner = sprite[plr.spritenum].owner;
spawned.owner = plr.actor()->s().owner;
spawned.lotag = 512;
spawned.hitag = 0;
spawned.pal = 0;

View file

@ -969,7 +969,7 @@ void animatetags(int nPlayer) {
// Update sprite representation of player
SetActorPos(plr.actor(), plr.x, plr.y, plr.z + (plr.height));
sprite[plr.spritenum].ang = plr.angle.ang.asbuild();
plr.actor()->s().ang = plr.angle.ang.asbuild();
}
}