- unwrapped SetScale as well.

Again no edits here - it's one big replace action.
This commit is contained in:
Christoph Oelckers 2022-10-07 23:52:29 +02:00
parent da523eb8e3
commit 81341ce4a6
69 changed files with 547 additions and 552 deletions

View file

@ -309,7 +309,7 @@ static void ReadSpriteV7(FileReader& fr, spritetype& spr, int& secno)
spr.blend = fr.ReadUInt8(); spr.blend = fr.ReadUInt8();
x = fr.ReadUInt8(); x = fr.ReadUInt8();
y = fr.ReadUInt8(); y = fr.ReadUInt8();
spr.SetScale(x * REPEAT_SCALE, y * REPEAT_SCALE); spr.scale = DVector2(x * REPEAT_SCALE, y * REPEAT_SCALE);
spr.xoffset = fr.ReadInt8(); spr.xoffset = fr.ReadInt8();
spr.yoffset = fr.ReadInt8(); spr.yoffset = fr.ReadInt8();
secno = fr.ReadInt16(); secno = fr.ReadInt16();
@ -338,7 +338,7 @@ static void ReadSpriteV6(FileReader& fr, spritetype& spr, int& secno)
spr.clipdist = fr.ReadUInt8(); spr.clipdist = fr.ReadUInt8();
x = fr.ReadUInt8(); x = fr.ReadUInt8();
y = fr.ReadUInt8(); y = fr.ReadUInt8();
spr.SetScale(x * REPEAT_SCALE, y * REPEAT_SCALE); spr.scale = DVector2(x * REPEAT_SCALE, y * REPEAT_SCALE);
spr.xoffset = fr.ReadInt8(); spr.xoffset = fr.ReadInt8();
spr.yoffset = fr.ReadInt8(); spr.yoffset = fr.ReadInt8();
spr.picnum = fr.ReadInt16(); spr.picnum = fr.ReadInt16();
@ -369,7 +369,7 @@ static void ReadSpriteV5(FileReader& fr, spritetype& spr, int& secno)
spr.shade = fr.ReadInt8(); spr.shade = fr.ReadInt8();
x = fr.ReadUInt8(); x = fr.ReadUInt8();
y = fr.ReadUInt8(); y = fr.ReadUInt8();
spr.SetScale(x * REPEAT_SCALE, y * REPEAT_SCALE); spr.scale = DVector2(x * REPEAT_SCALE, y * REPEAT_SCALE);
spr.picnum = fr.ReadInt16(); spr.picnum = fr.ReadInt16();
spr.intangle = fr.ReadInt16(); spr.intangle = fr.ReadInt16();
spr.angle = mapangle(spr.intangle); spr.angle = mapangle(spr.intangle);

View file

@ -476,11 +476,6 @@ struct spritetypebase
{ {
pos = { x * maptoworld, y * maptoworld, z * zmaptoworld }; pos = { x * maptoworld, y * maptoworld, z * zmaptoworld };
} }
void SetScale(double x, double y)
{
scale = { x, y };
}
}; };

View file

@ -2746,7 +2746,7 @@ static DBloodActor* actDropAmmo(DBloodActor* actor, int nType)
act2->spr.type = nType; act2->spr.type = nType;
act2->spr.picnum = pAmmo->picnum; act2->spr.picnum = pAmmo->picnum;
act2->spr.shade = pAmmo->shade; act2->spr.shade = pAmmo->shade;
act2->spr.SetScale(pAmmo->_xrepeat * REPEAT_SCALE, pAmmo->_yrepeat * REPEAT_SCALE); act2->spr.scale = DVector2(pAmmo->_xrepeat * REPEAT_SCALE, pAmmo->_yrepeat * REPEAT_SCALE);
return act2; return act2;
} }
return nullptr; return nullptr;
@ -2762,7 +2762,7 @@ static DBloodActor* actDropWeapon(DBloodActor* actor, int nType)
act2->spr.type = nType; act2->spr.type = nType;
act2->spr.picnum = pWeapon->picnum; act2->spr.picnum = pWeapon->picnum;
act2->spr.shade = pWeapon->shade; act2->spr.shade = pWeapon->shade;
act2->spr.SetScale(pWeapon->_xrepeat * REPEAT_SCALE, pWeapon->_yrepeat * REPEAT_SCALE); act2->spr.scale = DVector2(pWeapon->_xrepeat * REPEAT_SCALE, pWeapon->_yrepeat * REPEAT_SCALE);
return act2; return act2;
} }
return nullptr; return nullptr;
@ -2778,7 +2778,7 @@ static DBloodActor* actDropItem(DBloodActor* actor, int nType)
act2->spr.type = nType; act2->spr.type = nType;
act2->spr.picnum = pItem->picnum; act2->spr.picnum = pItem->picnum;
act2->spr.shade = pItem->shade; act2->spr.shade = pItem->shade;
act2->spr.SetScale(pItem->_xrepeat * REPEAT_SCALE, pItem->_yrepeat * REPEAT_SCALE); act2->spr.scale = DVector2(pItem->_xrepeat * REPEAT_SCALE, pItem->_yrepeat * REPEAT_SCALE);
return act2; return act2;
} }
return nullptr; return nullptr;
@ -5450,7 +5450,7 @@ void actExplodeSprite(DBloodActor* actor)
} }
actor->ZeroVelocity(); actor->ZeroVelocity();
actPostSprite(actor, kStatExplosion); actPostSprite(actor, kStatExplosion);
actor->spr.SetScale(explodeInfo[nType].repeat * REPEAT_SCALE, explodeInfo[nType].repeat* REPEAT_SCALE); actor->spr.scale = DVector2(explodeInfo[nType].repeat * REPEAT_SCALE, explodeInfo[nType].repeat* REPEAT_SCALE);
actor->spr.flags &= ~3; actor->spr.flags &= ~3;
actor->spr.type = nType; actor->spr.type = nType;
@ -5657,7 +5657,7 @@ static void actCheckThings()
seqSpawn(24, actor, -1); seqSpawn(24, actor, -1);
if (hit.type == kHitSprite) if (hit.type == kHitSprite)
{ {
actor->spr.SetScale(0.5, 0.5); actor->spr.scale = DVector2(0.5, 0.5);
actDamageSprite(actor->GetOwner(), hit.actor(), kDamageFall, actor->xspr.data1); actDamageSprite(actor->GetOwner(), hit.actor(), kDamageFall, actor->xspr.data1);
} }
break; break;
@ -6464,7 +6464,7 @@ DBloodActor* actFireMissile(DBloodActor* actor, double xyoff, double zoff, DVect
spawned->clipdist = pMissileInfo->fClipDist(); spawned->clipdist = pMissileInfo->fClipDist();
spawned->spr.flags = 1; spawned->spr.flags = 1;
spawned->spr.SetScale(pMissileInfo->_xrepeat * REPEAT_SCALE, pMissileInfo->_yrepeat * REPEAT_SCALE); spawned->spr.scale = DVector2(pMissileInfo->_xrepeat * REPEAT_SCALE, pMissileInfo->_yrepeat * REPEAT_SCALE);
spawned->spr.picnum = pMissileInfo->picnum; spawned->spr.picnum = pMissileInfo->picnum;
spawned->spr.angle = actor->spr.angle += mapangle(pMissileInfo->angleOfs); spawned->spr.angle = actor->spr.angle += mapangle(pMissileInfo->angleOfs);
spawned->vel = dv * pMissileInfo->fVelocity(); spawned->vel = dv * pMissileInfo->fVelocity();

View file

@ -337,7 +337,7 @@ static void ThrowThing(DBloodActor* actor, bool impact)
switch (curWeapon) { switch (curWeapon) {
case kThingNapalmBall: case kThingNapalmBall:
spawned->spr.SetScale(0.375, 0.375); spawned->spr.scale = DVector2(0.375, 0.375);
spawned->xspr.data4 = 3 + gGameOptions.nDifficulty; spawned->xspr.data4 = 3 + gGameOptions.nDifficulty;
impact = true; impact = true;
break; break;
@ -345,7 +345,7 @@ static void ThrowThing(DBloodActor* actor, bool impact)
{ {
double s = 0.375 + Random(42) * REPEAT_SCALE; double s = 0.375 + Random(42) * REPEAT_SCALE;
spawned->spr.picnum = gCustomDudeDebrisPics[Random(5)]; spawned->spr.picnum = gCustomDudeDebrisPics[Random(5)];
spawned->spr.SetScale(s, s); spawned->spr.scale = DVector2(s, s);
spawned->spr.cstat |= CSTAT_SPRITE_BLOCK; spawned->spr.cstat |= CSTAT_SPRITE_BLOCK;
spawned->spr.pal = 5; spawned->spr.pal = 5;
@ -1409,7 +1409,7 @@ void removeLeech(DBloodActor* actLeech, bool delSprite)
effectactor->spr.cstat = CSTAT_SPRITE_ALIGNMENT_FACING; effectactor->spr.cstat = CSTAT_SPRITE_ALIGNMENT_FACING;
effectactor->spr.pal = 6; effectactor->spr.pal = 6;
double repeat = 1 + Random(50) * REPEAT_SCALE; double repeat = 1 + Random(50) * REPEAT_SCALE;
effectactor->spr.SetScale(repeat, repeat); effectactor->spr.scale = DVector2(repeat, repeat);
} }
sfxPlay3DSoundCP(actLeech, 490, -1, 0, 60000); sfxPlay3DSoundCP(actLeech, 490, -1, 0, 60000);
@ -1841,7 +1841,7 @@ bool doExplosion(DBloodActor* actor, int nType)
actExplosion->SetOwner(actor); actExplosion->SetOwner(actor);
actExplosion->spr.shade = -127; actExplosion->spr.shade = -127;
actExplosion->spr.SetScale(pExpl->repeat * REPEAT_SCALE, pExpl->repeat * REPEAT_SCALE); actExplosion->spr.scale = DVector2(pExpl->repeat * REPEAT_SCALE, pExpl->repeat * REPEAT_SCALE);
actExplosion->xspr.data1 = pExpl->ticks; actExplosion->xspr.data1 = pExpl->ticks;
actExplosion->xspr.data2 = pExpl->quakeEffect; actExplosion->xspr.data2 = pExpl->quakeEffect;

View file

@ -58,7 +58,7 @@ tspritetype* viewInsertTSprite(tspriteArray& tsprites, sectortype* pSector, int
tspritetype* pTSprite = tsprites.newTSprite(); tspritetype* pTSprite = tsprites.newTSprite();
memset(pTSprite, 0, sizeof(tspritetype)); memset(pTSprite, 0, sizeof(tspritetype));
pTSprite->cstat = CSTAT_SPRITE_YCENTER; pTSprite->cstat = CSTAT_SPRITE_YCENTER;
pTSprite->SetScale(1, 1); pTSprite->scale = DVector2(1, 1);
pTSprite->ownerActor = nullptr; pTSprite->ownerActor = nullptr;
pTSprite->type = -int(tsprites.Size() - 1); pTSprite->type = -int(tsprites.Size() - 1);
pTSprite->statnum = nStatnum; pTSprite->statnum = nStatnum;
@ -131,7 +131,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
break; break;
pNSprite2->picnum = 2203; pNSprite2->picnum = 2203;
pNSprite2->SetScale(width * REPEAT_SCALE, 0.3125); pNSprite2->scale = DVector2(width * REPEAT_SCALE, 0.3125);
pNSprite2->pal = 10; pNSprite2->pal = 10;
if (perc >= 75) pNSprite2->pal = 0; if (perc >= 75) pNSprite2->pal = 0;
@ -180,9 +180,9 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->pal = 0; pNSprite->pal = 0;
pNSprite->pos.Z = top; pNSprite->pos.Z = top;
if (nViewEffect == kViewEffectFlag) if (nViewEffect == kViewEffectFlag)
pNSprite->SetScale(0.375, 0.375); pNSprite->scale = DVector2(0.375, 0.375);
else else
pNSprite->SetScale(1, 1); pNSprite->scale = DVector2(1, 1);
pNSprite->picnum = 3558; pNSprite->picnum = 3558;
return pNSprite; return pNSprite;
} }
@ -207,7 +207,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->shade = -128; pNSprite->shade = -128;
pNSprite->pal = 0; pNSprite->pal = 0;
pNSprite->SetScale(1, 1); pNSprite->scale = DVector2(1, 1);
pNSprite->picnum = 2605; pNSprite->picnum = 2605;
return pNSprite; return pNSprite;
} }
@ -220,7 +220,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->shade = 26; pNSprite->shade = 26;
pNSprite->pal = 0; pNSprite->pal = 0;
pNSprite->cstat |= CSTAT_SPRITE_TRANSLUCENT; pNSprite->cstat |= CSTAT_SPRITE_TRANSLUCENT;
pNSprite->SetScale(1, 1); pNSprite->scale = DVector2(1, 1);
pNSprite->picnum = 2089; pNSprite->picnum = 2089;
break; break;
} }
@ -236,7 +236,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->shade = 26; pNSprite->shade = 26;
pNSprite->pal = 0; pNSprite->pal = 0;
pNSprite->cstat |= CSTAT_SPRITE_TRANSLUCENT; pNSprite->cstat |= CSTAT_SPRITE_TRANSLUCENT;
pNSprite->SetScale(0.375, 0.375); pNSprite->scale = DVector2(0.375, 0.375);
pNSprite->picnum = 626; pNSprite->picnum = 626;
break; break;
} }
@ -288,7 +288,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->picnum = 908; pNSprite->picnum = 908;
pNSprite->statnum = kStatDecoration; pNSprite->statnum = kStatDecoration;
s = (tileWidth(pTSprite->picnum) * pTSprite->scale.X) / 64.; s = (tileWidth(pTSprite->picnum) * pTSprite->scale.X) / 64.;
pNSprite->SetScale(s, s); pNSprite->scale = DVector2(s, s);
break; break;
} }
case kViewEffectSmokeHigh: case kViewEffectSmokeHigh:
@ -339,7 +339,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->picnum = 2101; pNSprite->picnum = 2101;
pNSprite->shade = -128; pNSprite->shade = -128;
s = (tileWidth(pTSprite->picnum) * pTSprite->scale.X) / 32.; s = (tileWidth(pTSprite->picnum) * pTSprite->scale.X) / 32.;
pNSprite->SetScale(s, s); pNSprite->scale = DVector2(s, s);
break; break;
} }
case kViewEffectTorchLow: case kViewEffectTorchLow:
@ -354,7 +354,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->picnum = 2101; pNSprite->picnum = 2101;
pNSprite->shade = -128; pNSprite->shade = -128;
s = (tileWidth(pTSprite->picnum) * pTSprite->scale.X) / 32.; s = (tileWidth(pTSprite->picnum) * pTSprite->scale.X) / 32.;
pNSprite->SetScale(s, s); pNSprite->scale = DVector2(s, s);
break; break;
} }
case kViewEffectShadow: case kViewEffectShadow:
@ -420,7 +420,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->picnum = 624; pNSprite->picnum = 624;
pNSprite->shade = int(pTSprite->pos.Z - pSector->ceilingz) - 64; pNSprite->shade = int(pTSprite->pos.Z - pSector->ceilingz) - 64;
pNSprite->pal = 2; pNSprite->pal = 2;
pNSprite->SetScale(1, 1); pNSprite->scale = DVector2(1, 1);
pNSprite->cstat |= CSTAT_SPRITE_ONE_SIDE | CSTAT_SPRITE_ALIGNMENT_FLOOR | CSTAT_SPRITE_YFLIP | CSTAT_SPRITE_TRANSLUCENT; pNSprite->cstat |= CSTAT_SPRITE_ONE_SIDE | CSTAT_SPRITE_ALIGNMENT_FLOOR | CSTAT_SPRITE_YFLIP | CSTAT_SPRITE_TRANSLUCENT;
pNSprite->angle = pTSprite->angle; pNSprite->angle = pTSprite->angle;
pNSprite->ownerActor = pTSprite->ownerActor; pNSprite->ownerActor = pTSprite->ownerActor;
@ -438,7 +438,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
uint8_t nShade = (uint8_t)clamp(pSector->floorz - pTSprite->pos.Z, 0., 255.); uint8_t nShade = (uint8_t)clamp(pSector->floorz - pTSprite->pos.Z, 0., 255.);
pNSprite->shade = nShade - 32; pNSprite->shade = nShade - 32;
pNSprite->pal = 2; pNSprite->pal = 2;
pNSprite->SetScale(nShade * REPEAT_SCALE, nShade * REPEAT_SCALE); pNSprite->scale = DVector2(nShade * REPEAT_SCALE, nShade * REPEAT_SCALE);
pNSprite->cstat |= CSTAT_SPRITE_ONE_SIDE | CSTAT_SPRITE_ALIGNMENT_FLOOR | CSTAT_SPRITE_TRANSLUCENT; pNSprite->cstat |= CSTAT_SPRITE_ONE_SIDE | CSTAT_SPRITE_ALIGNMENT_FLOOR | CSTAT_SPRITE_TRANSLUCENT;
pNSprite->angle = pTSprite->angle; pNSprite->angle = pTSprite->angle;
pNSprite->ownerActor = pTSprite->ownerActor; pNSprite->ownerActor = pTSprite->ownerActor;
@ -454,7 +454,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
if (gDetail > 1) if (gDetail > 1)
pNSprite->cstat |= CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_TRANS_FLIP; pNSprite->cstat |= CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_TRANS_FLIP;
pNSprite->shade = ClipLow(pTSprite->shade - 32, -128); pNSprite->shade = ClipLow(pTSprite->shade - 32, -128);
pNSprite->SetScale(pTSprite->scale.X, 1); pNSprite->scale = DVector2(pTSprite->scale.X, 1);
pNSprite->picnum = 775; pNSprite->picnum = 775;
break; break;
} }
@ -472,7 +472,7 @@ static tspritetype* viewAddEffect(tspriteArray& tsprites, int nTSprite, VIEW_EFF
pNSprite->pos = pTSprite->pos.plusZ(-32 - weaponIcon.zOffset); pNSprite->pos = pTSprite->pos.plusZ(-32 - weaponIcon.zOffset);
pNSprite->picnum = nTile; pNSprite->picnum = nTile;
pNSprite->shade = pTSprite->shade; pNSprite->shade = pTSprite->shade;
pNSprite->SetScale(0.5, 0.5); pNSprite->scale = DVector2(0.5, 0.5);
auto& nVoxel = voxelIndex[nTile]; auto& nVoxel = voxelIndex[nTile];
if (cl_showweapon == 2 && r_voxels && nVoxel != -1) if (cl_showweapon == 2 && r_voxels && nVoxel != -1)
{ {
@ -535,13 +535,13 @@ void viewProcessSprites(tspriteArray& tsprites, const DVector3& cPos, DAngle cA,
auto owneractor = static_cast<DBloodActor*>(pTSprite->ownerActor); auto owneractor = static_cast<DBloodActor*>(pTSprite->ownerActor);
if (owneractor->spr.detail > gDetail) if (owneractor->spr.detail > gDetail)
{ {
pTSprite->SetScale(0, 0); pTSprite->scale = DVector2(0, 0);
continue; continue;
} }
int nTile = pTSprite->picnum; int nTile = pTSprite->picnum;
if (nTile < 0 || nTile >= kMaxTiles) if (nTile < 0 || nTile >= kMaxTiles)
{ {
pTSprite->SetScale(0, 0); pTSprite->scale = DVector2(0, 0);
continue; continue;
} }
// skip picnum 0 on face sprites. picnum 0 is a simple wall texture in Blood, // skip picnum 0 on face sprites. picnum 0 is a simple wall texture in Blood,
@ -549,7 +549,7 @@ void viewProcessSprites(tspriteArray& tsprites, const DVector3& cPos, DAngle cA,
// Since the wall texture is perfectly fine for wall and floor sprites, these will be allowed to pass. // Since the wall texture is perfectly fine for wall and floor sprites, these will be allowed to pass.
if (nTile == 0 && (pTSprite->cstat & CSTAT_SPRITE_ALIGNMENT_MASK) == CSTAT_SPRITE_ALIGNMENT_FACING) if (nTile == 0 && (pTSprite->cstat & CSTAT_SPRITE_ALIGNMENT_MASK) == CSTAT_SPRITE_ALIGNMENT_FACING)
{ {
pTSprite->SetScale(0, 0); pTSprite->scale = DVector2(0, 0);
continue; continue;
} }
@ -704,18 +704,18 @@ void viewProcessSprites(tspriteArray& tsprites, const DVector3& cPos, DAngle cA,
pTSprite->shade = ClipRange(nShade, -128, 127); pTSprite->shade = ClipRange(nShade, -128, 127);
if ((pTSprite->flags & kHitagRespawn) && pTSprite->ownerActor->spr.intowner == 3 && owneractor->hasX()) // Where does this 3 come from? Nothing sets it. if ((pTSprite->flags & kHitagRespawn) && pTSprite->ownerActor->spr.intowner == 3 && owneractor->hasX()) // Where does this 3 come from? Nothing sets it.
{ {
pTSprite->SetScale(0.75, 0.75); pTSprite->scale = DVector2(0.75, 0.75);
pTSprite->shade = -128; pTSprite->shade = -128;
pTSprite->picnum = 2272 + 2 * owneractor->xspr.respawnPending; pTSprite->picnum = 2272 + 2 * owneractor->xspr.respawnPending;
pTSprite->cstat &= ~(CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_TRANS_FLIP); pTSprite->cstat &= ~(CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_TRANS_FLIP);
if (((IsItemSprite(pTSprite) || IsAmmoSprite(pTSprite)) && gGameOptions.nItemSettings == 2) if (((IsItemSprite(pTSprite) || IsAmmoSprite(pTSprite)) && gGameOptions.nItemSettings == 2)
|| (IsWeaponSprite(pTSprite) && gGameOptions.nWeaponSettings == 3)) || (IsWeaponSprite(pTSprite) && gGameOptions.nWeaponSettings == 3))
{ {
pTSprite->SetScale(0.75, 0.75); pTSprite->scale = DVector2(0.75, 0.75);
} }
else else
{ {
pTSprite->SetScale(0, 0); pTSprite->scale = DVector2(0, 0);
} }
} }
if (owneractor->hasX() && owneractor->xspr.burnTime > 0) if (owneractor->hasX() && owneractor->xspr.burnTime > 0)
@ -809,7 +809,7 @@ void viewProcessSprites(tspriteArray& tsprites, const DVector3& cPos, DAngle cA,
if (pTSprite->statnum == kStatFlare) { if (pTSprite->statnum == kStatFlare) {
if (owneractor->GetTarget() == pPlayer->actor) if (owneractor->GetTarget() == pPlayer->actor)
{ {
pTSprite->SetScale(0, 0); pTSprite->scale = DVector2(0, 0);
break; break;
} }
} }
@ -840,7 +840,7 @@ void viewProcessSprites(tspriteArray& tsprites, const DVector3& cPos, DAngle cA,
auto target = owneractor->GetTarget(); auto target = owneractor->GetTarget();
if (target && target->IsPlayerActor()) if (target && target->IsPlayerActor())
{ {
pTSprite->SetScale(0, 0); pTSprite->scale = DVector2(0, 0);
break; break;
} }
} }

View file

@ -93,7 +93,7 @@ void FlareBurst(DBloodActor* actor, sectortype*) // 2
auto spawnedactor = actSpawnSprite(actor, 5); auto spawnedactor = actSpawnSprite(actor, 5);
spawnedactor->spr.picnum = 2424; spawnedactor->spr.picnum = 2424;
spawnedactor->spr.shade = -128; spawnedactor->spr.shade = -128;
spawnedactor->spr.SetScale(0.5, 0.5); spawnedactor->spr.scale = DVector2(0.5, 0.5);
spawnedactor->spr.type = kMissileFlareAlt; spawnedactor->spr.type = kMissileFlareAlt;
spawnedactor->clipdist = 0.5; spawnedactor->clipdist = 0.5;
spawnedactor->SetOwner(actor); spawnedactor->SetOwner(actor);
@ -560,7 +560,7 @@ void sleeveStopBouncing(DBloodActor* actor)
} }
actor->spr.type = FX_51; actor->spr.type = FX_51;
actor->spr.SetScale(0.15625, 0.15625); actor->spr.scale = DVector2(0.15625, 0.15625);
} }

View file

@ -51,7 +51,7 @@ DBloodActor* InsertSprite(sectortype* pSector, int nStat)
auto act = static_cast<DBloodActor*>(::InsertActor(RUNTIME_CLASS(DBloodActor), pSector, nStat)); auto act = static_cast<DBloodActor*>(::InsertActor(RUNTIME_CLASS(DBloodActor), pSector, nStat));
act->spr.cstat = CSTAT_SPRITE_YCENTER; act->spr.cstat = CSTAT_SPRITE_YCENTER;
act->clipdist = 8; act->clipdist = 8;
act->spr.SetScale(1, 1); act->spr.scale = DVector2(1, 1);
return act; return act;
} }
@ -485,7 +485,7 @@ void dbLoadMap(const char* pPath, DVector3& pos, short* pAngle, sectortype** cur
pSprite->extra = LittleShort(load.extra); pSprite->extra = LittleShort(load.extra);
pSprite->pal = load.pal; pSprite->pal = load.pal;
pSprite->clipdist = load.clipdist; pSprite->clipdist = load.clipdist;
pSprite->SetScale(load._xrepeat * REPEAT_SCALE, load._yrepeat * REPEAT_SCALE); pSprite->scale = DVector2(load._xrepeat * REPEAT_SCALE, load._yrepeat * REPEAT_SCALE);
pSprite->xoffset = load.xoffset; pSprite->xoffset = load.xoffset;
pSprite->yoffset = load.yoffset; pSprite->yoffset = load.yoffset;
pSprite->detail = load.detail; pSprite->detail = load.detail;

View file

@ -253,7 +253,7 @@ void insertspriteq(DDukeActor* const actor)
spriteq[spriteqloc] = actor; spriteq[spriteqloc] = actor;
spriteqloc = (spriteqloc + 1) % spriteqamount; spriteqloc = (spriteqloc + 1) % spriteqamount;
} }
else actor->spr.SetScale(0, 0); else actor->spr.scale = DVector2(0, 0);
} }
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
@ -1065,7 +1065,7 @@ void movedoorshock(DDukeActor* actor)
{ {
auto sectp = actor->sector(); auto sectp = actor->sector();
double j = abs(sectp->ceilingz - sectp->floorz) / 128.; double j = abs(sectp->ceilingz - sectp->floorz) / 128.;
actor->spr.SetScale(0.25, 0.0625 + j); actor->spr.scale = DVector2(0.25, 0.0625 + j);
actor->spr.pos.Z = sectp->floorz; actor->spr.pos.Z = sectp->floorz;
} }
@ -1354,7 +1354,7 @@ void rpgexplode(DDukeActor *actor, int hit, const DVector3 &pos, int EXPLOSION2,
if (actor->spr.scale.X < 0.15625) if (actor->spr.scale.X < 0.15625)
{ {
explosion->spr.SetScale(0.09375, 0.09375); explosion->spr.scale = DVector2(0.09375, 0.09375);
} }
else if (hit == kHitSector) else if (hit == kHitSector)
{ {
@ -1788,7 +1788,7 @@ void ooz(DDukeActor *actor)
double y = min((actor->floorz - actor->ceilingz) / 128, 4.); double y = min((actor->floorz - actor->ceilingz) / 128, 4.);
double x = clamp(0.390625 - y * 0.5, 0.125, 0.75); double x = clamp(0.390625 - y * 0.5, 0.125, 0.75);
actor->spr.SetScale(x, y); actor->spr.scale = DVector2(x, y);
actor->spr.pos.Z = actor->floorz; actor->spr.pos.Z = actor->floorz;
} }
@ -2008,7 +2008,7 @@ void forcesphereexplode(DDukeActor *actor)
size = clamp(size, REPEAT_SCALE, 1.); size = clamp(size, REPEAT_SCALE, 1.);
actor->spr.SetScale(size, size); actor->spr.scale = DVector2(size, size);
actor->spr.shade = int8_t((size * 32) - 48); actor->spr.shade = int8_t((size * 32) - 48);
for (int j = actor->temp_data[0]; j > 0; j--) for (int j = actor->temp_data[0]; j > 0; j--)
@ -4344,7 +4344,7 @@ void handle_se24(DDukeActor *actor, bool scroll, double mult)
case STAT_DEFAULT: case STAT_DEFAULT:
if (actorflag(a2, SFLAG_SE24_REMOVE)) if (actorflag(a2, SFLAG_SE24_REMOVE))
{ {
a2->spr.SetScale(0, 0); a2->spr.scale = DVector2(0, 0);
continue; continue;
} }
@ -4596,7 +4596,7 @@ void handle_se130(DDukeActor *actor, int countmax, int EXPLOSION2)
if (k) if (k)
{ {
double s = 0.03125 + (krand() & 7) * REPEAT_SCALE; double s = 0.03125 + (krand() & 7) * REPEAT_SCALE;
k->spr.SetScale(s, s); k->spr.scale = DVector2(s, s);
k->spr.pos.Z = sc->floorz + krandf(x); k->spr.pos.Z = sc->floorz + krandf(x);
k->spr.angle += DAngle45 - randomAngle(90); k->spr.angle += DAngle45 - randomAngle(90);
k->vel.X = krandf(8); k->vel.X = krandf(8);

View file

@ -839,7 +839,7 @@ static void movetripbomb(DDukeActor *actor)
while (auto a1 = it.Next()) while (auto a1 = it.Next())
{ {
if (a1->spr.picnum == LASERLINE && actor->spr.hitag == a1->spr.hitag) if (a1->spr.picnum == LASERLINE && actor->spr.hitag == a1->spr.hitag)
a1->spr.SetScale(0, 0); a1->spr.scale = DVector2(0, 0);
} }
deletesprite(actor); deletesprite(actor);
} }
@ -1083,14 +1083,14 @@ CLEAR_THE_BOLT2:
} }
if ((actor->spr.scale.X == 0 && actor->spr.scale.Y) == 0) if ((actor->spr.scale.X == 0 && actor->spr.scale.Y) == 0)
{ {
actor->spr.SetScale(actor->temp_pos.X, actor->temp_pos.Y); actor->spr.scale = DVector2(actor->temp_pos.X, actor->temp_pos.Y);
} }
if ((krand() & 8) == 0) if ((krand() & 8) == 0)
{ {
actor->temp_pos.X = actor->spr.scale.X; actor->temp_pos.X = actor->spr.scale.X;
actor->temp_pos.Y = actor->spr.scale.Y; actor->temp_pos.Y = actor->spr.scale.Y;
actor->temp_data[2] = global_random & 4; actor->temp_data[2] = global_random & 4;
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
goto CLEAR_THE_BOLT2; goto CLEAR_THE_BOLT2;
} }
actor->spr.picnum++; actor->spr.picnum++;
@ -1128,14 +1128,14 @@ CLEAR_THE_BOLT:
} }
if (actor->spr.scale.X == 0 && actor->spr.scale.Y == 0) if (actor->spr.scale.X == 0 && actor->spr.scale.Y == 0)
{ {
actor->spr.SetScale(actor->temp_pos.X, actor->temp_pos.Y); actor->spr.scale = DVector2(actor->temp_pos.X, actor->temp_pos.Y);
} }
else if ((krand() & 8) == 0) else if ((krand() & 8) == 0)
{ {
actor->temp_pos.X = actor->spr.scale.X; actor->temp_pos.X = actor->spr.scale.X;
actor->temp_pos.Y = actor->spr.scale.Y; actor->temp_pos.Y = actor->spr.scale.Y;
actor->temp_data[2] = global_random & 4; actor->temp_data[2] = global_random & 4;
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
goto CLEAR_THE_BOLT; goto CLEAR_THE_BOLT;
} }
actor->spr.picnum++; actor->spr.picnum++;
@ -1323,7 +1323,7 @@ static bool movefireball(DDukeActor* actor)
} }
} }
double scale = actor->spr.scale.X * siz; double scale = actor->spr.scale.X * siz;
ball->spr.SetScale(scale, scale); ball->spr.scale = DVector2(scale, scale);
ball->spr.cstat = actor->spr.cstat; ball->spr.cstat = actor->spr.cstat;
ball->spr.extra = 0; ball->spr.extra = 0;
@ -1355,7 +1355,7 @@ static bool weaponhitsprite(DDukeActor* proj, DDukeActor *targ, bool fireball)
if (spawned) if (spawned)
{ {
spawned->spr.pal = 1; spawned->spr.pal = 1;
spawned->spr.SetScale(0.5, 0.5); spawned->spr.scale = DVector2(0.5, 0.5);
} }
deletesprite(proj); deletesprite(proj);
@ -1627,7 +1627,7 @@ static void weaponcommon_d(DDukeActor* proj)
if (spawned) if (spawned)
{ {
auto scale = proj->spr.scale.X * 0.5; auto scale = proj->spr.scale.X * 0.5;
spawned->spr.SetScale(scale,scale); spawned->spr.scale = DVector2(scale,scale);
if (coll.type == kHitSector) if (coll.type == kHitSector)
{ {
if (proj->vel.Z < 0) if (proj->vel.Z < 0)
@ -1644,7 +1644,7 @@ static void weaponcommon_d(DDukeActor* proj)
if (spawned) if (spawned)
{ {
auto scale = proj->spr.scale.X * 0.5; auto scale = proj->spr.scale.X * 0.5;
spawned->spr.SetScale(scale,scale); spawned->spr.scale = DVector2(scale,scale);
} }
} }
} }
@ -1702,7 +1702,7 @@ void moveweapons_d(void)
if (spawned) if (spawned)
{ {
spawned->spr.pal = 1; spawned->spr.pal = 1;
spawned->spr.SetScale(0.5, 0.5); spawned->spr.scale = DVector2(0.5, 0.5);
} }
deletesprite(act); deletesprite(act);
continue; continue;
@ -2215,7 +2215,7 @@ static void greenslime(DDukeActor *actor)
} }
double add = (BobVal(actor->temp_data[1]) * 2) * REPEAT_SCALE; double add = (BobVal(actor->temp_data[1]) * 2) * REPEAT_SCALE;
actor->spr.SetScale(0.3125 + add, 0.234375 + add); actor->spr.scale = DVector2(0.3125 + add, 0.234375 + add);
actor->spr.pos.XY() = ps[p].pos.XY() + ps[p].angle.ang.ToVector() * 8; actor->spr.pos.XY() = ps[p].pos.XY() + ps[p].angle.ang.ToVector() * 8;
return; return;
} }
@ -2279,7 +2279,7 @@ static void greenslime(DDukeActor *actor)
if (actor->spr.scale.Y > 0.25 ) actor->spr.scale.Y += (-(krand() & 7) * REPEAT_SCALE); if (actor->spr.scale.Y > 0.25 ) actor->spr.scale.Y += (-(krand() & 7) * REPEAT_SCALE);
else else
{ {
actor->spr.SetScale(0.625, 0.25); actor->spr.scale = DVector2(0.625, 0.25);
actor->temp_actor = nullptr; actor->temp_actor = nullptr;
actor->temp_data[0] = 0; actor->temp_data[0] = 0;
} }

View file

@ -573,22 +573,22 @@ void respawn_rrra(DDukeActor* oldact, DDukeActor* newact)
{ {
if (newact->spr.pal == 30) if (newact->spr.pal == 30)
{ {
newact->spr.SetScale(0.40625, 0.40625); newact->spr.scale = DVector2(0.40625, 0.40625);
newact->clipdist = 18.75; newact->clipdist = 18.75;
} }
else if (newact->spr.pal == 31) else if (newact->spr.pal == 31)
{ {
newact->spr.SetScale(0.5625, 0.5625); newact->spr.scale = DVector2(0.5625, 0.5625);
newact->clipdist = 25; newact->clipdist = 25;
} }
else if (newact->spr.pal == 32) else if (newact->spr.pal == 32)
{ {
newact->spr.SetScale(0.78125, 0.78125); newact->spr.scale = DVector2(0.78125, 0.78125);
newact->clipdist = 25; newact->clipdist = 25;
} }
else else
{ {
newact->spr.SetScale(0.78125, 0.78125); newact->spr.scale = DVector2(0.78125, 0.78125);
newact->clipdist = 25; newact->clipdist = 25;
} }
} }
@ -765,14 +765,14 @@ CLEAR_THE_BOLT:
} }
if (actor->spr.scale.X == 0 && actor->spr.scale.Y == 0) if (actor->spr.scale.X == 0 && actor->spr.scale.Y == 0)
{ {
actor->spr.SetScale(actor->temp_pos.X, actor->temp_pos.Y); actor->spr.scale = DVector2(actor->temp_pos.X, actor->temp_pos.Y);
} }
else if ((krand() & 8) == 0) else if ((krand() & 8) == 0)
{ {
actor->temp_pos.X = actor->spr.scale.X; actor->temp_pos.X = actor->spr.scale.X;
actor->temp_pos.Y = actor->spr.scale.Y; actor->temp_pos.Y = actor->spr.scale.Y;
actor->temp_data[2] = global_random & 4; actor->temp_data[2] = global_random & 4;
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
goto CLEAR_THE_BOLT; goto CLEAR_THE_BOLT;
} }
actor->spr.picnum++; actor->spr.picnum++;
@ -975,7 +975,7 @@ static bool weaponhitsprite(DDukeActor *proj, DDukeActor *targ, const DVector3 &
if (star) if (star)
{ {
star->spr.pal = 1; star->spr.pal = 1;
star->spr.SetScale(0.5, 0.5); star->spr.scale = DVector2(0.5, 0.5);
} }
deletesprite(proj); deletesprite(proj);
@ -1079,7 +1079,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const DVector3& oldpo
auto j = spawn(proj, CIRCLESTUCK); auto j = spawn(proj, CIRCLESTUCK);
if (j) if (j)
{ {
j->spr.SetScale(0.125, 0.125); j->spr.scale = DVector2(0.125, 0.125);
j->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL; j->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL;
j->spr.angle += DAngle90; j->spr.angle += DAngle90;
j->clipdist = proj->spr.scale.X * tileWidth(proj->spr.picnum) * 0.125; j->clipdist = proj->spr.scale.X * tileWidth(proj->spr.picnum) * 0.125;
@ -1281,7 +1281,7 @@ static void weaponcommon_r(DDukeActor *proj)
if (spawned) if (spawned)
{ {
auto scale = proj->spr.scale.X * 0.5; auto scale = proj->spr.scale.X * 0.5;
spawned->spr.SetScale(scale, scale); spawned->spr.scale = DVector2(scale, scale);
if (coll.type == kHitSector) if (coll.type == kHitSector)
{ {
if (proj->vel.Z < 0) if (proj->vel.Z < 0)
@ -1334,7 +1334,7 @@ void moveweapons_r(void)
if (star) if (star)
{ {
star->spr.pal = 1; star->spr.pal = 1;
star->spr.SetScale(0.5, 0.5); star->spr.scale = DVector2(0.5, 0.5);
} }
deletesprite(proj); deletesprite(proj);
continue; continue;
@ -3130,7 +3130,7 @@ void handle_se06_r(DDukeActor *actor)
{ {
ns->spr.cstat = CSTAT_SPRITE_TRANS_FLIP | CSTAT_SPRITE_TRANSLUCENT; ns->spr.cstat = CSTAT_SPRITE_TRANS_FLIP | CSTAT_SPRITE_TRANSLUCENT;
ns->spr.pal = 7; ns->spr.pal = 7;
ns->spr.SetScale(1.25, 3.984375); ns->spr.scale = DVector2(1.25, 3.984375);
} }
ns = spawn(actor, 296); ns = spawn(actor, 296);
if (ns) if (ns)

View file

@ -63,7 +63,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
case DEVELOPERCOMMENTARY: case DEVELOPERCOMMENTARY:
case DEVELOPERCOMMENTARY + 1: case DEVELOPERCOMMENTARY + 1:
if (isWorldTour() && !wt_commentary) if (isWorldTour() && !wt_commentary)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
break; break;
case BLOODPOOL: case BLOODPOOL:
case PUKE: case PUKE:
@ -77,7 +77,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
case RESPAWNMARKERYELLOW: case RESPAWNMARKERYELLOW:
case RESPAWNMARKERGREEN: case RESPAWNMARKERGREEN:
if (ud.marker == 0) if (ud.marker == 0)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
continue; continue;
case CHAIR3: case CHAIR3:
if (hw_models && modelManager.CheckModel(t->picnum, t->pal)) if (hw_models && modelManager.CheckModel(t->picnum, t->pal))
@ -154,7 +154,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
t->cstat |= CSTAT_SPRITE_YCENTER; t->cstat |= CSTAT_SPRITE_YCENTER;
} }
else else
t->SetScale(0, 0); t->scale = DVector2(0, 0);
break; break;
case NATURALLIGHTNING: case NATURALLIGHTNING:
t->shade = -127; t->shade = -127;
@ -211,7 +211,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
double dist1 = (OwnerAc->spr.pos.XY() - t->pos.XY()).LengthSquared(); double dist1 = (OwnerAc->spr.pos.XY() - t->pos.XY()).LengthSquared();
double dist2 = (OwnerAc->spr.pos.XY() - ps[screenpeek].GetActor()->spr.pos.XY()).LengthSquared(); double dist2 = (OwnerAc->spr.pos.XY() - ps[screenpeek].GetActor()->spr.pos.XY()).LengthSquared();
if (dist1 < dist2) if (dist1 < dist2)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
} }
} }
continue; continue;
@ -220,7 +220,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (OwnerAc && OwnerAc->spr.statnum == STAT_PLAYER) if (OwnerAc && OwnerAc->spr.statnum == STAT_PLAYER)
{ {
if (display_mirror == 0 && OwnerAc->PlayerIndex() == screenpeek && ps[screenpeek].over_shoulder_on == 0) if (display_mirror == 0 && OwnerAc->PlayerIndex() == screenpeek && ps[screenpeek].over_shoulder_on == 0)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
else else
{ {
t->angle = (viewVec - t->pos.XY()).Angle(); t->angle = (viewVec - t->pos.XY()).Angle();
@ -350,11 +350,11 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
else newtspr->pos.Z = h->spr.pos.Z - 51; else newtspr->pos.Z = h->spr.pos.Z - 51;
if (ps[p].curr_weapon == HANDBOMB_WEAPON) if (ps[p].curr_weapon == HANDBOMB_WEAPON)
{ {
newtspr->SetScale(0.15625, 0.15625); newtspr->scale = DVector2(0.15625, 0.15625);
} }
else else
{ {
newtspr->SetScale(0.25, 0.25); newtspr->scale = DVector2(0.25, 0.25);
} }
newtspr->pal = 0; newtspr->pal = 0;
} }
@ -406,7 +406,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (ud.multimode < 2 || (ud.multimode > 1 && p == screenpeek)) if (ud.multimode < 2 || (ud.multimode > 1 && p == screenpeek))
{ {
t->ownerActor = nullptr; t->ownerActor = nullptr;
t->SetScale(0, 0); t->scale = DVector2(0, 0);
continue; continue;
} }
@ -726,7 +726,7 @@ void animatesprites_d(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
h->dispicnum = t->picnum; h->dispicnum = t->picnum;
if (t->sectp->floorpicnum == MIRROR) if (t->sectp->floorpicnum == MIRROR)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
} }
} }

View file

@ -138,7 +138,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
t->cstat |= CSTAT_SPRITE_YCENTER; t->cstat |= CSTAT_SPRITE_YCENTER;
} }
else else
t->SetScale(0, 0); t->scale = DVector2(0, 0);
break; break;
default: default:
break; break;
@ -149,7 +149,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (h->spr.statnum != STAT_ACTOR && h->spr.picnum == APLAYER && pp->newOwner == nullptr && h->GetOwner()) if (h->spr.statnum != STAT_ACTOR && h->spr.picnum == APLAYER && pp->newOwner == nullptr && h->GetOwner())
{ {
t->pos = interpolatedvalue(pp->opos, pp->pos, interpfrac).plusZ(gs.playerheight); t->pos = interpolatedvalue(pp->opos, pp->pos, interpfrac).plusZ(gs.playerheight);
h->spr.SetScale(0.375, 0.265625); h->spr.scale = DVector2(0.375, 0.265625);
} }
else if (!actorflag(h, SFLAG_NOINTERPOLATE)) else if (!actorflag(h, SFLAG_NOINTERPOLATE))
{ {
@ -174,10 +174,10 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
else else
t->pal = 2; t->pal = 2;
if (ud.marker == 0) if (ud.marker == 0)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
break; break;
case DUKELYINGDEAD: case DUKELYINGDEAD:
h->spr.SetScale(0.375, 0.265625); h->spr.scale = DVector2(0.375, 0.265625);
if (h->spr.extra > 0) if (h->spr.extra > 0)
t->pos.Z += 6; t->pos.Z += 6;
break; break;
@ -204,7 +204,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
double dist1 = (OwnerAc->spr.pos.XY() - t->pos.XY()).LengthSquared(); double dist1 = (OwnerAc->spr.pos.XY() - t->pos.XY()).LengthSquared();
double dist2 = (OwnerAc->spr.pos.XY() - ps[screenpeek].GetActor()->spr.pos.XY()).LengthSquared(); double dist2 = (OwnerAc->spr.pos.XY() - ps[screenpeek].GetActor()->spr.pos.XY()).LengthSquared();
if (dist1 < dist2) if (dist1 < dist2)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
} }
} }
continue; continue;
@ -212,7 +212,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (OwnerAc && OwnerAc->spr.statnum == STAT_PLAYER) if (OwnerAc && OwnerAc->spr.statnum == STAT_PLAYER)
{ {
if (display_mirror == 0 && OwnerAc->PlayerIndex() == screenpeek && ps[OwnerAc->PlayerIndex()].over_shoulder_on == 0) if (display_mirror == 0 && OwnerAc->PlayerIndex() == screenpeek && ps[OwnerAc->PlayerIndex()].over_shoulder_on == 0)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
else else
{ {
t->angle = (viewVec - t->pos.XY()).Angle(); t->angle = (viewVec - t->pos.XY()).Angle();
@ -388,15 +388,15 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
else newtspr->pos.Z = h->spr.pos.Z - 51; else newtspr->pos.Z = h->spr.pos.Z - 51;
if (ps[p].curr_weapon == HANDBOMB_WEAPON) if (ps[p].curr_weapon == HANDBOMB_WEAPON)
{ {
newtspr->SetScale(0.15625, 0.15625); newtspr->scale = DVector2(0.15625, 0.15625);
} }
else if (ps[p].OnMotorcycle || ps[p].OnBoat) else if (ps[p].OnMotorcycle || ps[p].OnBoat)
{ {
newtspr->SetScale(0, 0); newtspr->scale = DVector2(0, 0);
} }
else else
{ {
newtspr->SetScale(0.25, 0.25); newtspr->scale = DVector2(0.25, 0.25);
} }
newtspr->pal = 0; newtspr->pal = 0;
} }
@ -447,7 +447,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (ud.multimode < 2 || (ud.multimode > 1 && p == screenpeek)) if (ud.multimode < 2 || (ud.multimode > 1 && p == screenpeek))
{ {
t->ownerActor = nullptr; t->ownerActor = nullptr;
t->SetScale(0, 0); t->scale = DVector2(0, 0);
continue; continue;
} }
@ -464,7 +464,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (ps[p].OnMotorcycle && p == screenpeek) if (ps[p].OnMotorcycle && p == screenpeek)
{ {
t->picnum = RRTILE7219; t->picnum = RRTILE7219;
t->SetScale(0.28125, 0.28125); t->scale = DVector2(0.28125, 0.28125);
t4 = 0; t4 = 0;
t3 = 0; t3 = 0;
t1 = 0; t1 = 0;
@ -480,7 +480,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
else t->cstat &= ~CSTAT_SPRITE_XFLIP; else t->cstat &= ~CSTAT_SPRITE_XFLIP;
t->picnum = RRTILE7213 + k; t->picnum = RRTILE7213 + k;
t->SetScale(0.28125, 0.28125); t->scale = DVector2(0.28125, 0.28125);
t4 = 0; t4 = 0;
t3 = 0; t3 = 0;
t1 = 0; t1 = 0;
@ -488,7 +488,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
else if (ps[p].OnBoat && p == screenpeek) else if (ps[p].OnBoat && p == screenpeek)
{ {
t->picnum = RRTILE7190; t->picnum = RRTILE7190;
t->SetScale(0.5, 0.5); t->scale = DVector2(0.5, 0.5);
t4 = 0; t4 = 0;
t3 = 0; t3 = 0;
t1 = 0; t1 = 0;
@ -505,7 +505,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
else t->cstat &= ~CSTAT_SPRITE_XFLIP; else t->cstat &= ~CSTAT_SPRITE_XFLIP;
t->picnum = RRTILE7184 + k; t->picnum = RRTILE7184 + k;
t->SetScale(0.5, 0.5); t->scale = DVector2(0.5, 0.5);
t4 = 0; t4 = 0;
t3 = 0; t3 = 0;
t1 = 0; t1 = 0;
@ -685,7 +685,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (t->picnum < 0 || t->picnum >= MAXTILES) if (t->picnum < 0 || t->picnum >= MAXTILES)
{ {
t->picnum = 0; t->picnum = 0;
t->SetScale(0, 0); t->scale = DVector2(0, 0);
} }
if (h->dispicnum >= 0) if (h->dispicnum >= 0)
@ -730,7 +730,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
if (hw_models && modelManager.CheckModel(t->picnum, t->pal)) if (hw_models && modelManager.CheckModel(t->picnum, t->pal))
{ {
shadowspr->SetScale(0, 0); shadowspr->scale = DVector2(0, 0);
// 512:trans reverse // 512:trans reverse
//1024:tell MD2SPRITE.C to use Z-buffer hacks to hide overdraw issues //1024:tell MD2SPRITE.C to use Z-buffer hacks to hide overdraw issues
shadowspr->clipdist |= TSPR_FLAGS_MDHACK; shadowspr->clipdist |= TSPR_FLAGS_MDHACK;
@ -947,7 +947,7 @@ void animatesprites_r(tspriteArray& tsprites, const DVector2& viewVec, DAngle vi
h->dispicnum = t->picnum; h->dispicnum = t->picnum;
if (t->sectp->floorpicnum == MIRROR) if (t->sectp->floorpicnum == MIRROR)
t->SetScale(0, 0); t->scale = DVector2(0, 0);
} }
} }
END_DUKE_NS END_DUKE_NS

View file

@ -2238,7 +2238,7 @@ int ParseState::parse(void)
g_ac->spr.shade = -12; g_ac->spr.shade = -12;
g_ac->clipdist = 16; g_ac->clipdist = 16;
g_ac->spr.SetScale(0.65625, 0.5625); g_ac->spr.scale = DVector2(0.65625, 0.5625);
g_ac->SetOwner(g_ac); g_ac->SetOwner(g_ac);
g_ac->spr.xoffset = 0; g_ac->spr.xoffset = 0;
g_ac->spr.pal = ps[g_p].palookup; g_ac->spr.pal = ps[g_p].palookup;

View file

@ -126,7 +126,7 @@ static void shootfireball(DDukeActor *actor, int p, DVector3 pos, DAngle ang)
spawned->spr.extra += (krand() & 7); spawned->spr.extra += (krand() & 7);
if (actor->spr.picnum == BOSS5 || p >= 0) if (actor->spr.picnum == BOSS5 || p >= 0)
{ {
spawned->spr.SetScale(0.625, 0.625); spawned->spr.scale = DVector2(0.625, 0.625);
} }
spawned->spr.yint = p; spawned->spr.yint = p;
spawned->spr.cstat = CSTAT_SPRITE_YCENTER; spawned->spr.cstat = CSTAT_SPRITE_YCENTER;
@ -204,7 +204,7 @@ static void shootflamethrowerflame(DDukeActor* actor, int p, DVector3 spos, DAng
spawned->setsector(actor->sector()); spawned->setsector(actor->sector());
spawned->spr.cstat = CSTAT_SPRITE_YCENTER; spawned->spr.cstat = CSTAT_SPRITE_YCENTER;
spawned->spr.angle = sang; spawned->spr.angle = sang;
spawned->spr.SetScale(0.03125, 0.03125); spawned->spr.scale = DVector2(0.03125, 0.03125);
spawned->clipdist = 10; spawned->clipdist = 10;
spawned->spr.yint = p; spawned->spr.yint = p;
spawned->SetOwner(actor); spawned->SetOwner(actor);
@ -214,7 +214,7 @@ static void shootflamethrowerflame(DDukeActor* actor, int p, DVector3 spos, DAng
if (actor->spr.picnum == BOSS5) if (actor->spr.picnum == BOSS5)
{ {
spawned->spr.pos += sang.ToVector() * (128. / 7); spawned->spr.pos += sang.ToVector() * (128. / 7);
spawned->spr.SetScale(0.15625, 0.15625); spawned->spr.scale = DVector2(0.15625, 0.15625);
} }
} }
} }
@ -421,7 +421,7 @@ static void shootweapon(DDukeActor *actor, int p, DVector3 pos, DAngle ang, int
{ {
if (hit.hitSector->ceilingstat & CSTAT_SECTOR_SKY) if (hit.hitSector->ceilingstat & CSTAT_SECTOR_SKY)
{ {
spark->spr.SetScale(0, 0); spark->spr.scale = DVector2(0, 0);
return; return;
} }
else else
@ -435,13 +435,13 @@ static void shootweapon(DDukeActor *actor, int p, DVector3 pos, DAngle ang, int
fi.checkhitsprite(hit.actor(), spark); fi.checkhitsprite(hit.actor(), spark);
if (hit.actor()->isPlayer() && (ud.coop != 1 || ud.ffire == 1)) if (hit.actor()->isPlayer() && (ud.coop != 1 || ud.ffire == 1))
{ {
spark->spr.SetScale(0, 0); spark->spr.scale = DVector2(0, 0);
auto jib = spawn(spark, JIBS6); auto jib = spawn(spark, JIBS6);
if (jib) if (jib)
{ {
jib->spr.pos.Z += 4; jib->spr.pos.Z += 4;
jib->vel.X = 1; jib->vel.X = 1;
jib->spr.SetScale(0.375, 0.375); jib->spr.scale = DVector2(0.375, 0.375);
jib->spr.angle += DAngle22_5 / 2 - randomAngle(22.5); jib->spr.angle += DAngle22_5 / 2 - randomAngle(22.5);
} }
} }
@ -539,7 +539,7 @@ static void shootweapon(DDukeActor *actor, int p, DVector3 pos, DAngle ang, int
fi.checkhitsprite(hit.actor(), spark); fi.checkhitsprite(hit.actor(), spark);
if (!hit.actor()->isPlayer()) if (!hit.actor()->isPlayer())
spawn(spark, SMALLSMOKE); spawn(spark, SMALLSMOKE);
else spark->spr.SetScale(0, 0); else spark->spr.scale = DVector2(0, 0);
} }
else if (hit.hitWall) else if (hit.hitWall)
fi.checkhitwall(spark, hit.hitWall, hit.hitpos, SHOTSPARK1); fi.checkhitwall(spark, hit.hitWall, hit.hitpos, SHOTSPARK1);
@ -757,7 +757,7 @@ static void shootrpg(DDukeActor *actor, int p, DVector3 pos, DAngle ang, int atw
spawned->spr.pos += spawnofs; spawned->spr.pos += spawnofs;
spawned->spr.angle += aoffs; spawned->spr.angle += aoffs;
spawned->spr.SetScale(0.65625, 0.65625); spawned->spr.scale = DVector2(0.65625, 0.65625);
} }
else if (actor->spr.picnum == BOSS2) else if (actor->spr.picnum == BOSS2)
{ {
@ -773,11 +773,11 @@ static void shootrpg(DDukeActor *actor, int p, DVector3 pos, DAngle ang, int atw
spawned->spr.pos += spawnofs; spawned->spr.pos += spawnofs;
spawned->spr.angle += aoffs; spawned->spr.angle += aoffs;
spawned->spr.SetScale(0.375, 0.375); spawned->spr.scale = DVector2(0.375, 0.375);
} }
else if (atwith != FREEZEBLAST) else if (atwith != FREEZEBLAST)
{ {
spawned->spr.SetScale(0.46875, 0.46875); spawned->spr.scale = DVector2(0.46875, 0.46875);
spawned->spr.extra >>= 2; spawned->spr.extra >>= 2;
} }
} }
@ -950,7 +950,7 @@ static void shootgrowspark(DDukeActor* actor, int p, DVector3 pos, DAngle ang)
spark->spr.pal = 2; spark->spr.pal = 2;
spark->spr.cstat |= CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT; spark->spr.cstat |= CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT;
spark->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); spark->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
if (hit.hitWall == nullptr && hit.actor() == nullptr && hit.hitSector != nullptr) if (hit.hitWall == nullptr && hit.actor() == nullptr && hit.hitSector != nullptr)
{ {
@ -1991,7 +1991,7 @@ static void underwater(int snum, ESyncBits actions, double floorz, double ceilin
if (j) if (j)
{ {
j->spr.pos += (p->angle.ang.ToVector() + DVector2(4 - (global_random & 8), 4 - (global_random & 8))) * 16; j->spr.pos += (p->angle.ang.ToVector() + DVector2(4 - (global_random & 8), 4 - (global_random & 8))) * 16;
j->spr.SetScale(0.046875, 0.3125); j->spr.scale = DVector2(0.046875, 0.3125);
j->spr.pos.Z = p->pos.Z + 8; j->spr.pos.Z = p->pos.Z + 8;
} }
} }

View file

@ -312,7 +312,7 @@ static void shootweapon(DDukeActor* actor, int p, DVector3 pos, DAngle ang, int
{ {
if (hit.hitSector->ceilingstat & CSTAT_SECTOR_SKY) if (hit.hitSector->ceilingstat & CSTAT_SECTOR_SKY)
{ {
spark->spr.SetScale(0, 0); spark->spr.scale = DVector2(0, 0);
return; return;
} }
else else
@ -330,12 +330,12 @@ static void shootweapon(DDukeActor* actor, int p, DVector3 pos, DAngle ang, int
if (hit.actor()->isPlayer() && (ud.coop != 1 || ud.ffire == 1)) if (hit.actor()->isPlayer() && (ud.coop != 1 || ud.ffire == 1))
{ {
auto jib = spawn(spark, JIBS6); auto jib = spawn(spark, JIBS6);
spark->spr.SetScale(0, 0); spark->spr.scale = DVector2(0, 0);
if (jib) if (jib)
{ {
jib->spr.pos.Z += 4; jib->spr.pos.Z += 4;
jib->vel.X = 1; jib->vel.X = 1;
jib->spr.SetScale(0.375, 0.375); jib->spr.scale = DVector2(0.375, 0.375);
jib->spr.angle += DAngle22_5 / 2 - randomAngle(22.5); jib->spr.angle += DAngle22_5 / 2 - randomAngle(22.5);
} }
} }
@ -436,7 +436,7 @@ static void shootweapon(DDukeActor* actor, int p, DVector3 pos, DAngle ang, int
fi.checkhitsprite(hit.actor(), spark); fi.checkhitsprite(hit.actor(), spark);
if (!hit.actor()->isPlayer()) if (!hit.actor()->isPlayer())
spawn(spark, SMALLSMOKE); spawn(spark, SMALLSMOKE);
else spark->spr.SetScale(0, 0); else spark->spr.scale = DVector2(0, 0);
} }
else if (hit.hitWall != nullptr) else if (hit.hitWall != nullptr)
fi.checkhitwall(spark, hit.hitWall, hit.hitpos, SHOTSPARK1); fi.checkhitwall(spark, hit.hitWall, hit.hitpos, SHOTSPARK1);
@ -550,7 +550,7 @@ static void shootstuff(DDukeActor* actor, int p, DVector3 pos, DAngle ang, int a
if (atwith == FIRELASER) if (atwith == FIRELASER)
{ {
spawned->spr.SetScale(0.125, 0.125); spawned->spr.scale = DVector2(0.125, 0.125);
} }
scount--; scount--;
@ -670,11 +670,11 @@ static void shootrpg(DDukeActor* actor, int p, DVector3 pos, DAngle ang, int atw
{ {
if (actor->spr.picnum == HULK) if (actor->spr.picnum == HULK)
{ {
spawned->spr.SetScale(0.125, 0.125); spawned->spr.scale = DVector2(0.125, 0.125);
} }
else if (atwith != FREEZEBLAST) else if (atwith != FREEZEBLAST)
{ {
spawned->spr.SetScale(0.46875, 0.46875); spawned->spr.scale = DVector2(0.46875, 0.46875);
spawned->spr.extra >>= 2; spawned->spr.extra >>= 2;
} }
} }
@ -2316,7 +2316,7 @@ static void underwater(int snum, ESyncBits actions, double floorz, double ceilin
if (j) if (j)
{ {
j->spr.pos += (p->angle.ang.ToVector() + DVector2(12 - (global_random & 8), 12 - (global_random & 8))) * 16; j->spr.pos += (p->angle.ang.ToVector() + DVector2(12 - (global_random & 8), 12 - (global_random & 8))) * 16;
j->spr.SetScale(0.046875, 0.03125); j->spr.scale = DVector2(0.046875, 0.03125);
j->spr.pos.Z = p->pos.Z + 8; j->spr.pos.Z = p->pos.Z + 8;
j->spr.cstat = CSTAT_SPRITE_TRANS_FLIP | CSTAT_SPRITE_TRANSLUCENT; j->spr.cstat = CSTAT_SPRITE_TRANS_FLIP | CSTAT_SPRITE_TRANSLUCENT;
} }
@ -2463,7 +2463,7 @@ void onMotorcycleHit(int snum, DDukeActor* victim)
{ {
if (victim->spr.lotag == act2->spr.lotag) if (victim->spr.lotag == act2->spr.lotag)
{ {
act2->spr.SetScale(0, 0); act2->spr.scale = DVector2(0, 0);
} }
} }
} }
@ -2474,7 +2474,7 @@ void onMotorcycleHit(int snum, DDukeActor* victim)
else else
fi.guts(victim, RRTILE2465, 3, myconnectindex); fi.guts(victim, RRTILE2465, 3, myconnectindex);
fi.guts(victim, RRTILE2465, 3, myconnectindex); fi.guts(victim, RRTILE2465, 3, myconnectindex);
victim->spr.SetScale(0, 0); victim->spr.scale = DVector2(0, 0);
} }
} }

View file

@ -615,8 +615,8 @@ void resetpspritevars(int g)
{ {
act->SetOwner(act); act->SetOwner(act);
act->spr.shade = 0; act->spr.shade = 0;
if (isRR()) act->spr.SetScale(0.375, 0.265625); if (isRR()) act->spr.scale = DVector2(0.375, 0.265625);
else act->spr.SetScale(0.65625, 0.5625); else act->spr.scale = DVector2(0.65625, 0.5625);
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->spr.xoffset = 0; act->spr.xoffset = 0;
act->clipdist = 16; act->clipdist = 16;

View file

@ -1380,7 +1380,7 @@ void checkhitsprite_d(DDukeActor* targ, DDukeActor* proj)
spawned->spr.pal = 6; spawned->spr.pal = 6;
spawned->spr.pos.Z += 4; spawned->spr.pos.Z += 4;
spawned->vel.X = 1; spawned->vel.X = 1;
spawned->spr.SetScale(0.375, 0.375); spawned->spr.scale = DVector2(0.375, 0.375);
spawned->spr.angle = DAngle22_5 / 4 - randomAngle(22.5 / 2); spawned->spr.angle = DAngle22_5 / 4 - randomAngle(22.5 / 2);
} }
} }

View file

@ -1975,8 +1975,8 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
{ {
fi.guts(targ, RRTILE2460, 12, myconnectindex); fi.guts(targ, RRTILE2460, 12, myconnectindex);
fi.guts(targ, RRTILE2465, 3, myconnectindex); fi.guts(targ, RRTILE2465, 3, myconnectindex);
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
targ->spr.SetScale(0, 0); targ->spr.scale = DVector2(0, 0);
} }
} }
} }
@ -1985,7 +1985,7 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
{ {
fi.guts(targ, RRTILE2460, 12, myconnectindex); fi.guts(targ, RRTILE2460, 12, myconnectindex);
fi.guts(targ, RRTILE2465, 3, myconnectindex); fi.guts(targ, RRTILE2465, 3, myconnectindex);
targ->spr.SetScale(0, 0); targ->spr.scale = DVector2(0, 0);
} }
} }
break; break;
@ -2339,7 +2339,7 @@ void checkhitsprite_r(DDukeActor* targ, DDukeActor* proj)
spawned->spr.pal = 6; spawned->spr.pal = 6;
spawned->spr.pos.Z += 4; spawned->spr.pos.Z += 4;
spawned->vel.X = 1; spawned->vel.X = 1;
spawned->spr.SetScale(0.375, 0.375); spawned->spr.scale = DVector2(0.375, 0.375);
spawned->spr.angle = DAngle22_5/4 - randomAngle(22.5/2); spawned->spr.angle = DAngle22_5/4 - randomAngle(22.5/2);
} }
} }

View file

@ -65,7 +65,7 @@ DDukeActor* CreateActor(sectortype* whatsectp, const DVector3& pos, int s_pn, in
act->spr.pos = pos; act->spr.pos = pos;
act->spr.picnum = s_pn; act->spr.picnum = s_pn;
act->spr.shade = s_shd; act->spr.shade = s_shd;
act->spr.SetScale(scale.X, scale.Y); act->spr.scale = DVector2(scale.X, scale.Y);
act->spr.angle = s_ang; act->spr.angle = s_ang;
act->vel.X = s_vel; act->vel.X = s_vel;
@ -150,7 +150,7 @@ bool initspriteforspawn(DDukeActor* act)
{ {
if ((ud.multimode < 2) || (ud.multimode > 1 && ud.coop == 1)) if ((ud.multimode < 2) || (ud.multimode > 1 && ud.coop == 1))
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
act->spr.cstat = 0; act->spr.cstat = 0;
act->spr.lotag = act->spr.hitag = 0; act->spr.lotag = act->spr.hitag = 0;
return false; return false;
@ -225,20 +225,20 @@ void spawninitdefault(DDukeActor* actj, DDukeActor *act)
if (actj == nullptr && act->spr.lotag > ud.player_skill) if (actj == nullptr && act->spr.lotag > ud.player_skill)
{ {
// make it go away... // make it go away...
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
return; return;
} }
// Init the size // Init the size
if (act->spr.scale.X == 0 || act->spr.scale.Y == 0) if (act->spr.scale.X == 0 || act->spr.scale.Y == 0)
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
if (actorflag(act, SFLAG_BADGUY)) if (actorflag(act, SFLAG_BADGUY))
{ {
if (ud.monsters_off == 1) if (ud.monsters_off == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
return; return;
} }
@ -285,18 +285,18 @@ void spawntransporter(DDukeActor *actj, DDukeActor* act, bool beam)
if (actj == nullptr) return; if (actj == nullptr) return;
if (beam) if (beam)
{ {
act->spr.SetScale(0.484375, REPEAT_SCALE); act->spr.scale = DVector2(0.484375, REPEAT_SCALE);
act->spr.pos.Z = actj->sector()->floorz - gs.playerheight; act->spr.pos.Z = actj->sector()->floorz - gs.playerheight;
} }
else else
{ {
if (actj->spr.statnum == 4) if (actj->spr.statnum == 4)
{ {
act->spr.SetScale(0.125, 0.125); act->spr.scale = DVector2(0.125, 0.125);
} }
else else
{ {
act->spr.SetScale(0.75, 1); act->spr.scale = DVector2(0.75, 1);
if (actj->spr.statnum == 10 || badguy(actj)) if (actj->spr.statnum == 10 || badguy(actj))
act->spr.pos.Z -= 32; act->spr.pos.Z -= 32;
} }
@ -324,7 +324,7 @@ int spawnbloodpoolpart1(DDukeActor* act)
if (!away) if (!away)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
return true; return true;
} }
@ -351,7 +351,7 @@ void initfootprint(DDukeActor* actj, DDukeActor* act)
bool away = isAwayFromWall(act, 5.25); bool away = isAwayFromWall(act, 5.25);
if (!away) if (!away)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
return; return;
} }
@ -362,7 +362,7 @@ void initfootprint(DDukeActor* actj, DDukeActor* act)
act->spr.pos.Z = sect->floorz; act->spr.pos.Z = sect->floorz;
if (sect->lotag != 1 && sect->lotag != 2) if (sect->lotag != 1 && sect->lotag != 2)
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
insertspriteq(act); insertspriteq(act);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
@ -413,7 +413,7 @@ void initshell(DDukeActor* actj, DDukeActor* act, bool isshell)
} }
double scale = isRR() && isshell ? 0.03125 : 0.0625; double scale = isRR() && isshell ? 0.03125 : 0.0625;
act->spr.SetScale(scale, scale); act->spr.scale = DVector2(scale, scale);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
} }
@ -447,7 +447,7 @@ void initcrane(DDukeActor* actj, DDukeActor* act, int CRANEPOLE)
act->temp_sect = actk->sector(); act->temp_sect = actk->sector();
actk->spr.SetScale(0.75, 2); actk->spr.scale = DVector2(0.75, 2);
apt.pole = actk->spr.pos.XY(); apt.pole = actk->spr.pos.XY();
@ -491,7 +491,7 @@ void initwaterdrip(DDukeActor* actj, DDukeActor* actor)
actor->temp_pos.Z = actor->spr.pos.Z; actor->temp_pos.Z = actor->spr.pos.Z;
if (!isRR()) actor->temp_data[1] = krand() & 127; if (!isRR()) actor->temp_data[1] = krand() & 127;
} }
actor->spr.SetScale(0.375, 0.375); actor->spr.scale = DVector2(0.375, 0.375);
ChangeActorStat(actor, STAT_STANDABLE); ChangeActorStat(actor, STAT_STANDABLE);
} }
@ -508,7 +508,7 @@ int initreactor(DDukeActor* actj, DDukeActor* actor, bool isrecon)
{ {
if (actor->spr.lotag > ud.player_skill) if (actor->spr.lotag > ud.player_skill)
{ {
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
ChangeActorStat(actor, STAT_MISC); ChangeActorStat(actor, STAT_MISC);
return true; return true;
} }
@ -517,7 +517,7 @@ int initreactor(DDukeActor* actj, DDukeActor* actor, bool isrecon)
actor->temp_data[5] = 0; actor->temp_data[5] = 0;
if (ud.monsters_off == 1) if (ud.monsters_off == 1)
{ {
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
ChangeActorStat(actor, STAT_MISC); ChangeActorStat(actor, STAT_MISC);
return false; return false;
} }
@ -530,7 +530,7 @@ int initreactor(DDukeActor* actj, DDukeActor* actor, bool isrecon)
if (ud.multimode < 2 && actor->spr.pal != 0) if (ud.multimode < 2 && actor->spr.pal != 0)
{ {
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
ChangeActorStat(actor, STAT_MISC); ChangeActorStat(actor, STAT_MISC);
return false; return false;
} }
@ -554,7 +554,7 @@ void spawneffector(DDukeActor* actor, TArray<DDukeActor*>* actors)
actor->spr.yint = sectp->extra; actor->spr.yint = sectp->extra;
actor->spr.cstat |= CSTAT_SPRITE_INVISIBLE; actor->spr.cstat |= CSTAT_SPRITE_INVISIBLE;
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
switch (actor->spr.lotag) switch (actor->spr.lotag)
{ {
@ -619,7 +619,7 @@ void spawneffector(DDukeActor* actor, TArray<DDukeActor*>* actors)
case SE_27_DEMO_CAM: case SE_27_DEMO_CAM:
if (ud.recstat == 1) if (ud.recstat == 1)
{ {
actor->spr.SetScale(1, 1); actor->spr.scale = DVector2(1, 1);
actor->spr.cstat &= ~CSTAT_SPRITE_INVISIBLE; actor->spr.cstat &= ~CSTAT_SPRITE_INVISIBLE;
} }
break; break;

View file

@ -63,17 +63,17 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.pal != 0) if (act->spr.pal != 0)
{ {
act->clipdist = 20; act->clipdist = 20;
act->spr.SetScale(0.625, 0.625); act->spr.scale = DVector2(0.625, 0.625);
} }
else else
{ {
act->spr.SetScale(1.25, 1.25); act->spr.scale = DVector2(1.25, 1.25);
act->clipdist = 41; act->clipdist = 41;
} }
} }
else else
{ {
act->spr.SetScale(0.625, 0.625); act->spr.scale = DVector2(0.625, 0.625);
act->clipdist = 20; act->clipdist = 20;
} }
@ -82,7 +82,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if ((act->spr.lotag > ud.player_skill) || ud.monsters_off) if ((act->spr.lotag > ud.player_skill) || ud.monsters_off)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -105,7 +105,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case FIREFLYFLYINGEFFECT: case FIREFLYFLYINGEFFECT:
act->SetOwner(actj); act->SetOwner(actj);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
return act; return act;
case LAVAPOOLBUBBLE: case LAVAPOOLBUBBLE:
if (actj->spr.scale.X < 0.46875) if (actj->spr.scale.X < 0.46875)
@ -114,13 +114,13 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
act->spr.pos.X += krandf(32) - 16; act->spr.pos.X += krandf(32) - 16;
act->spr.pos.Y += krandf(32) - 16; act->spr.pos.Y += krandf(32) - 16;
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
return act; return act;
case WHISPYSMOKE: case WHISPYSMOKE:
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
act->spr.pos.X += krandf(16) - 8; act->spr.pos.X += krandf(16) - 8;
act->spr.pos.Y += krandf(16) - 8; act->spr.pos.Y += krandf(16) - 8;
act->spr.SetScale(0.3125, 0.3125); act->spr.scale = DVector2(0.3125, 0.3125);
return act; return act;
case SERIOUSSAM: case SERIOUSSAM:
ChangeActorStat(act, 2); ChangeActorStat(act, 2);
@ -136,7 +136,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
spawninitdefault(actj, act); spawninitdefault(actj, act);
break; break;
case FOF: case FOF:
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
case WATERSPLASH2: case WATERSPLASH2:
@ -144,12 +144,12 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
SetActor(act, actj->spr.pos); SetActor(act, actj->spr.pos);
double s = 0.125 + (krand() & 7) * REPEAT_SCALE; double s = 0.125 + (krand() & 7) * REPEAT_SCALE;
act->spr.SetScale(s, s); act->spr.scale = DVector2(s, s);
} }
else else
{ {
double s = 0.25 + (krand() & 15) * REPEAT_SCALE; double s = 0.25 + (krand() & 15) * REPEAT_SCALE;
act->spr.SetScale(s, s); act->spr.scale = DVector2(s, s);
} }
act->spr.shade = -16; act->spr.shade = -16;
@ -223,14 +223,14 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
act->spr.scale = actj->spr.scale; act->spr.scale = actj->spr.scale;
act->temp_data[1] = actj->spr.picnum; act->temp_data[1] = actj->spr.picnum;
} }
else act->spr.SetScale(0, 0); else act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
case LASERLINE: case LASERLINE:
act->spr.SetScale(0.5, 0.09375); act->spr.scale = DVector2(0.5, 0.09375);
if (gs.lasermode == 1) if (gs.lasermode == 1)
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_TRANSLUCENT; act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_TRANSLUCENT;
@ -238,7 +238,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL; act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL;
else else
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
} }
if (actj) act->spr.angle = actj->temp_angle + DAngle90; if (actj) act->spr.angle = actj->temp_angle + DAngle90;
@ -253,13 +253,13 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
} }
else else
{ {
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
} }
break; break;
case BLOOD: case BLOOD:
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
act->spr.pos.Z -= 26; act->spr.pos.Z -= 26;
if (actj && actj->spr.pal == 6) if (actj && actj->spr.pal == 6)
act->spr.pal = 6; act->spr.pal = 6;
@ -298,7 +298,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case FECES: case FECES:
if (actj) if (actj)
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
@ -319,12 +319,12 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case TRIPBOMB: case TRIPBOMB:
if (act->spr.lotag > ud.player_skill) if (act->spr.lotag > ud.player_skill)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
act->spr.SetScale(0.0625, 0.078125); act->spr.scale = DVector2(0.0625, 0.078125);
act->SetOwner(act); act->SetOwner(act);
ud.bomb_tag = (ud.bomb_tag + 1) & 32767; ud.bomb_tag = (ud.bomb_tag + 1) & 32767;
@ -427,7 +427,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case SIGN2: case SIGN2:
if (ud.multimode < 2 && act->spr.pal) if (ud.multimode < 2 && act->spr.pal)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
} }
else act->spr.pal = 0; else act->spr.pal = 0;
@ -518,7 +518,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == RESPAWNMARKERRED) if (act->spr.picnum == RESPAWNMARKERRED)
{ {
act->spr.SetScale(0.375, 0.375); act->spr.scale = DVector2(0.375, 0.375);
if (actj) act->spr.pos.Z = actj->floorz; // -(1<<4); if (actj) act->spr.pos.Z = actj->floorz; // -(1<<4);
} }
else else
@ -538,7 +538,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case SPOTLITE: case SPOTLITE:
break; break;
case BULLETHOLE: case BULLETHOLE:
act->spr.SetScale(0.046875, 0.046875); act->spr.scale = DVector2(0.046875, 0.046875);
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | randomFlip(); act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | randomFlip();
insertspriteq(act); insertspriteq(act);
[[fallthrough]]; [[fallthrough]];
@ -549,7 +549,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
act->temp_data[0] = krand() & 2047; act->temp_data[0] = krand() & 2047;
act->spr.cstat = randomFlip(); act->spr.cstat = randomFlip();
act->spr.SetScale(0.125, 0.125); act->spr.scale = DVector2(0.125, 0.125);
act->spr.angle = randomAngle(); act->spr.angle = randomAngle();
} }
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
@ -574,7 +574,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case MUSICANDSFX: case MUSICANDSFX:
if (ud.multimode < 2 && act->spr.pal == 1) if (ud.multimode < 2 && act->spr.pal == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -604,22 +604,22 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == EXPLOSION2 || act->spr.picnum == EXPLOSION2BOT) if (act->spr.picnum == EXPLOSION2 || act->spr.picnum == EXPLOSION2BOT)
{ {
act->spr.SetScale(0.75, 0.75); act->spr.scale = DVector2(0.75, 0.75);
act->spr.shade = -127; act->spr.shade = -127;
act->spr.cstat |= CSTAT_SPRITE_YCENTER; act->spr.cstat |= CSTAT_SPRITE_YCENTER;
} }
else if (act->spr.picnum == SHRINKEREXPLOSION) else if (act->spr.picnum == SHRINKEREXPLOSION)
{ {
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
} }
else if (act->spr.picnum == SMALLSMOKE || act->spr.picnum == ONFIRE) else if (act->spr.picnum == SMALLSMOKE || act->spr.picnum == ONFIRE)
{ {
// 64 "money" // 64 "money"
act->spr.SetScale(0.375, 0.375); act->spr.scale = DVector2(0.375, 0.375);
} }
else if (act->spr.picnum == BURNING || act->spr.picnum == BURNING2) else if (act->spr.picnum == BURNING || act->spr.picnum == BURNING2)
{ {
act->spr.SetScale(0.0625, 0.0625); act->spr.scale = DVector2(0.0625, 0.0625);
} }
if (actj) if (actj)
@ -654,7 +654,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case APLAYER: case APLAYER:
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
int j = ud.coop; int j = ud.coop;
if (j == 2) j = 0; if (j == 2) j = 0;
@ -671,9 +671,9 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
if (actj) if (actj)
act->spr.angle = actj->spr.angle; act->spr.angle = actj->spr.angle;
act->spr.SetScale(0.0625, 0.0625); act->spr.scale = DVector2(0.0625, 0.0625);
} }
else act->spr.SetScale(0.5, 0.5); else act->spr.scale = DVector2(0.5, 0.5);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
@ -693,7 +693,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case WATERDRIPSPLASH: case WATERDRIPSPLASH:
act->spr.SetScale(0.375, 0.375); act->spr.scale = DVector2(0.375, 0.375);
ChangeActorStat(act, STAT_STANDABLE); ChangeActorStat(act, STAT_STANDABLE);
break; break;
@ -709,7 +709,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
if (act->spr.pal && ud.multimode > 1) if (act->spr.pal && ud.multimode > 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -719,7 +719,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
|| (act->spr.pal == 2 && (ud.multimode == 1 || (ud.multimode > 1 && ud.coop != 1))) // Co-op Only || (act->spr.pal == 2 && (ud.multimode == 1 || (ud.multimode > 1 && ud.coop != 1))) // Co-op Only
|| (act->spr.pal == 3 && (ud.multimode == 1 || (ud.multimode > 1 && ud.coop == 1)))) // Dukematch Only || (act->spr.pal == 3 && (ud.multimode == 1 || (ud.multimode > 1 && ud.coop == 1)))) // Dukematch Only
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -820,11 +820,11 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.pal && (!isWorldTour() || !(currentLevel->flags & LEVEL_WT_BOSSSPAWN) || act->spr.pal != 22)) if (act->spr.pal && (!isWorldTour() || !(currentLevel->flags & LEVEL_WT_BOSSSPAWN) || act->spr.pal != 22))
{ {
act->clipdist = 20; act->clipdist = 20;
act->spr.SetScale(0.625, 0.625); act->spr.scale = DVector2(0.625, 0.625);
} }
else else
{ {
act->spr.SetScale(1.25, 1.25); act->spr.scale = DVector2(1.25, 1.25);
act->clipdist = 41; act->clipdist = 41;
} }
} }
@ -832,12 +832,12 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
if (act->spr.picnum != SHARK) if (act->spr.picnum != SHARK)
{ {
act->spr.SetScale(0.625, 0.625); act->spr.scale = DVector2(0.625, 0.625);
act->clipdist = 20; act->clipdist = 20;
} }
else else
{ {
act->spr.SetScale(0.9375, 0.9375); act->spr.scale = DVector2(0.9375, 0.9375);
act->clipdist = 10; act->clipdist = 10;
} }
} }
@ -846,7 +846,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if ((act->spr.lotag > ud.player_skill) || ud.monsters_off == 1) if ((act->spr.lotag > ud.player_skill) || ud.monsters_off == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -857,7 +857,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == RAT) if (act->spr.picnum == RAT)
{ {
act->spr.angle = randomAngle(); act->spr.angle = randomAngle();
act->spr.SetScale(0.75, 0.75); act->spr.scale = DVector2(0.75, 0.75);
act->spr.cstat = 0; act->spr.cstat = 0;
} }
else else
@ -921,7 +921,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
double j = ((act->floorz - act->ceilingz) / 128.); double j = ((act->floorz - act->ceilingz) / 128.);
act->spr.SetScale(max(0., 0.390625 - j * 0.5), j); act->spr.scale = DVector2(max(0., 0.390625 - j * 0.5), j);
if (krand() & 4) act->spr.cstat |= CSTAT_SPRITE_XFLIP; if (krand() & 4) act->spr.cstat |= CSTAT_SPRITE_XFLIP;
break; break;
@ -930,7 +930,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (actj) act->SetOwner(actj); if (actj) act->SetOwner(actj);
else act->SetOwner(act); else act->SetOwner(act);
act->spr.SetScale(0.140625, 0.140625); act->spr.scale = DVector2(0.140625, 0.140625);
act->spr.yint = 4; act->spr.yint = 4;
[[fallthrough]]; [[fallthrough]];
case REACTOR2: case REACTOR2:
@ -992,7 +992,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if ((ud.multimode < 2 && act->spr.pal != 0) || (act->spr.lotag > ud.player_skill)) if ((ud.multimode < 2 && act->spr.pal != 0) || (act->spr.lotag > ud.player_skill))
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -1007,15 +1007,15 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (ud.multimode > 1 && ud.coop != 1 && act->spr.picnum == ACCESSCARD) if (ud.multimode > 1 && ud.coop != 1 && act->spr.picnum == ACCESSCARD)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
else else
{ {
if (act->spr.picnum == AMMO) if (act->spr.picnum == AMMO)
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
else act->spr.SetScale(0.5, 0.5); else act->spr.scale = DVector2(0.5, 0.5);
} }
act->spr.shade = -17; act->spr.shade = -17;
@ -1050,7 +1050,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case BOUNCEMINE: case BOUNCEMINE:
act->SetOwner(act); act->SetOwner(act);
act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; //Make it hitable act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; //Make it hitable
act->spr.SetScale(0.375, 0.375); act->spr.scale = DVector2(0.375, 0.375);
act->spr.shade = -127; act->spr.shade = -127;
act->spr.extra = gs.impact_damage << 2; act->spr.extra = gs.impact_damage << 2;
ChangeActorStat(act, STAT_ZOMBIEACTOR); ChangeActorStat(act, STAT_ZOMBIEACTOR);
@ -1072,7 +1072,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (ud.multimode < 2 && act->spr.pal != 0) if (ud.multimode < 2 && act->spr.pal != 0)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -1086,7 +1086,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
act->spr.angle = actj->spr.angle; act->spr.angle = actj->spr.angle;
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT; act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT;
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
act->vel.X = -0.5; act->vel.X = -0.5;
ssp(act, CLIPMASK0); ssp(act, CLIPMASK0);
} }
@ -1108,7 +1108,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.scale.X <= 0.125) if (act->spr.scale.X <= 0.125)
{ {
act->spr.cstat = CSTAT_SPRITE_INVISIBLE; act->spr.cstat = CSTAT_SPRITE_INVISIBLE;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
} }
else act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; else act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->spr.extra = gs.impact_damage << 2; act->spr.extra = gs.impact_damage << 2;
@ -1134,7 +1134,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (ud.multimode < 2 && act->spr.pal != 0) if (ud.multimode < 2 && act->spr.pal != 0)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -1170,7 +1170,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case WOODENHORSE: case WOODENHORSE:
if (actj) if (actj)
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->clipdist = 18; act->clipdist = 18;
makeitfall(act); makeitfall(act);
if (actj) act->SetOwner(actj); if (actj) act->SetOwner(actj);
@ -1180,7 +1180,7 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case EGG: case EGG:
if (ud.monsters_off == 1 && act->spr.picnum == EGG) if (ud.monsters_off == 1 && act->spr.picnum == EGG)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
} }
else else

View file

@ -55,7 +55,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case RRTILE2028: case RRTILE2028:
act->spr.cstat = 0; act->spr.cstat = 0;
act->spr.cstat |= CSTAT_SPRITE_INVISIBLE; act->spr.cstat |= CSTAT_SPRITE_INVISIBLE;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
act->clipdist = 0; act->clipdist = 0;
act->spr.extra = 0; act->spr.extra = 0;
ChangeActorStat(act, STAT_BOWLING); ChangeActorStat(act, STAT_BOWLING);
@ -66,14 +66,14 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break; break;
case RRTILE8450: case RRTILE8450:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(1, 1); act->spr.scale = DVector2(1, 1);
act->spr.extra = act->spr.lotag; act->spr.extra = act->spr.lotag;
act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL;
ChangeActorStat(act, 116); ChangeActorStat(act, 116);
break; break;
case PIG + 11: case PIG + 11:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
act->clipdist = 0; act->clipdist = 0;
act->spr.extra = 0; act->spr.extra = 0;
act->spr.cstat = 0; act->spr.cstat = 0;
@ -82,7 +82,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case RRTILE8487: case RRTILE8487:
case RRTILE8489: case RRTILE8489:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->spr.extra = 0; act->spr.extra = 0;
act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL;
act->spr.hitag = 0; act->spr.hitag = 0;
@ -91,17 +91,17 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case RRTILE7424: case RRTILE7424:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.extra = 0; act->spr.extra = 0;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, 11); ChangeActorStat(act, 11);
break; break;
case RRTILE7936: case RRTILE7936:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
fogactive = 1; fogactive = 1;
break; break;
case RRTILE6144: case RRTILE6144:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ps[screenpeek].sea_sick_stat = 1; ps[screenpeek].sea_sick_stat = 1;
break; break;
case RRTILE8448: case RRTILE8448:
@ -122,12 +122,12 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break; break;
case RRTILE8192: case RRTILE8192:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ufospawnsminion = 1; ufospawnsminion = 1;
break; break;
case RRTILE8193: case RRTILE8193:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
pistonsound = 1; pistonsound = 1;
break; break;
case RRTILE8165: case RRTILE8165:
@ -157,7 +157,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case RRTILE293: case RRTILE293:
act->spr.cstat = 0; act->spr.cstat = 0;
act->spr.cstat |= CSTAT_SPRITE_INVISIBLE; act->spr.cstat |= CSTAT_SPRITE_INVISIBLE;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
act->clipdist = 0; act->clipdist = 0;
act->spr.lotag = 0; act->spr.lotag = 0;
ChangeActorStat(act, 106); ChangeActorStat(act, 106);
@ -193,12 +193,12 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
SetActor(act, actj->spr.pos); SetActor(act, actj->spr.pos);
double s = 0.125 + (krand() & 7) * REPEAT_SCALE; double s = 0.125 + (krand() & 7) * REPEAT_SCALE;
act->spr.SetScale(s, s); act->spr.scale = DVector2(s, s);
} }
else else
{ {
double s = 0.25 + (krand() & 15) * REPEAT_SCALE; double s = 0.25 + (krand() & 15) * REPEAT_SCALE;
act->spr.SetScale(s, s); act->spr.scale = DVector2(s, s);
} }
act->spr.shade = -16; act->spr.shade = -16;
@ -259,15 +259,15 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
if (act->spr.picnum == RABBITJIBA) if (act->spr.picnum == RABBITJIBA)
{ {
act->spr.SetScale(0.28125, 0.28125); act->spr.scale = DVector2(0.28125, 0.28125);
} }
else if (act->spr.picnum == RABBITJIBB) else if (act->spr.picnum == RABBITJIBB)
{ {
act->spr.SetScale(0.5625, 0.5625); act->spr.scale = DVector2(0.5625, 0.5625);
} }
else if (act->spr.picnum == RABBITJIBC) else if (act->spr.picnum == RABBITJIBC)
{ {
act->spr.SetScale(0.84375, 0.84375); act->spr.scale = DVector2(0.84375, 0.84375);
} }
} }
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
@ -294,7 +294,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
else else
act->temp_data[1] = actj->spr.picnum; act->temp_data[1] = actj->spr.picnum;
} }
else act->spr.SetScale(0, 0); else act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
@ -307,13 +307,13 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
} }
else else
{ {
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
} }
break; break;
case BLOOD: case BLOOD:
act->spr.SetScale(0.0625, 0.0625); act->spr.scale = DVector2(0.0625, 0.0625);
act->spr.pos.Z -= 26; act->spr.pos.Z -= 26;
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
@ -448,13 +448,13 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case BOWLINGBALL: case BOWLINGBALL:
act->spr.cstat = CSTAT_SPRITE_BLOCK_HITSCAN; act->spr.cstat = CSTAT_SPRITE_BLOCK_HITSCAN;
act->clipdist = 16; act->clipdist = 16;
act->spr.SetScale(0.171875, 0.140625); act->spr.scale = DVector2(0.171875, 0.140625);
ChangeActorStat(act, 2); ChangeActorStat(act, 2);
break; break;
case HENSTAND: case HENSTAND:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 12; act->clipdist = 12;
act->spr.SetScale(0.328125, 0.234375); act->spr.scale = DVector2(0.328125, 0.234375);
ChangeActorStat(act, 2); ChangeActorStat(act, 2);
break; break;
case RRTILE295: case RRTILE295:
@ -463,7 +463,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break; break;
case RRTILE296: case RRTILE296:
case RRTILE297: case RRTILE297:
act->spr.SetScale(1, 1); act->spr.scale = DVector2(1, 1);
act->clipdist = 16; act->clipdist = 16;
ChangeActorStat(act, 108); ChangeActorStat(act, 108);
break; break;
@ -472,49 +472,49 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case RRTILE3192: case RRTILE3192:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 2; act->clipdist = 2;
act->spr.SetScale(0.5, 0.40625); act->spr.scale = DVector2(0.5, 0.40625);
act->vel.X = 2; act->vel.X = 2;
ChangeActorStat(act, 1); ChangeActorStat(act, 1);
break; break;
case RRTILE3120: case RRTILE3120:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 2; act->clipdist = 2;
act->spr.SetScale(0.1875, 0.15625); act->spr.scale = DVector2(0.1875, 0.15625);
act->vel.X = 2; act->vel.X = 2;
ChangeActorStat(act, 1); ChangeActorStat(act, 1);
break; break;
case RRTILE3122: case RRTILE3122:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 0.5; act->clipdist = 0.5;
act->spr.SetScale(0.125, 0.09375); act->spr.scale = DVector2(0.125, 0.09375);
act->vel.X = 1; act->vel.X = 1;
ChangeActorStat(act, 1); ChangeActorStat(act, 1);
break; break;
case RRTILE3123: case RRTILE3123:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 2; act->clipdist = 2;
act->spr.SetScale(0.203125, 0.203125); act->spr.scale = DVector2(0.203125, 0.203125);
act->vel.X = 1; act->vel.X = 1;
ChangeActorStat(act, 1); ChangeActorStat(act, 1);
break; break;
case RRTILE3124: case RRTILE3124:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 2; act->clipdist = 2;
act->spr.SetScale(0.265625, 0.1875); act->spr.scale = DVector2(0.265625, 0.1875);
act->vel.X = 2; act->vel.X = 2;
ChangeActorStat(act, 1); ChangeActorStat(act, 1);
break; break;
case RRTILE3132: case RRTILE3132:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 2; act->clipdist = 2;
act->spr.SetScale(0.203125, 0.15625); act->spr.scale = DVector2(0.203125, 0.15625);
act->vel.X = 0; act->vel.X = 0;
ChangeActorStat(act, 1); ChangeActorStat(act, 1);
break; break;
case BOWLINGPIN: case BOWLINGPIN:
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->clipdist = 12; act->clipdist = 12;
act->spr.SetScale(0.359375, 0.359375); act->spr.scale = DVector2(0.359375, 0.359375);
ChangeActorStat(act, 2); ChangeActorStat(act, 2);
break; break;
case DUKELYINGDEAD: case DUKELYINGDEAD:
@ -532,7 +532,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case RESPAWNMARKERRED: case RESPAWNMARKERRED:
if (act->spr.picnum == RESPAWNMARKERRED) if (act->spr.picnum == RESPAWNMARKERRED)
{ {
act->spr.SetScale(0.125, 0.125); act->spr.scale = DVector2(0.125, 0.125);
if (actj) act->spr.pos.Z = actj->floorz; if (actj) act->spr.pos.Z = actj->floorz;
} }
else else
@ -550,7 +550,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case SPOTLITE: case SPOTLITE:
break; break;
case BULLETHOLE: case BULLETHOLE:
act->spr.SetScale(0.046875, 0.046875); act->spr.scale = DVector2(0.046875, 0.046875);
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | randomFlip(); act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | randomFlip();
insertspriteq(act); insertspriteq(act);
[[fallthrough]]; [[fallthrough]];
@ -559,7 +559,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
act->temp_data[0] = krand() & 2047; act->temp_data[0] = krand() & 2047;
act->spr.cstat = randomFlip(); act->spr.cstat = randomFlip();
act->spr.SetScale(0.125, 0.125); act->spr.scale = DVector2(0.125, 0.125);
act->spr.angle = randomAngle(); act->spr.angle = randomAngle();
} }
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
@ -575,7 +575,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case MUSICANDSFX: case MUSICANDSFX:
if (ud.multimode < 2 && act->spr.pal == 1) if (ud.multimode < 2 && act->spr.pal == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -601,23 +601,23 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == EXPLOSION2) if (act->spr.picnum == EXPLOSION2)
{ {
act->spr.SetScale(0.75, 0.75); act->spr.scale = DVector2(0.75, 0.75);
act->spr.shade = -127; act->spr.shade = -127;
act->spr.cstat |= CSTAT_SPRITE_YCENTER; act->spr.cstat |= CSTAT_SPRITE_YCENTER;
} }
else if (act->spr.picnum == EXPLOSION3) else if (act->spr.picnum == EXPLOSION3)
{ {
act->spr.SetScale(2, 2); act->spr.scale = DVector2(2, 2);
act->spr.shade = -127; act->spr.shade = -127;
act->spr.cstat |= CSTAT_SPRITE_YCENTER; act->spr.cstat |= CSTAT_SPRITE_YCENTER;
} }
else if (act->spr.picnum == SMALLSMOKE) else if (act->spr.picnum == SMALLSMOKE)
{ {
act->spr.SetScale(0.1875, 0.1875); act->spr.scale = DVector2(0.1875, 0.1875);
} }
else if (act->spr.picnum == BURNING) else if (act->spr.picnum == BURNING)
{ {
act->spr.SetScale(0.0625, 0.0625); act->spr.scale = DVector2(0.0625, 0.0625);
} }
if (actj) if (actj)
@ -644,7 +644,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case APLAYER: case APLAYER:
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
int j = ud.coop; int j = ud.coop;
if (j == 2) j = 0; if (j == 2) j = 0;
@ -662,10 +662,10 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (actj) if (actj)
act->spr.angle = actj->spr.angle; act->spr.angle = actj->spr.angle;
double s = REPEAT_SCALE + (krand() & 7) * REPEAT_SCALE; double s = REPEAT_SCALE + (krand() & 7) * REPEAT_SCALE;
act->spr.SetScale(s, s); act->spr.scale = DVector2(s, s);
} }
else else
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
case CRANE: case CRANE:
@ -678,7 +678,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum != WATERDRIP) act->spr.angle = randomAngle(); if (act->spr.picnum != WATERDRIP) act->spr.angle = randomAngle();
act->spr.SetScale(0.375, 0.375); act->spr.scale = DVector2(0.375, 0.375);
ChangeActorStat(act, 6); ChangeActorStat(act, 6);
break; break;
@ -692,7 +692,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
sectp->setfloorz(act->spr.pos.Z); sectp->setfloorz(act->spr.pos.Z);
if (act->spr.pal && ud.multimode > 1) if (act->spr.pal && ud.multimode > 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -781,18 +781,18 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case SHARK: case SHARK:
case VIXEN: case VIXEN:
rrra_badguy2: rrra_badguy2:
act->spr.SetScale(0.625, 0.625); act->spr.scale = DVector2(0.625, 0.625);
// Note: All inappropriate tiles have already been weeded out by the outer switch block so this does not need game type checks anymore. // Note: All inappropriate tiles have already been weeded out by the outer switch block so this does not need game type checks anymore.
switch (act->spr.picnum) switch (act->spr.picnum)
{ {
case VIXEN: case VIXEN:
if (act->spr.pal == 34) if (act->spr.pal == 34)
{ {
act->spr.SetScale(0.34375, 0.328125); act->spr.scale = DVector2(0.34375, 0.328125);
} }
else else
{ {
act->spr.SetScale(0.34375, 0.3125); act->spr.scale = DVector2(0.34375, 0.3125);
} }
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
@ -801,18 +801,18 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case HULKJUMP: case HULKJUMP:
case HULK: case HULK:
case HULKSTAYPUT: case HULKSTAYPUT:
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case COOTPLAY: case COOTPLAY:
case COOT: case COOT:
case COOTSTAYPUT: case COOTSTAYPUT:
act->spr.SetScale(0.375, 0.28125); act->spr.scale = DVector2(0.375, 0.28125);
act->setClipDistFromTile(); act->setClipDistFromTile();
act->clipdist *= 4; act->clipdist *= 4;
break; break;
case DRONE: case DRONE:
act->spr.SetScale(0.21875, 0.109375); act->spr.scale = DVector2(0.21875, 0.109375);
act->clipdist = 32; act->clipdist = 32;
break; break;
case SBSWIPE: case SBSWIPE:
@ -822,11 +822,11 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case BILLYRAYSTAYPUT: case BILLYRAYSTAYPUT:
case BRAYSNIPER: case BRAYSNIPER:
case BUBBASTAND: case BUBBASTAND:
act->spr.SetScale(0.390625, 0.328125); act->spr.scale = DVector2(0.390625, 0.328125);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case COW: case COW:
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case HEN: case HEN:
@ -834,33 +834,33 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case HENSTAND: case HENSTAND:
if (act->spr.pal == 35) if (act->spr.pal == 35)
{ {
act->spr.SetScale(0.65625, 0.46875); act->spr.scale = DVector2(0.65625, 0.46875);
act->setClipDistFromTile(); act->setClipDistFromTile();
} }
else else
{ {
act->spr.SetScale(0.328125, 0.234375); act->spr.scale = DVector2(0.328125, 0.234375);
act->clipdist = 16; act->clipdist = 16;
} }
break; break;
case MINION: case MINION:
case MINIONSTAYPUT: case MINIONSTAYPUT:
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
act->setClipDistFromTile(); act->setClipDistFromTile();
if (isRRRA() && ufospawnsminion) if (isRRRA() && ufospawnsminion)
act->spr.pal = 8; act->spr.pal = 8;
break; break;
case DOGRUN: case DOGRUN:
case PIG: case PIG:
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case RABBIT: case RABBIT:
act->spr.SetScale(0.28125, 0.28125); act->spr.scale = DVector2(0.28125, 0.28125);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case MAMACLOUD: case MAMACLOUD:
act->spr.SetScale(1, 1); act->spr.scale = DVector2(1, 1);
act->spr.cstat = CSTAT_SPRITE_TRANSLUCENT; act->spr.cstat = CSTAT_SPRITE_TRANSLUCENT;
act->spr.cstat |= CSTAT_SPRITE_TRANS_FLIP; act->spr.cstat |= CSTAT_SPRITE_TRANS_FLIP;
act->spr.pos.X += krandf(128) - 64; act->spr.pos.X += krandf(128) - 64;
@ -870,76 +870,76 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case MAMA: case MAMA:
if (act->spr.pal == 30) if (act->spr.pal == 30)
{ {
act->spr.SetScale(0.40625, 0.40625); act->spr.scale = DVector2(0.40625, 0.40625);
act->clipdist = 18.75; act->clipdist = 18.75;
} }
else if (act->spr.pal == 31) else if (act->spr.pal == 31)
{ {
act->spr.SetScale(0.5625, 0.5625); act->spr.scale = DVector2(0.5625, 0.5625);
act->clipdist = 25; act->clipdist = 25;
} }
else if (act->spr.pal == 32) else if (act->spr.pal == 32)
{ {
act->spr.SetScale(0.78125, 0.78125); act->spr.scale = DVector2(0.78125, 0.78125);
act->clipdist = 25; act->clipdist = 25;
} }
else else
{ {
act->spr.SetScale(0.78125, 0.78125); act->spr.scale = DVector2(0.78125, 0.78125);
act->clipdist = 25; act->clipdist = 25;
} }
break; break;
case BIKERB: case BIKERB:
act->spr.SetScale(0.4375, 0.34375); act->spr.scale = DVector2(0.4375, 0.34375);
act->clipdist = 18; act->clipdist = 18;
break; break;
case BIKERBV2: case BIKERBV2:
act->spr.SetScale(0.4375, 0.34375); act->spr.scale = DVector2(0.4375, 0.34375);
act->clipdist = 18; act->clipdist = 18;
break; break;
case BIKER: case BIKER:
act->spr.SetScale(0.4375, 0.34375); act->spr.scale = DVector2(0.4375, 0.34375);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case CHEERB: case CHEERB:
act->spr.SetScale(0.4375, 0.34375); act->spr.scale = DVector2(0.4375, 0.34375);
act->clipdist = 18; act->clipdist = 18;
break; break;
case CHEER: case CHEER:
case CHEERSTAYPUT: case CHEERSTAYPUT:
act->spr.SetScale(0.34375, 0.3125); act->spr.scale = DVector2(0.34375, 0.3125);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case MAKEOUT: case MAKEOUT:
act->spr.SetScale(0.40625, 0.40625); act->spr.scale = DVector2(0.40625, 0.40625);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case MINIONBOAT: case MINIONBOAT:
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case HULKBOAT: case HULKBOAT:
act->spr.SetScale(0.75, 0.75); act->spr.scale = DVector2(0.75, 0.75);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case CHEERBOAT: case CHEERBOAT:
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case TORNADO: case TORNADO:
act->spr.SetScale(1, 2); act->spr.scale = DVector2(1, 2);
act->setClipDistFromTile(); act->setClipDistFromTile();
act->clipdist *= 0.25; act->clipdist *= 0.25;
act->spr.cstat = CSTAT_SPRITE_TRANSLUCENT; act->spr.cstat = CSTAT_SPRITE_TRANSLUCENT;
break; break;
case LTH: case LTH:
act->spr.SetScale(0.375, 0.34375); act->spr.scale = DVector2(0.375, 0.34375);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
case ROCK: case ROCK:
case ROCK2: case ROCK2:
act->spr.SetScale(1, 1); act->spr.scale = DVector2(1, 1);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
@ -949,12 +949,12 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case UFO3: case UFO3:
case UFO4: case UFO4:
case UFO5: case UFO5:
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->setClipDistFromTile(); act->setClipDistFromTile();
act->spr.extra = 50; act->spr.extra = 50;
break; break;
case SBMOVE: case SBMOVE:
act->spr.SetScale(0.75, 0.75); act->spr.scale = DVector2(0.75, 0.75);
act->setClipDistFromTile(); act->setClipDistFromTile();
break; break;
@ -966,7 +966,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if ((act->spr.lotag > ud.player_skill) || ud.monsters_off == 1) if ((act->spr.lotag > ud.player_skill) || ud.monsters_off == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -977,7 +977,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.picnum == RAT) if (act->spr.picnum == RAT)
{ {
act->spr.angle = randomAngle(); act->spr.angle = randomAngle();
act->spr.SetScale(0.75, 0.75); act->spr.scale = DVector2(0.75, 0.75);
act->spr.cstat = 0; act->spr.cstat = 0;
} }
else else
@ -1034,13 +1034,13 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
double j = ((act->floorz - act->ceilingz) / 128.); double j = ((act->floorz - act->ceilingz) / 128.);
act->spr.SetScale(max(0., 0.390625 - j * 0.5), j); act->spr.scale = DVector2(max(0., 0.390625 - j * 0.5), j);
if(krand() & 4) act->spr.cstat |= CSTAT_SPRITE_XFLIP; if(krand() & 4) act->spr.cstat |= CSTAT_SPRITE_XFLIP;
break; break;
} }
case HEAVYHBOMB: case HEAVYHBOMB:
act->SetOwner(act); act->SetOwner(act);
act->spr.SetScale(0.140625, 0.140625); act->spr.scale = DVector2(0.140625, 0.140625);
act->spr.yint = 4; act->spr.yint = 4;
[[fallthrough]]; [[fallthrough]];
case REACTOR2: case REACTOR2:
@ -1112,7 +1112,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if ((ud.multimode < 2 && act->spr.pal != 0) || (act->spr.lotag > ud.player_skill)) if ((ud.multimode < 2 && act->spr.pal != 0) || (act->spr.lotag > ud.player_skill))
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -1127,15 +1127,15 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (ud.multimode > 1 && ud.coop != 1 && act->spr.picnum == ACCESSCARD) if (ud.multimode > 1 && ud.coop != 1 && act->spr.picnum == ACCESSCARD)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
else else
{ {
if (act->spr.picnum == AMMO) if (act->spr.picnum == AMMO)
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
else act->spr.SetScale(0.5, 0.5); else act->spr.scale = DVector2(0.5, 0.5);
} }
act->spr.shade = -17; act->spr.shade = -17;
@ -1149,86 +1149,86 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
switch (act->spr.picnum) switch (act->spr.picnum)
{ {
case FIRSTGUNSPRITE: case FIRSTGUNSPRITE:
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
break; break;
case SHOTGUNAMMO: case SHOTGUNAMMO:
act->spr.SetScale(0.28125, 0.265625); act->spr.scale = DVector2(0.28125, 0.265625);
if (isRRRA()) act->spr.cstat = CSTAT_SPRITE_BLOCK_HITSCAN; if (isRRRA()) act->spr.cstat = CSTAT_SPRITE_BLOCK_HITSCAN;
break; break;
case SIXPAK: case SIXPAK:
act->spr.SetScale(0.203125, 0.140625); act->spr.scale = DVector2(0.203125, 0.140625);
if (isRRRA()) act->spr.cstat = CSTAT_SPRITE_BLOCK_HITSCAN; if (isRRRA()) act->spr.cstat = CSTAT_SPRITE_BLOCK_HITSCAN;
break; break;
case FIRSTAID: case FIRSTAID:
act->spr.SetScale(0.125, 0.125); act->spr.scale = DVector2(0.125, 0.125);
break; break;
case BEER: case BEER:
act->spr.SetScale(0.078125, 0.0625); act->spr.scale = DVector2(0.078125, 0.0625);
break; break;
case AMMO: case AMMO:
act->spr.SetScale(0.140625, 0.140625); act->spr.scale = DVector2(0.140625, 0.140625);
break; break;
case MOTOAMMO: case MOTOAMMO:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0.359375, 0.359375); act->spr.scale = DVector2(0.359375, 0.359375);
break; break;
case BOATAMMO: case BOATAMMO:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0.25, 0.25); act->spr.scale = DVector2(0.25, 0.25);
break; break;
case COWPIE: case COWPIE:
act->spr.SetScale(0.125, 0.09375); act->spr.scale = DVector2(0.125, 0.09375);
break; break;
case STEROIDS: case STEROIDS:
act->spr.SetScale(0.203125, 0.140625); act->spr.scale = DVector2(0.203125, 0.140625);
break; break;
case ACCESSCARD: case ACCESSCARD:
act->spr.SetScale(0.171875, 0.1875); act->spr.scale = DVector2(0.171875, 0.1875);
break; break;
case HEATSENSOR: case HEATSENSOR:
act->spr.SetScale(0.09375, 0.0625); act->spr.scale = DVector2(0.09375, 0.0625);
break; break;
case AIRTANK: case AIRTANK:
act->spr.SetScale(0.296875, 0.25); act->spr.scale = DVector2(0.296875, 0.25);
break; break;
case BATTERYAMMO: case BATTERYAMMO:
act->spr.SetScale(0.234375, 0.234375); act->spr.scale = DVector2(0.234375, 0.234375);
break; break;
case BOWLINGBALLSPRITE: case BOWLINGBALLSPRITE:
act->spr.SetScale(0.171875, 0.171875); act->spr.scale = DVector2(0.171875, 0.171875);
break; break;
case POWDERKEG: case POWDERKEG:
act->spr.SetScale(0.171875, 0.171875); act->spr.scale = DVector2(0.171875, 0.171875);
act->spr.yint = 4; act->spr.yint = 4;
act->vel.X = 2; act->vel.X = 2;
break; break;
case RPGSPRITE: case RPGSPRITE:
act->spr.SetScale(0.25, 0.21875); act->spr.scale = DVector2(0.25, 0.21875);
break; break;
case RPG2SPRITE: case RPG2SPRITE:
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
act->spr.SetScale(0.34375, 0.3125); act->spr.scale = DVector2(0.34375, 0.3125);
break; break;
case SHRINKERSPRITE: case SHRINKERSPRITE:
act->spr.SetScale(0.34375, 0.203125); act->spr.scale = DVector2(0.34375, 0.203125);
break; break;
case DEVISTATORSPRITE: case DEVISTATORSPRITE:
act->spr.SetScale(0.28125, 0.265625); act->spr.scale = DVector2(0.28125, 0.265625);
break; break;
case SAWAMMO: case SAWAMMO:
act->spr.SetScale(0.1875, 0.109375); act->spr.scale = DVector2(0.1875, 0.109375);
break; break;
case GROWSPRITEICON: case GROWSPRITEICON:
act->spr.SetScale(0.15625, 0.140625); act->spr.scale = DVector2(0.15625, 0.140625);
break; break;
case DEVISTATORAMMO: case DEVISTATORAMMO:
act->spr.SetScale(0.15625, 0.140625); act->spr.scale = DVector2(0.15625, 0.140625);
break; break;
case ATOMICHEALTH: case ATOMICHEALTH:
act->spr.SetScale(0.125, 0.125); act->spr.scale = DVector2(0.125, 0.125);
break; break;
case FREEZESPRITE: case FREEZESPRITE:
act->spr.SetScale(0.265625, 0.25); act->spr.scale = DVector2(0.265625, 0.25);
break; break;
} }
act->spr.shade = act->sector()->floorshade; act->spr.shade = act->sector()->floorshade;
@ -1257,7 +1257,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (ud.multimode < 2 && act->spr.pal != 0) if (ud.multimode < 2 && act->spr.pal != 0)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -1271,7 +1271,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
{ {
act->spr.angle = actj->spr.angle; act->spr.angle = actj->spr.angle;
act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT; act->spr.cstat = CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER | CSTAT_SPRITE_TRANSLUCENT;
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
act->vel.X = -0.5; act->vel.X = -0.5;
ssp(act, CLIPMASK0); ssp(act, CLIPMASK0);
} }
@ -1290,7 +1290,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (act->spr.scale.X <= 0.125) if (act->spr.scale.X <= 0.125)
{ {
act->spr.cstat = CSTAT_SPRITE_INVISIBLE; act->spr.cstat = CSTAT_SPRITE_INVISIBLE;
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
} }
else act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; else act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
act->spr.extra = gs.impact_damage << 2; act->spr.extra = gs.impact_damage << 2;
@ -1306,7 +1306,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
act->spr.extra = 1; act->spr.extra = 1;
if (ud.multimode < 2 && act->spr.pal != 0) if (ud.multimode < 2 && act->spr.pal != 0)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
break; break;
} }
@ -1322,11 +1322,11 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
if (ud.multimode < 2 && act->spr.pal == 1) if (ud.multimode < 2 && act->spr.pal == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
break; break;
} }
act->spr.pal = 0; act->spr.pal = 0;
act->spr.SetScale(0.28125, 0.28125); act->spr.scale = DVector2(0.28125, 0.28125);
act->setClipDistFromTile(); act->setClipDistFromTile();
act->saved_ammo = 100; act->saved_ammo = 100;
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
@ -1337,11 +1337,11 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
if (!isRRRA()) goto default_case; if (!isRRRA()) goto default_case;
if (ud.multimode < 2 && act->spr.pal == 1) if (ud.multimode < 2 && act->spr.pal == 1)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
break; break;
} }
act->spr.pal = 0; act->spr.pal = 0;
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->setClipDistFromTile(); act->setClipDistFromTile();
act->saved_ammo = 20; act->saved_ammo = 20;
act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; act->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
@ -1372,7 +1372,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case WOODENHORSE: case WOODENHORSE:
if (actj) if (actj)
act->spr.SetScale(0.5, 0.5); act->spr.scale = DVector2(0.5, 0.5);
act->clipdist = 18; act->clipdist = 18;
makeitfall(act); makeitfall(act);
if (actj) act->SetOwner(actj); if (actj) act->SetOwner(actj);
@ -1382,7 +1382,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
case EGG: case EGG:
if (ud.monsters_off == 1 && act->spr.picnum == EGG) if (ud.monsters_off == 1 && act->spr.picnum == EGG)
{ {
act->spr.SetScale(0, 0); act->spr.scale = DVector2(0, 0);
ChangeActorStat(act, STAT_MISC); ChangeActorStat(act, STAT_MISC);
} }
else else
@ -1399,7 +1399,7 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray<DDukeActor*>*
break; break;
case RRTILE63: case RRTILE63:
act->spr.cstat |= CSTAT_SPRITE_INVISIBLE; act->spr.cstat |= CSTAT_SPRITE_INVISIBLE;
act->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); act->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
act->clipdist = 0.25; act->clipdist = 0.25;
ChangeActorStat(act, 100); ChangeActorStat(act, 100);
break; break;

View file

@ -92,7 +92,7 @@ DExhumedActor* BuildAnim(DExhumedActor* pActor, int val, int val2, const DVector
} }
pActor->clipdist = 2.5; pActor->clipdist = 2.5;
pActor->spr.SetScale(nScale, nScale); pActor->spr.scale = DVector2(nScale, nScale);
pActor->spr.picnum = 1; pActor->spr.picnum = 1;
pActor->spr.angle = nullAngle; pActor->spr.angle = nullAngle;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;

View file

@ -72,7 +72,7 @@ void BuildAnubis(DExhumedActor* ap, const DVector3& pos, sectortype* pSector, DA
ap->spr.pal = ap->sector()->ceilingpal; ap->spr.pal = ap->sector()->ceilingpal;
ap->clipdist = 15; ap->clipdist = 15;
ap->spr.angle = nAngle; ap->spr.angle = nAngle;
ap->spr.SetScale(0.625, 0.625); ap->spr.scale = DVector2(0.625, 0.625);
ap->vel.X = 0; ap->vel.X = 0;
ap->vel.Y = 0; ap->vel.Y = 0;
ap->vel.Z = 0; ap->vel.Z = 0;
@ -412,7 +412,7 @@ void AIAnubis::Damage(RunListEvent* ev)
auto pDrumActor = insertActor(ap->sector(), kStatAnubisDrum); auto pDrumActor = insertActor(ap->sector(), kStatAnubisDrum);
pDrumActor->spr.pos = { ap->spr.pos.X, ap->spr.pos.Y, pDrumActor->sector()->floorz }; pDrumActor->spr.pos = { ap->spr.pos.X, ap->spr.pos.Y, pDrumActor->sector()->floorz };
pDrumActor->spr.SetScale(0.625, 0.625); pDrumActor->spr.scale = DVector2(0.625, 0.625);
pDrumActor->spr.shade = -64; pDrumActor->spr.shade = -64;
BuildObject(pDrumActor, 2, 0); BuildObject(pDrumActor, 2, 0);

View file

@ -59,7 +59,7 @@ DExhumedActor* BuildBubble(const DVector3& pos, sectortype* pSector)
pActor->spr.shade = -32; pActor->spr.shade = -32;
pActor->spr.pal = 0; pActor->spr.pal = 0;
pActor->clipdist = 1.25; pActor->clipdist = 1.25;
pActor->spr.SetScale(0.625, 0.625); pActor->spr.scale = DVector2(0.625, 0.625);
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;
pActor->spr.picnum = 1; pActor->spr.picnum = 1;

View file

@ -360,7 +360,7 @@ int MoveBullet(int nBullet)
{ {
pBullet->nSeq = 45; pBullet->nSeq = 45;
pBullet->nFrame = 0; pBullet->nFrame = 0;
pActor->spr.SetScale(0.625, 0.625); pActor->spr.scale = DVector2(0.625, 0.625);
pActor->spr.shade = 0; pActor->spr.shade = 0;
pActor->spr.pos.Z += 2; pActor->spr.pos.Z += 2;
} }
@ -636,7 +636,7 @@ DExhumedActor* BuildBullet(DExhumedActor* pActor, int nType, double fZOffset, DA
nRepeat = 30; nRepeat = 30;
} }
pBulletActor->spr.SetScale(nRepeat * REPEAT_SCALE, nRepeat * REPEAT_SCALE); pBulletActor->spr.scale = DVector2(nRepeat * REPEAT_SCALE, nRepeat * REPEAT_SCALE);
pBulletActor->spr.xoffset = 0; pBulletActor->spr.xoffset = 0;
pBulletActor->spr.yoffset = 0; pBulletActor->spr.yoffset = 0;
pBulletActor->spr.angle = nAngle; pBulletActor->spr.angle = nAngle;

View file

@ -58,7 +58,7 @@ void BuildFishLimb(DExhumedActor* pActor, int anim)
pChunkActor->spr.pal = 0; pChunkActor->spr.pal = 0;
pChunkActor->vel.X = ((RandomSize(5) - 16) << 4); pChunkActor->vel.X = ((RandomSize(5) - 16) << 4);
pChunkActor->vel.Y = ((RandomSize(5) - 16) << 4); pChunkActor->vel.Y = ((RandomSize(5) - 16) << 4);
pChunkActor->spr.SetScale(1, 1); pChunkActor->spr.scale = DVector2(1, 1);
pChunkActor->spr.xoffset = 0; pChunkActor->spr.xoffset = 0;
pChunkActor->spr.yoffset = 0; pChunkActor->spr.yoffset = 0;
pChunkActor->vel.Z = ((-(RandomByte() + 512)) * 2) / 256.; pChunkActor->vel.Z = ((-(RandomByte() + 512)) * 2) / 256.;
@ -175,7 +175,7 @@ void BuildFish(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector,
pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->clipdist = 20; pActor->clipdist = 20;
pActor->spr.SetScale(0.625, 0.625); pActor->spr.scale = DVector2(0.625, 0.625);
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;

View file

@ -127,7 +127,7 @@ void BuildGrenade(int nPlayer)
pActor->spr.pos = pPlayerActor->spr.pos.plusZ(-15); pActor->spr.pos = pPlayerActor->spr.pos.plusZ(-15);
pActor->spr.shade = -64; pActor->spr.shade = -64;
pActor->spr.SetScale(0.34375, 0.3125); pActor->spr.scale = DVector2(0.34375, 0.3125);
pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE; pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE;
pActor->spr.picnum = 1; pActor->spr.picnum = 1;
pActor->spr.pal = 0; pActor->spr.pal = 0;

View file

@ -149,7 +149,7 @@ void BuildItemAnim(DExhumedActor* pActor)
{ {
pActor->spr.intowner = -1; pActor->spr.intowner = -1;
double s = nItemAnimInfo[nItem].repeat * REPEAT_SCALE; double s = nItemAnimInfo[nItem].repeat * REPEAT_SCALE;
pActor->spr.SetScale(s, s); pActor->spr.scale = DVector2(s, s);
} }
} }
@ -457,7 +457,7 @@ void StartRegenerate(DExhumedActor* pActor)
} }
pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE; pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE;
pActor->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); pActor->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
pActor->spr.pal = 1; pActor->spr.pal = 1;
Regenerates.Push(pActor); Regenerates.Push(pActor);
@ -498,7 +498,7 @@ void DoRegenerates()
} }
} }
pActor->spr.SetScale(s, s); pActor->spr.scale = DVector2(s, s);
pActor->spr.pal = (uint8_t)pActor->spr.yint; pActor->spr.pal = (uint8_t)pActor->spr.yint;
pActor->spr.yint = 0; pActor->spr.yint = 0;
pActor->spr.xint = 0; pActor->spr.xint = 0;

View file

@ -50,7 +50,7 @@ DExhumedActor* BuildLavaLimb(DExhumedActor* pActor, int move, double height)
pLimbActor->vel.Z = 10 - RandomSize(5); pLimbActor->vel.Z = 10 - RandomSize(5);
pLimbActor->spr.xoffset = 0; pLimbActor->spr.xoffset = 0;
pLimbActor->spr.yoffset = 0; pLimbActor->spr.yoffset = 0;
pLimbActor->spr.SetScale(1.40625, 1.40625); pLimbActor->spr.scale = DVector2(1.40625, 1.40625);
pLimbActor->spr.picnum = (move & 3) % 3; pLimbActor->spr.picnum = (move & 3) % 3;
pLimbActor->spr.hitag = 0; pLimbActor->spr.hitag = 0;
pLimbActor->spr.lotag = runlist_HeadRun() + 1; pLimbActor->spr.lotag = runlist_HeadRun() + 1;
@ -113,7 +113,7 @@ void BuildLava(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector,
} }
pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE; pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE;
pActor->spr.SetScale(3.125, 3.125); pActor->spr.scale = DVector2(3.125, 3.125);
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->spr.pal = 0; pActor->spr.pal = 0;
pActor->clipdist = 31.75; pActor->clipdist = 31.75;

View file

@ -58,7 +58,7 @@ void BuildLion(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector,
pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
pActor->clipdist = 15; pActor->clipdist = 15;
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->spr.SetScale(0.625, 0.625); pActor->spr.scale = DVector2(0.625, 0.625);
pActor->spr.picnum = 1; pActor->spr.picnum = 1;
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;

View file

@ -1216,7 +1216,7 @@ DExhumedActor* BuildCreatureChunk(DExhumedActor* pSrc, int nPic, bool bSpecial)
pActor->vel.Z *= 2; pActor->vel.Z *= 2;
} }
pActor->spr.SetScale(1, 1); pActor->spr.scale = DVector2(1, 1);
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;
pActor->spr.picnum = nPic; pActor->spr.picnum = nPic;

View file

@ -62,7 +62,7 @@ void BuildMummy(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector,
pActor->vel.X = 0; pActor->vel.X = 0;
pActor->vel.Y = 0; pActor->vel.Y = 0;
pActor->vel.Z = 0; pActor->vel.Z = 0;
pActor->spr.SetScale(0.65625, 0.65625); pActor->spr.scale = DVector2(0.65625, 0.65625);
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;

View file

@ -1401,7 +1401,7 @@ DExhumedActor* BuildSpark(DExhumedActor* pActor, int nVal)
pSpark->spr.pal = 1; pSpark->spr.pal = 1;
pSpark->spr.xoffset = 0; pSpark->spr.xoffset = 0;
pSpark->spr.yoffset = 0; pSpark->spr.yoffset = 0;
pSpark->spr.SetScale(0.78125, 0.78125); pSpark->spr.scale = DVector2(0.78125, 0.78125);
if (nVal >= 2) if (nVal >= 2)
{ {
@ -1410,7 +1410,7 @@ DExhumedActor* BuildSpark(DExhumedActor* pActor, int nVal)
if (nVal == 3) if (nVal == 3)
{ {
pSpark->spr.SetScale(1.875, 1.875); pSpark->spr.scale = DVector2(1.875, 1.875);
} }
else else
{ {

View file

@ -299,7 +299,7 @@ void RestartPlayer(int nPlayer)
floorsprt = insertActor(pActor->sector(), 0); floorsprt = insertActor(pActor->sector(), 0);
floorsprt->spr.pos = pActor->spr.pos; floorsprt->spr.pos = pActor->spr.pos;
floorsprt->spr.SetScale(1, 1); floorsprt->spr.scale = DVector2(1, 1);
floorsprt->spr.cstat = CSTAT_SPRITE_ALIGNMENT_FLOOR; floorsprt->spr.cstat = CSTAT_SPRITE_ALIGNMENT_FLOOR;
floorsprt->spr.picnum = nPlayer + kTile3571; floorsprt->spr.picnum = nPlayer + kTile3571;
} }
@ -322,7 +322,7 @@ void RestartPlayer(int nPlayer)
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->clipdist = 14.5; pActor->clipdist = 14.5;
pActor->spr.pal = 0; pActor->spr.pal = 0;
pActor->spr.SetScale(0.625, 0.625); pActor->spr.scale = DVector2(0.625, 0.625);
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;
pActor->spr.picnum = seq_GetSeqPicnum(kSeqJoe, 18, 0); pActor->spr.picnum = seq_GetSeqPicnum(kSeqJoe, 18, 0);

View file

@ -425,7 +425,7 @@ void BuildTail()
pTailActor->spr.hitag = 0; pTailActor->spr.hitag = 0;
pTailActor->spr.cstat = 0; pTailActor->spr.cstat = 0;
pTailActor->clipdist = 25; pTailActor->clipdist = 25;
pTailActor->spr.SetScale(1.25, 1.25); pTailActor->spr.scale = DVector2(1.25, 1.25);
pTailActor->spr.picnum = 1; pTailActor->spr.picnum = 1;
pTailActor->spr.pal = pTailActor->sector()->ceilingpal; pTailActor->spr.pal = pTailActor->sector()->ceilingpal;
pTailActor->spr.xoffset = 0; pTailActor->spr.xoffset = 0;
@ -477,14 +477,14 @@ void BuildQueenEgg(int nQueen, int nVal)
if (!nVal) if (!nVal)
{ {
pActor2->spr.SetScale(0.46875, 0.46875); pActor2->spr.scale = DVector2(0.46875, 0.46875);
pActor2->vel.XY() = pActor2->spr.angle.ToVector() * 1024; pActor2->vel.XY() = pActor2->spr.angle.ToVector() * 1024;
pActor2->vel.Z = -6000 / 256.; pActor2->vel.Z = -6000 / 256.;
pActor2->spr.cstat = 0; pActor2->spr.cstat = 0;
} }
else else
{ {
pActor2->spr.SetScale(0.9375, 0.9375); pActor2->spr.scale = DVector2(0.9375, 0.9375);
pActor2->vel.X = 0; pActor2->vel.X = 0;
pActor2->vel.Y = 0; pActor2->vel.Y = 0;
pActor2->vel.Z = -2000 / 256.; pActor2->vel.Z = -2000 / 256.;
@ -746,7 +746,7 @@ void BuildQueenHead(int nQueen)
pActor2->spr.pos.XY() = pActor->spr.pos.XY(); pActor2->spr.pos.XY() = pActor->spr.pos.XY();
pActor2->spr.pos.Z = pSector->floorz; pActor2->spr.pos.Z = pSector->floorz;
pActor2->clipdist = 17.5; pActor2->clipdist = 17.5;
pActor2->spr.SetScale(1.25, 1.25); pActor2->spr.scale = DVector2(1.25, 1.25);
pActor2->spr.cstat = 0; pActor2->spr.cstat = 0;
pActor2->spr.picnum = 1; pActor2->spr.picnum = 1;
pActor2->spr.shade = -12; pActor2->spr.shade = -12;
@ -1010,7 +1010,7 @@ void AIQueenHead::Tick(RunListEvent* ev)
auto nAngle = RandomAngle(); auto nAngle = RandomAngle();
double s = (127 - QueenHead.nIndex2) * REPEAT_SCALE; double s = (127 - QueenHead.nIndex2) * REPEAT_SCALE;
pActor->spr.SetScale(s, s); pActor->spr.scale = DVector2(s, s);
pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE; pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE;
@ -1178,7 +1178,7 @@ void BuildQueen(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector,
pActor->spr.pal = 0; pActor->spr.pal = 0;
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->clipdist = 25; pActor->clipdist = 25;
pActor->spr.SetScale(1.25, 1.25); pActor->spr.scale = DVector2(1.25, 1.25);
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;
pActor->spr.picnum = 1; pActor->spr.picnum = 1;
@ -1446,13 +1446,13 @@ void AIQueen::Tick(RunListEvent* ev)
auto pChunkActor = BuildCreatureChunk(pActor, seq_GetSeqPicnum(kSeqQueen, 57, 0)); auto pChunkActor = BuildCreatureChunk(pActor, seq_GetSeqPicnum(kSeqQueen, 57, 0));
pChunkActor->spr.picnum = kQueenChunk + (i % 3); pChunkActor->spr.picnum = kQueenChunk + (i % 3);
pChunkActor->spr.SetScale(1.5625, 1.5625); pChunkActor->spr.scale = DVector2(1.5625, 1.5625);
} }
auto pChunkActor = BuildCreatureChunk(pActor, seq_GetSeqPicnum(kSeqQueen, 57, 0)); auto pChunkActor = BuildCreatureChunk(pActor, seq_GetSeqPicnum(kSeqQueen, 57, 0));
pChunkActor->spr.picnum = kTile3126; pChunkActor->spr.picnum = kTile3126;
pChunkActor->spr.SetScale(1.5625, 1.5625); pChunkActor->spr.scale = DVector2(1.5625, 1.5625);
PlayFXAtXYZ( PlayFXAtXYZ(
StaticSound[kSound40], StaticSound[kSound40],

View file

@ -122,7 +122,7 @@ void BuildRa(int nPlayer)
pActor->spr.hitag = 0; pActor->spr.hitag = 0;
pActor->spr.intowner = runlist_AddRunRec(pActor->spr.lotag - 1, nPlayer, 0x210000); pActor->spr.intowner = runlist_AddRunRec(pActor->spr.lotag - 1, nPlayer, 0x210000);
pActor->spr.pal = 1; pActor->spr.pal = 1;
pActor->spr.SetScale(1, 1); pActor->spr.scale = DVector2(1, 1);
pActor->spr.pos = pPlayerActor->spr.pos; pActor->spr.pos = pPlayerActor->spr.pos;
// GrabTimeSlot(3); // GrabTimeSlot(3);

View file

@ -115,7 +115,7 @@ void InitSpiritHead()
} }
pSpiritSpr->spr.SetScale(2.1875, 2.1875); pSpiritSpr->spr.scale = DVector2(2.1875, 2.1875);
pSpiritSpr->spr.picnum = kTileRamsesWorkTile; pSpiritSpr->spr.picnum = kTileRamsesWorkTile;
nHeadStage = 0; nHeadStage = 0;

View file

@ -112,7 +112,7 @@ void BuildRat(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector, D
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->clipdist = 7.5; pActor->clipdist = 7.5;
pActor->spr.angle = nAngle; pActor->spr.angle = nAngle;
pActor->spr.SetScale(0.78125, 0.78125); pActor->spr.scale = DVector2(0.78125, 0.78125);
pActor->vel.X = 0; pActor->vel.X = 0;
pActor->vel.Y = 0; pActor->vel.Y = 0;
pActor->vel.Z = 0; pActor->vel.Z = 0;

View file

@ -60,7 +60,7 @@ void BuildRex(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector, D
pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
pActor->clipdist = 20; pActor->clipdist = 20;
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->spr.SetScale(1, 1); pActor->spr.scale = DVector2(1, 1);
pActor->spr.picnum = 1; pActor->spr.picnum = 1;
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;

View file

@ -62,7 +62,7 @@ void BuildRoach(int nType, DExhumedActor* pActor, const DVector3& pos, sectortyp
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->clipdist = 15; pActor->clipdist = 15;
pActor->spr.angle = angle; pActor->spr.angle = angle;
pActor->spr.SetScale(0.625, 0.625); pActor->spr.scale = DVector2(0.625, 0.625);
pActor->vel.X = 0; pActor->vel.X = 0;
pActor->vel.Y = 0; pActor->vel.Y = 0;
pActor->vel.Z = 0; pActor->vel.Z = 0;

View file

@ -61,7 +61,7 @@ void BuildScorp(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector,
pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; pActor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL;
pActor->clipdist = 17.5; pActor->clipdist = 17.5;
pActor->spr.shade = -12; pActor->spr.shade = -12;
pActor->spr.SetScale(1.25, 1.25); pActor->spr.scale = DVector2(1.25, 1.25);
pActor->spr.picnum = 1; pActor->spr.picnum = 1;
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;

View file

@ -690,7 +690,7 @@ int seq_PlotSequence(int nSprite, int16_t edx, int16_t nFrame, int16_t ecx)
pTSprite->cstat = CSTAT_SPRITE_ALIGNMENT_FLOOR | CSTAT_SPRITE_TRANSLUCENT; pTSprite->cstat = CSTAT_SPRITE_ALIGNMENT_FLOOR | CSTAT_SPRITE_TRANSLUCENT;
pTSprite->pos.Z = pSector->floorz; pTSprite->pos.Z = pSector->floorz;
pTSprite->SetScale(edx * REPEAT_SCALE, edx * REPEAT_SCALE); pTSprite->scale = DVector2(edx * REPEAT_SCALE, edx * REPEAT_SCALE);
pTSprite->statnum = -3; pTSprite->statnum = -3;
pTSprite->pal = 0; pTSprite->pal = 0;
} }

View file

@ -65,7 +65,7 @@ void BuildSet(DExhumedActor* pActor, const DVector3& pos, sectortype* pSector, D
pActor->vel.X = 0; pActor->vel.X = 0;
pActor->vel.Y = 0; pActor->vel.Y = 0;
pActor->vel.Z = 0; pActor->vel.Z = 0;
pActor->spr.SetScale(1.359375, 1.5); pActor->spr.scale = DVector2(1.359375, 1.5);
pActor->spr.pal = pActor->sector()->ceilingpal; pActor->spr.pal = pActor->sector()->ceilingpal;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
pActor->spr.yoffset = 0; pActor->spr.yoffset = 0;
@ -108,7 +108,7 @@ void BuildSoul(DExhumedActor* pSet)
pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE; pActor->spr.cstat = CSTAT_SPRITE_INVISIBLE;
pActor->spr.shade = -127; pActor->spr.shade = -127;
pActor->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); pActor->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
pActor->spr.pal = 0; pActor->spr.pal = 0;
pActor->clipdist = 1.25; pActor->clipdist = 1.25;
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;
@ -163,7 +163,7 @@ void AISoul::Tick(RunListEvent* ev)
if (!pSet) return; if (!pSet) return;
pActor->spr.cstat = 0; pActor->spr.cstat = 0;
pActor->spr.SetScale(REPEAT_SCALE, REPEAT_SCALE); pActor->spr.scale = DVector2(REPEAT_SCALE, REPEAT_SCALE);
pActor->spr.pos = pSet->spr.pos.plusZ(-GetActorHeight(pSet) * 0.5); pActor->spr.pos = pSet->spr.pos.plusZ(-GetActorHeight(pSet) * 0.5);
ChangeActorSect(pActor, pSet->sector()); ChangeActorSect(pActor, pSet->sector());
return; return;

View file

@ -214,7 +214,7 @@ void BuildSnake(int nPlayer, double zVal)
if (i == 0) if (i == 0)
{ {
pActor->spr.pos = pPlayerActor->spr.pos.plusZ(zVal); pActor->spr.pos = pPlayerActor->spr.pos.plusZ(zVal);
pActor->spr.SetScale(0.5, 0.5); pActor->spr.scale = DVector2(0.5, 0.5);
pViewSect = pActor->sector(); pViewSect = pActor->sector();
sprt = pActor; sprt = pActor;
} }
@ -222,7 +222,7 @@ void BuildSnake(int nPlayer, double zVal)
{ {
pActor->spr.pos = sprt->spr.pos; pActor->spr.pos = sprt->spr.pos;
double s = 0.625 + 0.046875 * i; double s = 0.625 + 0.046875 * i;
pActor->spr.SetScale(s, s); pActor->spr.scale = DVector2(s, s);
} }
pActor->clipdist = 2.5; pActor->clipdist = 2.5;

View file

@ -63,7 +63,7 @@ DExhumedActor* BuildSpider(DExhumedActor* spp, const DVector3& pos, sectortype*
spp->vel.X = 0; spp->vel.X = 0;
spp->vel.Y = 0; spp->vel.Y = 0;
spp->vel.Z = 0; spp->vel.Z = 0;
spp->spr.SetScale(0.625, 0.625); spp->spr.scale = DVector2(0.625, 0.625);
spp->spr.pal = spp->sector()->ceilingpal; spp->spr.pal = spp->sector()->ceilingpal;
spp->spr.xoffset = 0; spp->spr.xoffset = 0;
spp->spr.yoffset = 0; spp->spr.yoffset = 0;

View file

@ -61,11 +61,11 @@ DExhumedActor* BuildWasp(DExhumedActor* pActor, const DVector3& pos, sectortype*
if (bEggWasp) if (bEggWasp)
{ {
pActor->spr.SetScale(0.34375, 0.3125); pActor->spr.scale = DVector2(0.34375, 0.3125);
} }
else else
{ {
pActor->spr.SetScale(0.78125, 0.78125); pActor->spr.scale = DVector2(0.78125, 0.78125);
} }
pActor->spr.xoffset = 0; pActor->spr.xoffset = 0;

View file

@ -76,14 +76,14 @@ int DoScaleSprite(DSWActor* actor)
if (scale_value > actor->user.scale_tgt) if (scale_value > actor->user.scale_tgt)
actor->user.scale_speed = 0; actor->user.scale_speed = 0;
else else
actor->spr.SetScale(scale_value * REPEAT_SCALE, scale_value * REPEAT_SCALE); actor->spr.scale = DVector2(scale_value * REPEAT_SCALE, scale_value * REPEAT_SCALE);
} }
else else
{ {
if (scale_value < actor->user.scale_tgt) if (scale_value < actor->user.scale_tgt)
actor->user.scale_speed = 0; actor->user.scale_speed = 0;
else else
actor->spr.SetScale(scale_value * REPEAT_SCALE, scale_value * REPEAT_SCALE); actor->spr.scale = DVector2(scale_value * REPEAT_SCALE, scale_value * REPEAT_SCALE);
} }
} }

View file

@ -604,7 +604,7 @@ int AutoBreakWall(walltype* wallp, const DVector3& hit_pos, DAngle ang, int type
breakActor->spr.extra = 0; breakActor->spr.extra = 0;
breakActor->spr.angle = ang; breakActor->spr.angle = ang;
breakActor->spr.picnum = ST1; breakActor->spr.picnum = ST1;
breakActor->spr.SetScale(1, 1); breakActor->spr.scale = DVector2(1, 1);
SetActorZ(breakActor, hit_pos); SetActorZ(breakActor, hit_pos);
SpawnShrap(breakActor, nullptr, -1, break_info); SpawnShrap(breakActor, nullptr, -1, break_info);
KillActor(breakActor); KillActor(breakActor);

View file

@ -752,7 +752,7 @@ int SetupBunny(DSWActor* actor)
{ {
EnemyDefaults(actor, &BunnyWhiteActionSet, &WhiteBunnyPersonality); EnemyDefaults(actor, &BunnyWhiteActionSet, &WhiteBunnyPersonality);
actor->user.Attrib = &WhiteBunnyAttrib; actor->user.Attrib = &WhiteBunnyAttrib;
actor->spr.SetScale(1.5, 1.40625); actor->spr.scale = DVector2(1.5, 1.40625);
actor->clipdist = 12.5; actor->clipdist = 12.5;
@ -1144,7 +1144,7 @@ void BunnyHatch(DSWActor* actor)
{ {
auto actorNew = insertActor(actor->sector(), STAT_DEFAULT); auto actorNew = insertActor(actor->sector(), STAT_DEFAULT);
actorNew->spr.pos = actor->spr.pos; actorNew->spr.pos = actor->spr.pos;
actorNew->spr.SetScale(0.46875, 0.375); // Baby size actorNew->spr.scale = DVector2(0.46875, 0.375); // Baby size
actorNew->spr.angle = RandomAngle(); actorNew->spr.angle = RandomAngle();
actorNew->spr.pal = 0; actorNew->spr.pal = 0;
SetupBunny(actorNew); SetupBunny(actorNew);
@ -1204,7 +1204,7 @@ DSWActor* BunnyHatch2(DSWActor* actor)
{ {
auto actorNew = insertActor(actor->sector(), STAT_DEFAULT); auto actorNew = insertActor(actor->sector(), STAT_DEFAULT);
actorNew->spr.pos = actor->spr.pos; actorNew->spr.pos = actor->spr.pos;
actorNew->spr.SetScale(0.46875, 0.375); // Baby size actorNew->spr.scale = DVector2(0.46875, 0.375); // Baby size
actorNew->spr.angle = RandomAngle(); actorNew->spr.angle = RandomAngle();
actorNew->spr.pal = 0; actorNew->spr.pal = 0;
SetupBunny(actorNew); SetupBunny(actorNew);
@ -1231,7 +1231,7 @@ DSWActor* BunnyHatch2(DSWActor* actor)
if (TEST_BOOL3(actor)) if (TEST_BOOL3(actor))
{ {
PickJumpMaxSpeed(actorNew, -600-RandomRange(600)); PickJumpMaxSpeed(actorNew, -600-RandomRange(600));
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->vel.X = 9.375 + RandomRangeF(62.5); actorNew->vel.X = 9.375 + RandomRangeF(62.5);
actorNew->user.Health = 1; // Easy to pop. Like shootn' skeet. actorNew->user.Health = 1; // Easy to pop. Like shootn' skeet.
actorNew->spr.angle += RandomAngle(22.5) - RandomAngle(22.5); actorNew->spr.angle += RandomAngle(22.5) - RandomAngle(22.5);

View file

@ -513,7 +513,7 @@ void CoolgCommon(DSWActor* actor)
actor->user.pos.Z = actor->spr.pos.Z; actor->user.pos.Z = actor->spr.pos.Z;
actor->spr.SetScale(0.65625, 0.65625); actor->spr.scale = DVector2(0.65625, 0.65625);
actor->spr.extra |= (SPRX_PLAYER_OR_ENEMY); actor->spr.extra |= (SPRX_PLAYER_OR_ENEMY);
} }

View file

@ -504,7 +504,7 @@ int SetupCoolie(DSWActor* actor)
EnemyDefaults(actor, &CoolieActionSet, &CooliePersonality); EnemyDefaults(actor, &CoolieActionSet, &CooliePersonality);
actor->spr.SetScale(0.65625, 0.65625); actor->spr.scale = DVector2(0.65625, 0.65625);
actor->user.Flags |= (SPR_XFLIP_TOGGLE); actor->user.Flags |= (SPR_XFLIP_TOGGLE);

View file

@ -684,7 +684,7 @@ static void analyzesprites(tspriteArray& tsprites, const DVector3& viewpos, doub
if (tActor->user.ID == 1793 || tsp->picnum == 1793) if (tActor->user.ID == 1793 || tsp->picnum == 1793)
{ {
tsp->picnum = 2519; tsp->picnum = 2519;
tsp->SetScale(0.421875, 0.453125); tsp->scale = DVector2(0.421875, 0.453125);
} }
if (tActor->user.ID == STAR1) if (tActor->user.ID == STAR1)
@ -694,7 +694,7 @@ static void analyzesprites(tspriteArray& tsprites, const DVector3& viewpos, doub
tsp->picnum = DART_PIC; tsp->picnum = DART_PIC;
tsp->angle -= DAngle90 + mapangle(24); tsp->angle -= DAngle90 + mapangle(24);
tsp->SetScale(DART_REPEAT, DART_REPEAT); tsp->scale = DVector2(DART_REPEAT, DART_REPEAT);
tsp->cstat |= (CSTAT_SPRITE_ALIGNMENT_WALL); tsp->cstat |= (CSTAT_SPRITE_ALIGNMENT_WALL);
} }
else else
@ -758,7 +758,7 @@ static void analyzesprites(tspriteArray& tsprites, const DVector3& viewpos, doub
{ {
tsp->picnum = DART_PIC; tsp->picnum = DART_PIC;
tsp->angle -= DAngle90; tsp->angle -= DAngle90;
tsp->SetScale(DART_REPEAT, DART_REPEAT); tsp->scale = DVector2(DART_REPEAT, DART_REPEAT);
tsp->cstat |= (CSTAT_SPRITE_ALIGNMENT_WALL); tsp->cstat |= (CSTAT_SPRITE_ALIGNMENT_WALL);
} }

View file

@ -372,7 +372,7 @@ void EelCommon(DSWActor* actor)
actor->user.pos.Z = actor->spr.pos.Z; actor->user.pos.Z = actor->spr.pos.Z;
actor->spr.SetScale(0.546875, 0.421875); actor->spr.scale = DVector2(0.546875, 0.421875);
actor->user.Radius = 400; actor->user.Radius = 400;
} }

View file

@ -728,7 +728,7 @@ int SetupGirlNinja(DSWActor* actor)
actor->user.StateEnd = s_GirlNinjaDie; actor->user.StateEnd = s_GirlNinjaDie;
actor->user.Rot = sg_GirlNinjaRun; actor->user.Rot = sg_GirlNinjaRun;
actor->spr.SetScale(0.796875, 0.0671875); actor->spr.scale = DVector2(0.796875, 0.0671875);
actor->user.Attrib = &GirlNinjaAttrib; actor->user.Attrib = &GirlNinjaAttrib;
actor->spr.pal = actor->user.spal = 26; actor->spr.pal = actor->user.spal = 26;

View file

@ -320,7 +320,7 @@ int SetupHornet(DSWActor* actor)
actor->user.pos.Z = actor->spr.pos.Z; actor->user.pos.Z = actor->spr.pos.Z;
actor->spr.SetScale(0.578125, 0.5); actor->spr.scale = DVector2(0.578125, 0.5);
// Special looping buzz sound attached to each hornet spawned // Special looping buzz sound attached to each hornet spawned
PlaySound(DIGI_HORNETBUZZ, actor, v3df_follow|v3df_init); PlaySound(DIGI_HORNETBUZZ, actor, v3df_follow|v3df_init);

View file

@ -664,10 +664,10 @@ void DoAutoSize(tspritetype* tspr)
case ICON_STAR: // 1793 case ICON_STAR: // 1793
break; break;
case ICON_UZI: // 1797 case ICON_UZI: // 1797
tspr->SetScale(0.671875, 0.625); tspr->scale = DVector2(0.671875, 0.625);
break; break;
case ICON_UZIFLOOR: // 1807 case ICON_UZIFLOOR: // 1807
tspr->SetScale(0.671875, 0.625); tspr->scale = DVector2(0.671875, 0.625);
break; break;
case ICON_LG_UZI_AMMO: // 1799 case ICON_LG_UZI_AMMO: // 1799
break; break;
@ -682,7 +682,7 @@ void DoAutoSize(tspritetype* tspr)
case ICON_ROCKET: // 1843 case ICON_ROCKET: // 1843
break; break;
case ICON_SHOTGUN: // 1794 case ICON_SHOTGUN: // 1794
tspr->SetScale(0.890625, 0.90625); tspr->scale = DVector2(0.890625, 0.90625);
break; break;
case ICON_LG_ROCKET: // 1796 case ICON_LG_ROCKET: // 1796
break; break;
@ -693,14 +693,14 @@ void DoAutoSize(tspritetype* tspr)
case ICON_MICRO_BATTERY: // 1800 case ICON_MICRO_BATTERY: // 1800
break; break;
case ICON_GRENADE_LAUNCHER: // 1817 case ICON_GRENADE_LAUNCHER: // 1817
tspr->SetScale(0.84375, 0.8125); tspr->scale = DVector2(0.84375, 0.8125);
break; break;
case ICON_LG_GRENADE: // 1831 case ICON_LG_GRENADE: // 1831
break; break;
case ICON_LG_MINE: // 1842 case ICON_LG_MINE: // 1842
break; break;
case ICON_RAIL_GUN: // 1811 case ICON_RAIL_GUN: // 1811
tspr->SetScale(0.78125, 0.84375); tspr->scale = DVector2(0.78125, 0.84375);
break; break;
case ICON_RAIL_AMMO: // 1812 case ICON_RAIL_AMMO: // 1812
break; break;
@ -709,21 +709,21 @@ void DoAutoSize(tspritetype* tspr)
case ICON_MEDKIT: // 1803 case ICON_MEDKIT: // 1803
break; break;
case ICON_CHEMBOMB: case ICON_CHEMBOMB:
tspr->SetScale(1, 0.734375); tspr->scale = DVector2(1, 0.734375);
break; break;
case ICON_FLASHBOMB: case ICON_FLASHBOMB:
tspr->SetScale(0.5, 0.53125); tspr->scale = DVector2(0.5, 0.53125);
break; break;
case ICON_NUKE: case ICON_NUKE:
break; break;
case ICON_CALTROPS: case ICON_CALTROPS:
tspr->SetScale(0.578125, 0.46875); tspr->scale = DVector2(0.578125, 0.46875);
break; break;
case ICON_BOOSTER: // 1810 case ICON_BOOSTER: // 1810
tspr->SetScale(0.46875, 0.59375); tspr->scale = DVector2(0.46875, 0.59375);
break; break;
case ICON_HEAT_CARD: // 1819 case ICON_HEAT_CARD: // 1819
tspr->SetScale(0.71875, 0.734375); tspr->scale = DVector2(0.71875, 0.734375);
break; break;
case ICON_REPAIR_KIT: // 1813 case ICON_REPAIR_KIT: // 1813
break; break;
@ -736,7 +736,7 @@ void DoAutoSize(tspritetype* tspr)
case ICON_CLOAK: // 1826 case ICON_CLOAK: // 1826
break; break;
case ICON_NIGHT_VISION: // 3031 case ICON_NIGHT_VISION: // 3031
tspr->SetScale(0.921875, 1.109375); tspr->scale = DVector2(0.921875, 1.109375);
break; break;
case ICON_NAPALM: // 3046 case ICON_NAPALM: // 3046
break; break;
@ -749,7 +749,7 @@ void DoAutoSize(tspritetype* tspr)
case ICON_GRENADE: // 3059 case ICON_GRENADE: // 3059
break; break;
case ICON_ARMOR: // 3030 case ICON_ARMOR: // 3030
tspr->SetScale(1.28125, 1.3125); tspr->scale = DVector2(1.28125, 1.3125);
break; break;
case BLUE_KEY: // 1766 case BLUE_KEY: // 1766
break; break;
@ -763,17 +763,17 @@ void DoAutoSize(tspritetype* tspr)
case RED_CARD: case RED_CARD:
case GREEN_CARD: case GREEN_CARD:
case YELLOW_CARD: case YELLOW_CARD:
tspr->SetScale(0.5625, 0.5155625); tspr->scale = DVector2(0.5625, 0.5155625);
break; break;
case GOLD_SKELKEY: case GOLD_SKELKEY:
case SILVER_SKELKEY: case SILVER_SKELKEY:
case BRONZE_SKELKEY: case BRONZE_SKELKEY:
case RED_SKELKEY: case RED_SKELKEY:
tspr->SetScale(0.609375, 0.703125); tspr->scale = DVector2(0.609375, 0.703125);
break; break;
case SKEL_LOCKED: case SKEL_LOCKED:
case SKEL_UNLOCKED: case SKEL_UNLOCKED:
tspr->SetScale(0.734375, 0.625); tspr->scale = DVector2(0.734375, 0.625);
break; break;
case RAMCARD_LOCKED: case RAMCARD_LOCKED:
case RAMCARD_UNLOCKED: case RAMCARD_UNLOCKED:

View file

@ -459,7 +459,7 @@ int DoBloodSpray(DSWActor* actor)
actor->vel.X = 0; actor->vel.X = 0;
actor->user.change.X = actor->user.change.Y = 0; actor->user.change.X = actor->user.change.Y = 0;
double scale = (70 - RandomRange(25)) * REPEAT_SCALE; double scale = (70 - RandomRange(25)) * REPEAT_SCALE;
actor->spr.SetScale(scale, scale); actor->spr.scale = DVector2(scale, scale);
actor->spr.pos.XY() = bldActor->spr.pos.XY(); actor->spr.pos.XY() = bldActor->spr.pos.XY();
// !FRANK! bit of a hack // !FRANK! bit of a hack
@ -953,7 +953,7 @@ int DoChemBomb(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->opos = actor->opos; actorNew->opos = actor->opos;
// !Frank - dont do translucent // !Frank - dont do translucent
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -1188,7 +1188,7 @@ int SpawnRadiationCloud(DSWActor* actor)
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->user.WaitTics = 1 * 120; actorNew->user.WaitTics = 1 * 120;
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->copy_clipdist(actor); actorNew->copy_clipdist(actor);
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -1273,7 +1273,7 @@ int PlayerInitChemBomb(PLAYER* pp)
actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); actorNew->user.Flags |= (SPR_XFLIP_TOGGLE);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->user.WeaponNum = plActor->user.WeaponNum; actorNew->user.WeaponNum = plActor->user.WeaponNum;
actorNew->user.Radius = 200; actorNew->user.Radius = 200;
@ -1337,7 +1337,7 @@ int InitSpriteChemBomb(DSWActor* actor)
actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); actorNew->user.Flags |= (SPR_XFLIP_TOGGLE);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->user.WeaponNum = actor->user.WeaponNum; actorNew->user.WeaponNum = actor->user.WeaponNum;
actorNew->user.Radius = 200; actorNew->user.Radius = 200;
@ -1374,7 +1374,7 @@ int InitChemBomb(DSWActor* actor)
actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); actorNew->user.Flags |= (SPR_XFLIP_TOGGLE);
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->user.Radius = 200; actorNew->user.Radius = 200;
actorNew->user.ceiling_dist = 3; actorNew->user.ceiling_dist = 3;
@ -1593,7 +1593,7 @@ void SpawnFlashBombOnActor(DSWActor* actor)
if (actor != nullptr) if (actor != nullptr)
actor->user.flameActor = actorNew; actor->user.flameActor = actorNew;
actorNew->spr.SetScale(0.25, 0.25); actorNew->spr.scale = DVector2(0.25, 0.25);
if (actor->user.flameActor != nullptr) if (actor->user.flameActor != nullptr)
{ {
@ -1644,7 +1644,7 @@ int PlayerInitCaltrops(PLAYER* pp)
actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); actorNew->user.Flags |= (SPR_XFLIP_TOGGLE);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->user.WeaponNum = plActor->user.WeaponNum; actorNew->user.WeaponNum = plActor->user.WeaponNum;
actorNew->user.Radius = 200; actorNew->user.Radius = 200;
@ -1694,7 +1694,7 @@ int InitCaltrops(DSWActor* actor)
actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); actorNew->user.Flags |= (SPR_XFLIP_TOGGLE);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
// !FRANK - clipbox must be <= weapon otherwise can clip thru walls // !FRANK - clipbox must be <= weapon otherwise can clip thru walls
actorNew->copy_clipdist(actor); actorNew->copy_clipdist(actor);
@ -1733,7 +1733,7 @@ int InitPhosphorus(DSWActor* actor)
// actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT|CSTAT_SPRITE_YCENTER); // actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT|CSTAT_SPRITE_YCENTER);
actorNew->spr.shade = -128; actorNew->spr.shade = -128;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
// !FRANK - clipbox must be <= weapon otherwise can clip thru walls // !FRANK - clipbox must be <= weapon otherwise can clip thru walls
if (actor->clipdist > 0) if (actor->clipdist > 0)
@ -2228,7 +2228,7 @@ int SpawnShell(DSWActor* actor, int ShellNum)
// Set the shell number // Set the shell number
actorNew->user.ShellNum = ShellCount; actorNew->user.ShellNum = ShellCount;
actorNew->spr.SetScale(0.203125, 0.203125); actorNew->spr.scale = DVector2(0.203125, 0.203125);
break; break;
case SHOT_SHELL: case SHOT_SHELL:
actorNew->spr.pos.Z -= 13; actorNew->spr.pos.Z -= 13;
@ -2242,7 +2242,7 @@ int SpawnShell(DSWActor* actor, int ShellNum)
// Set the shell number // Set the shell number
actorNew->user.ShellNum = ShellCount; actorNew->user.ShellNum = ShellCount;
actorNew->spr.SetScale(0.28125, 0.28125); actorNew->spr.scale = DVector2(0.28125, 0.28125);
break; break;
} }

View file

@ -474,7 +474,7 @@ int SetupLava(DSWActor* actor)
actor->user.Rot = sg_LavaRun; actor->user.Rot = sg_LavaRun;
EnemyDefaults(actor, &LavaActionSet, &LavaPersonality); EnemyDefaults(actor, &LavaActionSet, &LavaPersonality);
actor->spr.SetScale(1.71875, 1.71875); actor->spr.scale = DVector2(1.71875, 1.71875);
actor->clipdist = 32; actor->clipdist = 32;
actor->user.Flags |= (SPR_XFLIP_TOGGLE|SPR_ELECTRO_TOLERANT); actor->user.Flags |= (SPR_XFLIP_TOGGLE|SPR_ELECTRO_TOLERANT);

View file

@ -135,7 +135,7 @@ int SetupToiletGirl(DSWActor* actor)
actor->user.Rot = 0; actor->user.Rot = 0;
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.5, 0.5); actor->spr.scale = DVector2(0.5, 0.5);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->spr.lotag = TOILETGIRL_R0; actor->spr.lotag = TOILETGIRL_R0;
@ -390,7 +390,7 @@ int SetupWashGirl(DSWActor* actor)
actor->user.Rot = 0; actor->user.Rot = 0;
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.4374, 0.375); actor->spr.scale = DVector2(0.4374, 0.375);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->spr.lotag = WASHGIRL_R0; actor->spr.lotag = WASHGIRL_R0;
@ -620,7 +620,7 @@ int SetupTrashCan(DSWActor* actor)
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.71875, 0.65625); actor->spr.scale = DVector2(0.71875, 0.65625);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->user.ID = TRASHCAN; actor->user.ID = TRASHCAN;
@ -1295,7 +1295,7 @@ int SetupCarGirl(DSWActor* actor)
actor->user.Rot = 0; actor->user.Rot = 0;
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.453125, 0.390625); actor->spr.scale = DVector2(0.453125, 0.390625);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->spr.lotag = CARGIRL_R0; actor->spr.lotag = CARGIRL_R0;
@ -1530,7 +1530,7 @@ int SetupMechanicGirl(DSWActor* actor)
actor->user.Rot = 0; actor->user.Rot = 0;
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.421875, 0.40625); actor->spr.scale = DVector2(0.421875, 0.40625);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->spr.lotag = MECHANICGIRL_R0; actor->spr.lotag = MECHANICGIRL_R0;
@ -1764,7 +1764,7 @@ int SetupSailorGirl(DSWActor* actor)
actor->user.Rot = 0; actor->user.Rot = 0;
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.4375, 0.40625); actor->spr.scale = DVector2(0.4375, 0.40625);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->spr.lotag = SAILORGIRL_R0; actor->spr.lotag = SAILORGIRL_R0;
@ -1993,7 +1993,7 @@ int SetupPruneGirl(DSWActor* actor)
actor->user.Rot = 0; actor->user.Rot = 0;
actor->user.RotNum = 0; actor->user.RotNum = 0;
actor->spr.SetScale(0.515625, 0.4375); actor->spr.scale = DVector2(0.515625, 0.4375);
actor->vel.X = 0; actor->vel.X = 0;
actor->vel.Z = 0; actor->vel.Z = 0;
actor->spr.lotag = PRUNEGIRL_R0; actor->spr.lotag = PRUNEGIRL_R0;

View file

@ -1838,7 +1838,7 @@ int SetupNinja(DSWActor* actor)
actor->user.StateEnd = s_NinjaDie; actor->user.StateEnd = s_NinjaDie;
actor->user.Rot = sg_NinjaRun; actor->user.Rot = sg_NinjaRun;
actor->spr.SetScale(0.71875, 0.71875); actor->spr.scale = DVector2(0.71875, 0.71875);
if (actor->spr.pal == PALETTE_PLAYER5) if (actor->spr.pal == PALETTE_PLAYER5)
{ {
@ -2418,7 +2418,7 @@ void InitPlayerSprite(PLAYER* pp)
actor->spr.shade = -60; // was 15 actor->spr.shade = -60; // was 15
actor->clipdist = 16; actor->clipdist = 16;
actor->spr.SetScale(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_YREPEAT); actor->spr.scale = DVector2(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_YREPEAT);
actor->spr.pal = PALETTE_PLAYER0 + pp->pnum; actor->spr.pal = PALETTE_PLAYER0 + pp->pnum;
actor->user.spal = actor->spr.pal; actor->user.spal = actor->spr.pal;

View file

@ -1350,7 +1350,7 @@ void DoSpawnTeleporterEffect(DSWActor* actor)
SetActorZ(effectActor, effectActor->spr.pos); SetActorZ(effectActor, effectActor->spr.pos);
effectActor->spr.shade = -40; effectActor->spr.shade = -40;
effectActor->spr.SetScale(0.65625, 0.65625); effectActor->spr.scale = DVector2(0.65625, 0.65625);
effectActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); effectActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
effectActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); effectActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -1372,7 +1372,7 @@ void DoSpawnTeleporterEffectPlace(DSWActor* actor)
SetActorZ(effectActor, effectActor->spr.pos); SetActorZ(effectActor, effectActor->spr.pos);
effectActor->spr.shade = -40; effectActor->spr.shade = -40;
effectActor->spr.SetScale(0.65625, 0.65625); effectActor->spr.scale = DVector2(0.65625, 0.65625);
effectActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); effectActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
effectActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); effectActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -5950,7 +5950,7 @@ void DoPlayerBeginDie(PLAYER* pp)
plActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); plActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
NewStateGroup(pp->actor, sg_PlayerHeadFly); NewStateGroup(pp->actor, sg_PlayerHeadFly);
plActor->user.ID = NINJA_Head_R0; plActor->user.ID = NINJA_Head_R0;
plActor->spr.SetScale(0.75, 0.75); plActor->spr.scale = DVector2(0.75, 0.75);
// Blood fountains // Blood fountains
InitBloodSpray(pp->actor,true,105); InitBloodSpray(pp->actor,true,105);
break; break;
@ -5964,7 +5964,7 @@ void DoPlayerBeginDie(PLAYER* pp)
plActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); plActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
NewStateGroup(pp->actor, sg_PlayerHeadFly); NewStateGroup(pp->actor, sg_PlayerHeadFly);
plActor->user.ID = NINJA_Head_R0; plActor->user.ID = NINJA_Head_R0;
plActor->spr.SetScale(0.75, 0.75); plActor->spr.scale = DVector2(0.75, 0.75);
// Blood fountains // Blood fountains
InitBloodSpray(pp->actor,true,-1); InitBloodSpray(pp->actor,true,-1);
InitBloodSpray(pp->actor,true,-1); InitBloodSpray(pp->actor,true,-1);
@ -5981,7 +5981,7 @@ void DoPlayerBeginDie(PLAYER* pp)
plActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); plActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
NewStateGroup(pp->actor, sg_PlayerHeadFly); NewStateGroup(pp->actor, sg_PlayerHeadFly);
plActor->user.ID = NINJA_Head_R0; plActor->user.ID = NINJA_Head_R0;
plActor->spr.SetScale(0.75, 0.75); plActor->spr.scale = DVector2(0.75, 0.75);
// Blood fountains // Blood fountains
InitBloodSpray(pp->actor,true,105); InitBloodSpray(pp->actor,true,105);
break; break;
@ -6130,7 +6130,7 @@ void DoPlayerDeathCheckKeys(PLAYER* pp)
NewStateGroup(plActor, plActor->user.ActorActionSet->Stand); NewStateGroup(plActor, plActor->user.ActorActionSet->Stand);
plActor->spr.picnum = plActor->user.State->Pic; plActor->spr.picnum = plActor->user.State->Pic;
plActor->spr.picnum = plActor->user.State->Pic; plActor->spr.picnum = plActor->user.State->Pic;
plActor->spr.SetScale(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_XREPEAT); plActor->spr.scale = DVector2(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_XREPEAT);
plActor->spr.cstat &= ~(CSTAT_SPRITE_YCENTER); plActor->spr.cstat &= ~(CSTAT_SPRITE_YCENTER);
plActor->spr.pos = pp->pos.plusZ(PLAYER_HEIGHTF); plActor->spr.pos = pp->pos.plusZ(PLAYER_HEIGHTF);
plActor->spr.angle = pp->angle.ang; plActor->spr.angle = pp->angle.ang;
@ -6150,7 +6150,7 @@ void DoPlayerDeathCheckKeys(PLAYER* pp)
plActor->spr.cstat &= ~(CSTAT_SPRITE_YCENTER); plActor->spr.cstat &= ~(CSTAT_SPRITE_YCENTER);
plActor->spr.cstat |= (CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); plActor->spr.cstat |= (CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
pp->input.actions |= SB_CENTERVIEW; pp->input.actions |= SB_CENTERVIEW;
plActor->spr.SetScale(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_YREPEAT); plActor->spr.scale = DVector2(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_YREPEAT);
pp->horizon.horiz = nullAngle; pp->horizon.horiz = nullAngle;
DoPlayerResetMovement(pp); DoPlayerResetMovement(pp);

View file

@ -835,12 +835,12 @@ int SetupRipper(DSWActor* actor)
DoActorSetSpeed(actor, FAST_SPEED); DoActorSetSpeed(actor, FAST_SPEED);
actor->user.StateEnd = s_RipperDie; actor->user.StateEnd = s_RipperDie;
actor->user.Rot = sg_RipperRun; actor->user.Rot = sg_RipperRun;
actor->spr.SetScale(1, 1); actor->spr.scale = DVector2(1, 1);
if (actor->spr.pal == PALETTE_BROWN_RIPPER) if (actor->spr.pal == PALETTE_BROWN_RIPPER)
{ {
EnemyDefaults(actor, &RipperBrownActionSet, &RipperPersonality); EnemyDefaults(actor, &RipperBrownActionSet, &RipperPersonality);
actor->spr.SetScale(1.65625, 1.40625); actor->spr.scale = DVector2(1.65625, 1.40625);
if (!(actor->spr.cstat & CSTAT_SPRITE_RESTORE)) if (!(actor->spr.cstat & CSTAT_SPRITE_RESTORE))
actor->user.Health = HEALTH_MOMMA_RIPPER; actor->user.Health = HEALTH_MOMMA_RIPPER;
@ -1233,7 +1233,7 @@ void RipperHatch(DSWActor* actor)
auto actorNew = insertActor(actor->sector(), STAT_DEFAULT); auto actorNew = insertActor(actor->sector(), STAT_DEFAULT);
ClearOwner(actorNew); ClearOwner(actorNew);
actorNew->spr.pos = actor->spr.pos; actorNew->spr.pos = actor->spr.pos;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.angle = RandomAngle(); actorNew->spr.angle = RandomAngle();
actorNew->spr.pal = 0; actorNew->spr.pal = 0;
SetupRipper(actorNew); SetupRipper(actorNew);

View file

@ -904,7 +904,7 @@ int SetupRipper2(DSWActor* actor)
actor->user.StateEnd = s_Ripper2Die; actor->user.StateEnd = s_Ripper2Die;
actor->user.Rot = sg_Ripper2Run; actor->user.Rot = sg_Ripper2Run;
actor->clipdist = 32; // This actor is bigger, needs bigger box. actor->clipdist = 32; // This actor is bigger, needs bigger box.
actor->spr.SetScale(0.859375, 0.859375); actor->spr.scale = DVector2(0.859375, 0.859375);
if (actor->spr.pal == PALETTE_BROWN_RIPPER) if (actor->spr.pal == PALETTE_BROWN_RIPPER)
{ {
@ -1242,7 +1242,7 @@ void Ripper2Hatch(DSWActor* actor)
ClearOwner(actorNew); ClearOwner(actorNew);
actorNew->spr.pos = actor->spr.pos; actorNew->spr.pos = actor->spr.pos;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.angle = RandomAngle(); actorNew->spr.angle = RandomAngle();
actorNew->spr.pal = 0; actorNew->spr.pal = 0;
actorNew->spr.shade = -10; actorNew->spr.shade = -10;

View file

@ -718,11 +718,11 @@ int SetupSerp(DSWActor* actor)
if (actor->spr.pal == 16) if (actor->spr.pal == 16)
{ {
actor->user.Health = 1000; actor->user.Health = 1000;
actor->spr.SetScale(1.15625, 1.15625); actor->spr.scale = DVector2(1.15625, 1.15625);
} }
else else
{ {
actor->spr.SetScale(1.5625, 2); actor->spr.scale = DVector2(1.5625, 2);
} }
actor->clipdist = 32; actor->clipdist = 32;

View file

@ -927,7 +927,7 @@ DSWActor* SpawnActor(int stat, int id, STATE* state, sectortype* sect, const DVe
PicAnimOff(spawnedActor->spr.picnum); PicAnimOff(spawnedActor->spr.picnum);
} }
spawnedActor->spr.SetScale(1, 1); spawnedActor->spr.scale = DVector2(1, 1);
spawnedActor->spr.angle = init_ang; spawnedActor->spr.angle = init_ang;
spawnedActor->vel.X = vel; spawnedActor->vel.X = vel;
@ -2639,7 +2639,7 @@ void SpriteSetup(void)
SpawnUser(actor, ST1, nullptr); SpawnUser(actor, ST1, nullptr);
if (actor->spr.scale.X == 1 && actor->spr.scale.Y == 1) // clear default scale. if (actor->spr.scale.X == 1 && actor->spr.scale.Y == 1) // clear default scale.
actor->spr.SetScale(0, 0); actor->spr.scale = DVector2(0, 0);
change_actor_stat(actor, STAT_SPAWN_SPOT); change_actor_stat(actor, STAT_SPAWN_SPOT);
break; break;
@ -5004,7 +5004,7 @@ int DoSpawnItemTeleporterEffect(DSWActor* actor)
auto effect = SpawnActor(STAT_MISSILE, 0, s_TeleportEffect, actor->sector(), actor->spr.pos.plusZ(-12), actor->spr.angle); auto effect = SpawnActor(STAT_MISSILE, 0, s_TeleportEffect, actor->sector(), actor->spr.pos.plusZ(-12), actor->spr.angle);
effect->spr.shade = -40; effect->spr.shade = -40;
effect->spr.SetScale(0.5625, 0.5625); effect->spr.scale = DVector2(0.5625, 0.5625);
effect->spr.cstat |= CSTAT_SPRITE_YCENTER; effect->spr.cstat |= CSTAT_SPRITE_YCENTER;
effect->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); effect->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
return 0; return 0;

View file

@ -628,13 +628,13 @@ int SetupSumo(DSWActor* actor)
if (actor->spr.pal == 16) if (actor->spr.pal == 16)
{ {
// Mini Sumo // Mini Sumo
actor->spr.SetScale(0.671875, 0.453125); actor->spr.scale = DVector2(0.671875, 0.453125);
actor->user.ActorActionSet = &MiniSumoActionSet; actor->user.ActorActionSet = &MiniSumoActionSet;
actor->user.Health = 500; actor->user.Health = 500;
} }
else else
{ {
actor->spr.SetScale(1.796875, 1.171875); actor->spr.scale = DVector2(1.796875, 1.171875);
} }
//actor->user.Flags |= (SPR_XFLIP_TOGGLE); //actor->user.Flags |= (SPR_XFLIP_TOGGLE);

View file

@ -3419,7 +3419,7 @@ AutoShrap:
{ {
auto spnum = SpawnLargeExp(parentActor); auto spnum = SpawnLargeExp(parentActor);
double size = spnum->spr.scale.X + shrap_delta_size * REPEAT_SCALE; double size = spnum->spr.scale.X + shrap_delta_size * REPEAT_SCALE;
spnum->spr.SetScale(size, size); spnum->spr.scale = DVector2(size, size);
return false; return false;
} }
@ -3428,7 +3428,7 @@ AutoShrap:
{ {
auto spnum = SpawnLargeExp(parentActor); auto spnum = SpawnLargeExp(parentActor);
double size = spnum->spr.scale.X + shrap_delta_size * REPEAT_SCALE; double size = spnum->spr.scale.X + shrap_delta_size * REPEAT_SCALE;
spnum->spr.SetScale(size, size); spnum->spr.scale = DVector2(size, size);
InitPhosphorus(spnum); InitPhosphorus(spnum);
@ -3752,7 +3752,7 @@ AutoShrap:
} }
actor->spr.shade = int8_t(shrap_shade); actor->spr.shade = int8_t(shrap_shade);
actor->spr.SetScale(shrap_xsize * REPEAT_SCALE, shrap_xsize* REPEAT_SCALE); actor->spr.scale = DVector2(shrap_xsize * REPEAT_SCALE, shrap_xsize* REPEAT_SCALE);
actor->clipdist = 1; actor->clipdist = 1;
if (ShrapOwner != nullptr) if (ShrapOwner != nullptr)
@ -4130,7 +4130,7 @@ int SpawnBlood(DSWActor* actor, DSWActor* weapActor, DAngle hit_angle, const DVe
// Don't do central blood splats for every hitscan // Don't do central blood splats for every hitscan
if (RANDOM_P2(1024) < 950) if (RANDOM_P2(1024) < 950)
{ {
actorNew->spr.SetScale(0, 0); actorNew->spr.scale = DVector2(0, 0);
} }
if (RANDOM_P2(1024) < 512) if (RANDOM_P2(1024) < 512)
actorNew->spr.cstat |= (CSTAT_SPRITE_XFLIP); actorNew->spr.cstat |= (CSTAT_SPRITE_XFLIP);
@ -4153,7 +4153,7 @@ int SpawnBlood(DSWActor* actor, DSWActor* weapActor, DAngle hit_angle, const DVe
actorNew->user.Flags |= (SPR_BOUNCE); actorNew->user.Flags |= (SPR_BOUNCE);
actorNew->spr.shade = int8_t(shrap_shade); actorNew->spr.shade = int8_t(shrap_shade);
actorNew->spr.SetScale(shrap_xsize* REPEAT_SCALE, shrap_xsize* REPEAT_SCALE); actorNew->spr.scale = DVector2(shrap_xsize* REPEAT_SCALE, shrap_xsize* REPEAT_SCALE);
actorNew->clipdist = 1; actorNew->clipdist = 1;
actorNew->spr.pal = actorNew->user.spal = uint8_t(shrap_pal); actorNew->spr.pal = actorNew->user.spal = uint8_t(shrap_pal);
@ -8595,7 +8595,7 @@ int DoGrenade(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->opos = actor->opos; actorNew->opos = actor->opos;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -9233,11 +9233,11 @@ int DoEMP(DSWActor* actor)
if (RandomRange(1000) > 500) if (RandomRange(1000) > 500)
{ {
actor->spr.SetScale(0.8125, 0.15626); actor->spr.scale = DVector2(0.8125, 0.15626);
} }
else else
{ {
actor->spr.SetScale(0.125, 0.59375); actor->spr.scale = DVector2(0.125, 0.59375);
} }
if (actor->user.coll.type != kHitNone) if (actor->user.coll.type != kHitNone)
@ -9280,11 +9280,11 @@ int DoEMPBurst(DSWActor* actor)
if (RandomRange(1000) > 500) if (RandomRange(1000) > 500)
{ {
actor->spr.SetScale(0.8125, 0.15626); actor->spr.scale = DVector2(0.8125, 0.15626);
} }
else else
{ {
actor->spr.SetScale(0.125, 0.59375); actor->spr.scale = DVector2(0.125, 0.59375);
} }
if ((RANDOM_P2(1024<<6)>>6) < 700) if ((RANDOM_P2(1024<<6)>>6) < 700)
@ -9392,7 +9392,7 @@ int DoLaser(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, PUFF, s_LaserPuff, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_MISSILE, PUFF, s_LaserPuff, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.25, 0.25); actorNew->spr.scale = DVector2(0.25, 0.25);
actorNew->spr.pal = actorNew->user.spal = PALETTE_RED_LIGHTING; actorNew->spr.pal = actorNew->user.spal = PALETTE_RED_LIGHTING;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -9495,7 +9495,7 @@ int DoRail(DSWActor* actor)
NewStateGroup(actorNew, sg_RailPuff); NewStateGroup(actorNew, sg_RailPuff);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.15625, 0.15625); actorNew->spr.scale = DVector2(0.15625, 0.15625);
actorNew->opos = actor->opos; actorNew->opos = actor->opos;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -9592,7 +9592,7 @@ int DoRocket(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->opos = actor->opos; actorNew->opos = actor->opos;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -9648,7 +9648,7 @@ int SpawnExtraMicroMini(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Micro[0][0], actor->sector(), actor->spr.pos, actor->spr.angle, actor->vel.X); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Micro[0][0], actor->sector(), actor->spr.pos, actor->spr.angle, actor->vel.X);
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.SetScale(actor->spr.scale.X, actor->spr.scale.X); actorNew->spr.scale = DVector2(actor->spr.scale.X, actor->spr.scale.X);
actorNew->spr.shade = actor->spr.shade; actorNew->spr.shade = actor->spr.shade;
actorNew->copy_clipdist(actor); actorNew->copy_clipdist(actor);
@ -9692,7 +9692,7 @@ int DoMicro(DSWActor* actor)
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.34375, 0.3125); actorNew->spr.scale = DVector2(0.34375, 0.3125);
actorNew->opos = actor->opos; actorNew->opos = actor->opos;
actorNew->vel.Z = -actor->vel.Z; actorNew->vel.Z = -actor->vel.Z;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -9710,7 +9710,7 @@ int DoMicro(DSWActor* actor)
{ {
SetActorZ(actorNew, actorNew->spr.pos); SetActorZ(actorNew, actorNew->spr.pos);
NewStateGroup(actor, &sg_MicroMini[0]); NewStateGroup(actor, &sg_MicroMini[0]);
actor->spr.SetScale(0.15625, 0.15625); actor->spr.scale = DVector2(0.15625, 0.15625);
actor->spr.cstat &= ~(CSTAT_SPRITE_INVISIBLE); actor->spr.cstat &= ~(CSTAT_SPRITE_INVISIBLE);
SpawnExtraMicroMini(actor); SpawnExtraMicroMini(actor);
return true; return true;
@ -9762,7 +9762,7 @@ int DoUziBullet(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT);
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
actorNew->clipdist = 8; actorNew->clipdist = 8;
@ -9772,7 +9772,7 @@ int DoUziBullet(DSWActor* actor)
{ {
actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, actorNew->sector(), actorNew->spr.pos, nullAngle, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, actorNew->sector(), actorNew->spr.pos, nullAngle, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT); actorNew->spr.scale = DVector2(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT);
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -10040,7 +10040,7 @@ void SpawnFireballFlames(DSWActor* actor, DSWActor* enemyActor)
if (enemyActor != nullptr) if (enemyActor != nullptr)
enemyActor->user.flameActor = actorNew; enemyActor->user.flameActor = actorNew;
actorNew->spr.SetScale(0.25, 0.25); actorNew->spr.scale = DVector2(0.25, 0.25);
if (enemyActor != nullptr) if (enemyActor != nullptr)
{ {
// large flame for trees and such // large flame for trees and such
@ -10103,7 +10103,7 @@ int SpawnBreakFlames(DSWActor* actor)
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.25, 0.25); actorNew->spr.scale = DVector2(0.25, 0.25);
actorNew->user.Counter = 48; // max flame size actorNew->user.Counter = 48; // max flame size
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
@ -10143,7 +10143,7 @@ void SpawnBreakStaticFlames(DSWActor* actor)
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.pal = actorNew->user.spal = actor->user.spal; actorNew->spr.pal = actorNew->user.spal = actor->user.spal;
@ -10174,7 +10174,7 @@ void SpawnFireballExp(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, FIREBALL_EXP, s_FireballExp, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_MISSILE, FIREBALL_EXP, s_FireballExp, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.pal = actorNew->user.spal = actor->user.spal; actorNew->spr.pal = actorNew->user.spal = actor->user.spal;
@ -10211,7 +10211,7 @@ void SpawnGoroFireballExp(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, 0, s_FireballExp, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_MISSILE, 0, s_FireballExp, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.25, 0.25); actorNew->spr.scale = DVector2(0.25, 0.25);
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.pal = actorNew->user.spal = actor->user.spal; actorNew->spr.pal = actorNew->user.spal = actor->user.spal;
@ -10246,7 +10246,7 @@ void SpawnBoltExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(1.1825, 1.1825); expActor->spr.scale = DVector2(1.1825, 1.1825);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
if (RANDOM_P2(1024) > 512) if (RANDOM_P2(1024) > 512)
@ -10305,7 +10305,7 @@ void SpawnTankShellExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(1.5, 1.5); expActor->spr.scale = DVector2(1.5, 1.5);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
if (RANDOM_P2(1024) > 512) if (RANDOM_P2(1024) > 512)
@ -10327,7 +10327,7 @@ void SpawnNuclearSecondaryExp(DSWActor* actor, DAngle ang)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -128; expActor->spr.shade = -128;
expActor->spr.SetScale(3.40625, 2.375); expActor->spr.scale = DVector2(3.40625, 2.375);
expActor->copy_clipdist(actor); expActor->copy_clipdist(actor);
expActor->user.ceiling_dist = (16); expActor->user.ceiling_dist = (16);
expActor->user.floor_dist = (16); expActor->user.floor_dist = (16);
@ -10389,7 +10389,7 @@ void SpawnNuclearExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(own, expActor); SetOwner(own, expActor);
expActor->spr.shade = -128; expActor->spr.shade = -128;
expActor->spr.SetScale(4, 4); expActor->spr.scale = DVector2(4, 4);
expActor->copy_clipdist(actor); expActor->copy_clipdist(actor);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -10403,7 +10403,7 @@ void SpawnNuclearExp(DSWActor* actor)
SetOwner(own, expActor); SetOwner(own, expActor);
expActor->spr.shade = -128; expActor->spr.shade = -128;
expActor->spr.SetScale(3.40625, 2.375); expActor->spr.scale = DVector2(3.40625, 2.375);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
if (RANDOM_P2(1024) > 512) if (RANDOM_P2(1024) > 512)
@ -10453,7 +10453,7 @@ void SpawnTracerExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(0.0625, 0.0625); expActor->spr.scale = DVector2(0.0625, 0.0625);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -10486,7 +10486,7 @@ void SpawnMicroExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(0.5, 0.5); expActor->spr.scale = DVector2(0.5, 0.5);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
if (RANDOM_P2(1024) > 512) if (RANDOM_P2(1024) > 512)
@ -10556,11 +10556,11 @@ void SpawnBigGunFlames(DSWActor* actor, DSWActor* Operator, SECTOR_OBJECT* sop,
expActor->spr.shade = -40; expActor->spr.shade = -40;
if (smallflames) if (smallflames)
{ {
expActor->spr.SetScale(0.1875, 0.1875); expActor->spr.scale = DVector2(0.1875, 0.1875);
} }
else else
{ {
expActor->spr.SetScale(0.53125, 0.53125); expActor->spr.scale = DVector2(0.53125, 0.53125);
} }
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -10614,7 +10614,7 @@ void SpawnGrenadeSecondaryExp(DSWActor* actor, DAngle ang)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(0.5, 0.5); expActor->spr.scale = DVector2(0.5, 0.5);
expActor->copy_clipdist(actor); expActor->copy_clipdist(actor);
expActor->user.ceiling_dist = (16); expActor->user.ceiling_dist = (16);
expActor->user.floor_dist = (16); expActor->user.floor_dist = (16);
@ -10688,7 +10688,7 @@ void SpawnGrenadeExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(1.5, 1.5); expActor->spr.scale = DVector2(1.5, 1.5);
expActor->copy_clipdist(actor); expActor->copy_clipdist(actor);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -10778,7 +10778,7 @@ void SpawnMineExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(GetOwner(actor), expActor); SetOwner(GetOwner(actor), expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(1.6875, 1.6875); expActor->spr.scale = DVector2(1.6875, 1.6875);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
expActor->user.Radius = DamageData[DMG_MINE_EXP].radius; expActor->user.Radius = DamageData[DMG_MINE_EXP].radius;
@ -10832,7 +10832,7 @@ DSWActor* SpawnSectorExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(1.40625, 1.40625); expActor->spr.scale = DVector2(1.40625, 1.40625);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
expActor->user.Radius = DamageData[DMG_SECTOR_EXP].radius; expActor->user.Radius = DamageData[DMG_SECTOR_EXP].radius;
@ -10853,7 +10853,7 @@ DSWActor* SpawnLargeExp(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(1.40625, 1.40625); expActor->spr.scale = DVector2(1.40625, 1.40625);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); expActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
expActor->user.Radius = DamageData[DMG_SECTOR_EXP].radius; expActor->user.Radius = DamageData[DMG_SECTOR_EXP].radius;
@ -10897,12 +10897,12 @@ void SpawnMeteorExp(DSWActor* actor)
if (actor->spr.scale.Y < 1) if (actor->spr.scale.Y < 1)
{ {
// small // small
expActor->spr.SetScale(1, 1); expActor->spr.scale = DVector2(1, 1);
} }
else else
{ {
// large - boss // large - boss
expActor->spr.SetScale(1.25, 1.25); expActor->spr.scale = DVector2(1.25, 1.25);
} }
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -11177,7 +11177,7 @@ int DoNapalm(DSWActor* actor)
SetOwner(actor, expActor); SetOwner(actor, expActor);
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.cstat = actor->spr.cstat; expActor->spr.cstat = actor->spr.cstat;
expActor->spr.SetScale(0.75, 1); expActor->spr.scale = DVector2(0.75, 1);
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
if (RANDOM_P2(1024) < 512) if (RANDOM_P2(1024) < 512)
expActor->spr.cstat |= (CSTAT_SPRITE_XFLIP); expActor->spr.cstat |= (CSTAT_SPRITE_XFLIP);
@ -11400,7 +11400,7 @@ int DoMirv(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->clipdist = 2; actorNew->clipdist = 2;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -11638,7 +11638,7 @@ void InitSpellRing(PLAYER* pp)
actorNew->vel.X = 31.25; actorNew->vel.X = 31.25;
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->user.pos.Z = 20; actorNew->user.pos.Z = 20;
@ -11811,7 +11811,7 @@ int InitLavaThrow(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(1.125, 1.125); actorNew->spr.scale = DVector2(1.125, 1.125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
@ -11870,7 +11870,7 @@ void InitVulcanBoulder(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
double scale = 0.125 + RandomRange(72) * REPEAT_SCALE; double scale = 0.125 + RandomRange(72) * REPEAT_SCALE;
actorNew->spr.SetScale(scale, scale); actorNew->spr.scale = DVector2(scale, scale);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.angle = nang; actorNew->spr.angle = nang;
actorNew->user.Counter = 0; actorNew->user.Counter = 0;
@ -11937,7 +11937,7 @@ int InitSerpRing(DSWActor* actor)
actorNew->vel.X = 31.25; actorNew->vel.X = 31.25;
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -20; actorNew->spr.shade = -20;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.yint = 2*RINGMOVETICS; actorNew->spr.yint = 2*RINGMOVETICS;
actorNew->vel.Z = 3; actorNew->vel.Z = 3;
actorNew->spr.pal = 0; actorNew->spr.pal = 0;
@ -12020,7 +12020,7 @@ void InitSpellNapalm(PLAYER* pp)
SetOwner(pp->actor, actor); SetOwner(pp->actor, actor);
actor->spr.shade = -40; actor->spr.shade = -40;
actor->spr.SetScale(0.5, 0.5); actor->spr.scale = DVector2(0.5, 0.5);
actor->clipdist = 0; actor->clipdist = 0;
actor->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF; actor->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF;
actor->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actor->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
@ -12096,7 +12096,7 @@ int InitEnemyNapalm(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->clipdist = 0; actorNew->clipdist = 0;
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -12150,7 +12150,7 @@ int InitSpellMirv(PLAYER* pp)
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(1.125, 1.125); actorNew->spr.scale = DVector2(1.125, 1.125);
actorNew->clipdist = 2; actorNew->clipdist = 2;
actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF; actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF;
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
@ -12190,7 +12190,7 @@ int InitEnemyMirv(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(1.125, 1.125); actorNew->spr.scale = DVector2(1.125, 1.125);
actorNew->clipdist = 2; actorNew->clipdist = 2;
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
@ -12607,7 +12607,7 @@ int InitSumoNapalm(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->clipdist = 0; actorNew->clipdist = 0;
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -12663,7 +12663,7 @@ int InitSumoSkull(DSWActor* actor)
actorNew->vel.X = 31.25; actorNew->vel.X = 31.25;
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -20; actorNew->spr.shade = -20;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.pal = 0; actorNew->spr.pal = 0;
// randomize the head turning angle // randomize the head turning angle
@ -13019,7 +13019,7 @@ int InitStar(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, STAR1, s_Star, pp->cursector, pos, pp->angle.ang, STAR_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, STAR1, s_Star, pp->cursector, pos, pp->angle.ang, STAR_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(STAR_REPEAT, STAR_REPEAT); actorNew->spr.scale = DVector2(STAR_REPEAT, STAR_REPEAT);
actorNew->spr.shade = -25; actorNew->spr.shade = -25;
actorNew->clipdist = 2; actorNew->clipdist = 2;
// zvel was overflowing with this calculation - had to move to a local long var // zvel was overflowing with this calculation - had to move to a local long var
@ -13060,7 +13060,7 @@ int InitStar(PLAYER* pp)
auto actorNew2 = SpawnActor(STAT_MISSILE, STAR1, s_Star, pp->cursector,pos, actorNew->spr.angle + dang[i], actorNew->vel.X); auto actorNew2 = SpawnActor(STAT_MISSILE, STAR1, s_Star, pp->cursector,pos, actorNew->spr.angle + dang[i], actorNew->vel.X);
SetOwner(GetOwner(actorNew), actorNew2); SetOwner(GetOwner(actorNew), actorNew2);
actorNew2->spr.SetScale(STAR_REPEAT, STAR_REPEAT); actorNew2->spr.scale = DVector2(STAR_REPEAT, STAR_REPEAT);
actorNew2->spr.shade = actorNew->spr.shade; actorNew2->spr.shade = actorNew->spr.shade;
actorNew2->spr.extra = actorNew->spr.extra; actorNew2->spr.extra = actorNew->spr.extra;
@ -13121,7 +13121,7 @@ void InitHeartAttack(PLAYER* pp)
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.shade = -10; actorNew->spr.shade = -10;
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->clipdist = 0; actorNew->clipdist = 0;
actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF; actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF;
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
@ -13424,7 +13424,7 @@ int InitLaser(PLAYER* pp)
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->clipdist = 4; actorNew->clipdist = 4;
@ -13522,7 +13522,7 @@ int InitRail(PLAYER* pp)
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 17) * 0.5); zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 17) * 0.5);
@ -13595,7 +13595,7 @@ int InitZillaRail(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R1, &s_Rail[0][0], actor->sector(), pos, actor->spr.angle, 75); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R1, &s_Rail[0][0], actor->sector(), pos, actor->spr.angle, 75);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
double zvel = (100 * (HORIZ_MULT+17)) / 256.; double zvel = (100 * (HORIZ_MULT+17)) / 256.;
@ -13686,7 +13686,7 @@ int InitRocket(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], pp->cursector, pos, pp->angle.ang, ROCKET_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], pp->cursector, pos, pp->angle.ang, ROCKET_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(1.40626, 1.40625); actorNew->spr.scale = DVector2(1.40626, 1.40625);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 35) * 0.5); zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 35) * 0.5);
@ -13793,7 +13793,7 @@ int InitBunnyRocket(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R4, &s_BunnyRocket[0][0], pp->cursector, pos, pp->angle.ang, ROCKET_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R4, &s_BunnyRocket[0][0], pp->cursector, pos, pp->angle.ang, ROCKET_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 35) * 0.5); zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 35) * 0.5);
@ -13895,7 +13895,7 @@ int InitNuke(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], pp->cursector, pos, pp->angle.ang, 700/16.); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], pp->cursector, pos, pp->angle.ang, 700/16.);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(2, 2); actorNew->spr.scale = DVector2(2, 2);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 36) * 0.5); zvel = pp->horizon.horiz.Tan() * ((HORIZ_MULT + 36) * 0.5);
actorNew->clipdist = 4; actorNew->clipdist = 4;
@ -13977,7 +13977,7 @@ int InitEnemyNuke(DSWActor* actor)
else else
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(2, 2); actorNew->spr.scale = DVector2(2, 2);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
double zvel = (100 * (HORIZ_MULT-36)) / 256.; // Ugh... double zvel = (100 * (HORIZ_MULT-36)) / 256.; // Ugh...
actorNew->clipdist = 4; actorNew->clipdist = 4;
@ -14076,7 +14076,7 @@ int InitMicro(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Micro[0][0], pp->cursector, pos, angle, 75); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Micro[0][0], pp->cursector, pos, angle, 75);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.375, 0.375); actorNew->spr.scale = DVector2(0.375, 0.375);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF; actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF;
actorNew->clipdist = 4; actorNew->clipdist = 4;
@ -14498,7 +14498,7 @@ int InitSerpSpell(DSWActor* actor)
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
PlaySound(DIGI_SERPMAGICLAUNCH, actor, v3df_none); PlaySound(DIGI_SERPMAGICLAUNCH, actor, v3df_none);
actorNew->user.spal = actorNew->spr.pal = 27; // Bright Green actorNew->user.spal = actorNew->spr.pal = 27; // Bright Green
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->clipdist = 2; actorNew->clipdist = 2;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -14546,7 +14546,7 @@ int SpawnDemonFist(DSWActor* actor)
expActor->spr.hitag = LUMINOUS; //Always full brightness expActor->spr.hitag = LUMINOUS; //Always full brightness
expActor->spr.shade = -40; expActor->spr.shade = -40;
expActor->spr.SetScale(0.5, 0.5); expActor->spr.scale = DVector2(0.5, 0.5);
expActor->user.spal = expActor->spr.pal = 25; expActor->user.spal = expActor->spr.pal = 25;
expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER); expActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -14599,7 +14599,7 @@ int InitSerpMonstSpell(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(1.90625, 1.8125); actorNew->spr.scale = DVector2(1.90625, 1.8125);
actorNew->clipdist = 2; actorNew->clipdist = 2;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -14676,7 +14676,7 @@ int InitEnemyRocket(DSWActor* actor)
else else
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.4375, 0.4375); actorNew->spr.scale = DVector2(0.4375, 0.4375);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
@ -14750,7 +14750,7 @@ int InitEnemyRail(DSWActor* actor)
else else
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
@ -14814,7 +14814,7 @@ int InitZillaRocket(DSWActor* actor)
actor->spr.pos.plusZ(-(ActorSizeZ(actor) * 0.5) - 16), actor->user.targetActor->spr.angle, NINJA_BOLT_VELOCITY); actor->spr.pos.plusZ(-(ActorSizeZ(actor) * 0.5) - 16), actor->user.targetActor->spr.angle, NINJA_BOLT_VELOCITY);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.4375, 0.4375); actorNew->spr.scale = DVector2(0.4375, 0.4375);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
@ -14870,7 +14870,7 @@ int InitEnemyStar(DSWActor* actor)
ActorVectOfMiddle(actor), actor->user.targetActor->spr.angle, NINJA_STAR_VELOCITY); ActorVectOfMiddle(actor), actor->user.targetActor->spr.angle, NINJA_STAR_VELOCITY);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.25, 0.25); actorNew->spr.scale = DVector2(0.25, 0.25);
actorNew->spr.shade = -25; actorNew->spr.shade = -25;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
@ -14905,7 +14905,7 @@ int InitEnemyCrossbow(DSWActor* actor)
ActorVectOfMiddle(actor).plusZ(-14), actor->user.targetActor->spr.angle, 50); ActorVectOfMiddle(actor).plusZ(-14), actor->user.targetActor->spr.angle, 50);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.25, 0.40625); actorNew->spr.scale = DVector2(0.25, 0.40625);
actorNew->spr.shade = -25; actorNew->spr.shade = -25;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
@ -14985,7 +14985,7 @@ int InitCoolgFire(DSWActor* actor)
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.hitag = LUMINOUS; actorNew->spr.hitag = LUMINOUS;
actorNew->spr.SetScale(0.28125, 0.28125); actorNew->spr.scale = DVector2(0.28125, 0.28125);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.angle = actor->spr.angle; actorNew->spr.angle = actor->spr.angle;
@ -15024,7 +15024,7 @@ int DoCoolgDrip(DSWActor* actor)
if (actor->spr.pos.Z > actor->user.loz - actor->user.floor_dist) if (actor->spr.pos.Z > actor->user.loz - actor->user.floor_dist)
{ {
actor->spr.pos.Z = actor->user.loz - actor->user.floor_dist; actor->spr.pos.Z = actor->user.loz - actor->user.floor_dist;
actor->spr.SetScale(0.5, 0.5); actor->spr.scale = DVector2(0.5, 0.5);
ChangeState(actor, s_GoreFloorSplash); ChangeState(actor, s_GoreFloorSplash);
if (actor->user.spal == PALETTE_BLUE_LIGHTING) if (actor->user.spal == PALETTE_BLUE_LIGHTING)
PlaySound(DIGI_DRIP, actor, v3df_none); PlaySound(DIGI_DRIP, actor, v3df_none);
@ -15045,7 +15045,7 @@ int InitCoolgDrip(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, COOLG_DRIP, s_CoolgDrip, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_MISSILE, COOLG_DRIP, s_CoolgDrip, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.3125, 0.3125); actorNew->spr.scale = DVector2(0.3125, 0.3125);
actorNew->spr.shade = -5; actorNew->spr.shade = -5;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 1; actorNew->clipdist = 1;
@ -15084,7 +15084,7 @@ int GenerateDrips(DSWActor* actor)
auto actorNew = SpawnActor(STAT_SHRAP, COOLG_DRIP, s_CoolgDrip, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_SHRAP, COOLG_DRIP, s_CoolgDrip, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.3125, 0.3125); actorNew->spr.scale = DVector2(0.3125, 0.3125);
actorNew->spr.shade = -10; actorNew->spr.shade = -10;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 1; actorNew->clipdist = 1;
@ -15182,7 +15182,7 @@ void InitBoltTrap(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], actor->sector(), actor->spr.pos.plusZ(-ActorSizeZ(actor)), actor->spr.angle, BOLT_TRAP_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], actor->sector(), actor->spr.pos.plusZ(-ActorSizeZ(actor)), actor->spr.angle, BOLT_TRAP_VELOCITY);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -15207,7 +15207,7 @@ void InitSpearTrap(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, CROSSBOLT, &s_CrossBolt[0][0], actor->sector(), ActorVectOfMiddle(actor), actor->spr.angle, 750/16.); auto actorNew = SpawnActor(STAT_MISSILE, CROSSBOLT, &s_CrossBolt[0][0], actor->sector(), ActorVectOfMiddle(actor), actor->spr.angle, 750/16.);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.25, 0.40625); actorNew->spr.scale = DVector2(0.25, 0.40625);
actorNew->spr.shade = -25; actorNew->spr.shade = -25;
actorNew->clipdist = 4; actorNew->clipdist = 4;
@ -15264,7 +15264,7 @@ int InitTracerUzi(PLAYER* pp)
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.15625, 0.15625); actorNew->spr.scale = DVector2(0.15625, 0.15625);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 2; actorNew->clipdist = 2;
@ -15328,7 +15328,7 @@ int InitTracerTurret(DSWActor* actor, DSWActor* Operator, DAngle horiz)
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
if (Operator!= nullptr) if (Operator!= nullptr)
SetOwner(Operator, actorNew); SetOwner(Operator, actorNew);
actorNew->spr.SetScale(0.15625, 0.15625); actorNew->spr.scale = DVector2(0.15625, 0.15625);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 0.5; actorNew->clipdist = 0.5;
@ -15369,7 +15369,7 @@ int InitTracerAutoTurret(DSWActor* actor, const DVector3& change)
auto actorNew = SpawnActor(STAT_MISSILE, 0, s_Tracer, actor->sector(), actor->spr.pos, actor->spr.angle, TRACER_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, 0, s_Tracer, actor->sector(), actor->spr.pos, actor->spr.angle, TRACER_VELOCITY);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.15625, 0.15625); actorNew->spr.scale = DVector2(0.15625, 0.15625);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 0.5; actorNew->clipdist = 0.5;
@ -15429,12 +15429,12 @@ int BulletHitSprite(DSWActor* actor, DSWActor* hitActor, const DVector3& hit_pos
case PACHINKO4: case PACHINKO4:
case 623: case 623:
case ZILLA_RUN_R0: case ZILLA_RUN_R0:
actorNew->spr.SetScale(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT);
if (RANDOM_P2(1024) > 800) if (RANDOM_P2(1024) > 800)
SpawnShrapX(hitActor); SpawnShrapX(hitActor);
break; break;
default: default:
actorNew->spr.SetScale(UZI_SMOKE_REPEAT / 3, UZI_SMOKE_REPEAT / 3); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT / 3, UZI_SMOKE_REPEAT / 3);
actorNew->spr.cstat |= (CSTAT_SPRITE_INVISIBLE); actorNew->spr.cstat |= (CSTAT_SPRITE_INVISIBLE);
//actorNew->user.spal = actorNew->spr.pal = PALETTE_RED_LIGHTING; //actorNew->user.spal = actorNew->spr.pal = PALETTE_RED_LIGHTING;
break; break;
@ -15673,7 +15673,7 @@ int InitUzi(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit.hitSector, hit.hitpos, daang, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit.hitSector, hit.hitpos, daang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.cstat |= (cstat | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (cstat | CSTAT_SPRITE_YCENTER);
actorNew->clipdist = 0.5; actorNew->clipdist = 0.5;
@ -15684,7 +15684,7 @@ int InitUzi(PLAYER* pp)
actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit.hitSector, hit.hitpos, daang, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit.hitSector, hit.hitpos, daang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT); actorNew->spr.scale = DVector2(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->user.spal = actorNew->spr.pal = pal; actorNew->user.spal = actorNew->spr.pal = pal;
actorNew->spr.cstat |= (cstat | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (cstat | CSTAT_SPRITE_YCENTER);
@ -15717,7 +15717,7 @@ int InitTankShell(DSWActor* actor, PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, 0, s_TankShell, actor->sector(), actor->spr.pos, actor->spr.angle, TANK_SHELL_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, 0, s_TankShell, actor->sector(), actor->spr.pos, actor->spr.angle, TANK_SHELL_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.125, 0.125); actorNew->spr.scale = DVector2(0.125, 0.125);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 2; actorNew->clipdist = 2;
@ -15796,7 +15796,7 @@ int InitTurretMicro(DSWActor* actor, PLAYER* pp)
actor->spr.pos.plusZ(10 + RandomRangeF(20)), angle, 75); actor->spr.pos.plusZ(10 + RandomRangeF(20)), angle, 75);
SetOwner(plActor, actorNew); SetOwner(plActor, actorNew);
actorNew->spr.SetScale(0.375, 0.375); actorNew->spr.scale = DVector2(0.375, 0.375);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF - RandomRangeF(8) + 5; actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF - RandomRangeF(8) + 5;
actorNew->clipdist = 4; actorNew->clipdist = 4;
@ -15855,7 +15855,7 @@ int InitTurretRocket(DSWActor* actor, PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], actor->sector(), actor->spr.pos, actor->spr.angle, ROCKET_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, &s_Rocket[0][0], actor->sector(), actor->spr.pos, actor->spr.angle, ROCKET_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 2; actorNew->clipdist = 2;
@ -15894,7 +15894,7 @@ int InitTurretFireball(DSWActor* actor, PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, FIREBALL, s_Fireball, actor->sector(), actor->spr.pos, actor->spr.angle, FIREBALL_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, FIREBALL, s_Fireball, actor->sector(), actor->spr.pos, actor->spr.angle, FIREBALL_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->vel.Z = 0; actorNew->vel.Z = 0;
actorNew->clipdist = 2; actorNew->clipdist = 2;
@ -15941,7 +15941,7 @@ int InitTurretRail(DSWActor* actor, PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R1, &s_Rail[0][0], pp->cursector, actor->spr.pos, actor->spr.angle, 75); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R1, &s_Rail[0][0], pp->cursector, actor->spr.pos, actor->spr.angle, 75);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF; actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF;
@ -15986,7 +15986,7 @@ int InitTurretLaser(DSWActor* actor, PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, s_Laser, pp->cursector, actor->spr.pos, actor->spr.angle, 18.75); auto actorNew = SpawnActor(STAT_MISSILE, BOLT_THINMAN_R0, s_Laser, pp->cursector, actor->spr.pos, actor->spr.angle, 18.75);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.8125, 0.8125); actorNew->spr.scale = DVector2(0.8125, 0.8125);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
// the slower the missile travels the less of a zvel it needs // the slower the missile travels the less of a zvel it needs
@ -16221,7 +16221,7 @@ DSWActor* SpawnBoatSparks(PLAYER* pp, sectortype* hit_sect, walltype* hit_wall,
{ {
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit_sect, hitpos, hit_ang, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SMOKE_REPEAT + 0.1875, UZI_SMOKE_REPEAT + 0.1875); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT + 0.1875, UZI_SMOKE_REPEAT + 0.1875);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
@ -16236,7 +16236,7 @@ DSWActor* SpawnBoatSparks(PLAYER* pp, sectortype* hit_sect, walltype* hit_wall,
actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SPARK_REPEAT + 0.15626, UZI_SPARK_REPEAT + 0.15625); actorNew->spr.scale = DVector2(UZI_SPARK_REPEAT + 0.15626, UZI_SPARK_REPEAT + 0.15625);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT; actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -16263,7 +16263,7 @@ int SpawnSwordSparks(PLAYER* pp, sectortype* hit_sect, walltype* hit_wall, const
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit_sect, hitpos, hit_ang, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.34375, 0.3125); actorNew->spr.scale = DVector2(0.34375, 0.3125);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
@ -16278,7 +16278,7 @@ int SpawnSwordSparks(PLAYER* pp, sectortype* hit_sect, walltype* hit_wall, const
actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(0.34375, 0.3125); actorNew->spr.scale = DVector2(0.34375, 0.3125);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT; actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -16303,7 +16303,7 @@ DSWActor* SpawnTurretSparks(sectortype* hit_sect, walltype* hit_wall, const DVec
{ {
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit_sect, hitpos, hit_ang, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SMOKE_REPEAT + 0.1875, UZI_SMOKE_REPEAT + 0.1875); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT + 0.1875, UZI_SMOKE_REPEAT + 0.1875);
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
@ -16316,7 +16316,7 @@ DSWActor* SpawnTurretSparks(sectortype* hit_sect, walltype* hit_wall, const DVec
actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SPARK_REPEAT + 0.15626, UZI_SPARK_REPEAT + 0.15625); actorNew->spr.scale = DVector2(UZI_SPARK_REPEAT + 0.15626, UZI_SPARK_REPEAT + 0.15625);
actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT; actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -16342,7 +16342,7 @@ DSWActor* SpawnShotgunSparks(PLAYER* pp, sectortype* hit_sect, walltype* hit_wal
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT); actorNew->spr.scale = DVector2(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT; actorNew->user.spal = actorNew->spr.pal = PALETTE_DEFAULT;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -16352,7 +16352,7 @@ DSWActor* SpawnShotgunSparks(PLAYER* pp, sectortype* hit_sect, walltype* hit_wal
HitscanSpriteAdjust(actorNew, hit_wall); HitscanSpriteAdjust(actorNew, hit_wall);
actorNew = SpawnActor(STAT_MISSILE, SHOTGUN_SMOKE, s_ShotgunSmoke, hit_sect, hitpos, hit_ang, 0); actorNew = SpawnActor(STAT_MISSILE, SHOTGUN_SMOKE, s_ShotgunSmoke, hit_sect, hitpos, hit_ang, 0);
actorNew->spr.SetScale(SHOTGUN_SMOKE_REPEAT, SHOTGUN_SMOKE_REPEAT); actorNew->spr.scale = DVector2(SHOTGUN_SMOKE_REPEAT, SHOTGUN_SMOKE_REPEAT);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_YCENTER);
@ -16626,7 +16626,7 @@ int InitEnemyUzi(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE+2, s_UziSmoke, hit.hitSector, hit.hitpos, daang, 0); auto actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE+2, s_UziSmoke, hit.hitSector, hit.hitpos, daang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT);
if (actor->user.ID == ZOMBIE_RUN_R0) if (actor->user.ID == ZOMBIE_RUN_R0)
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
@ -16640,7 +16640,7 @@ int InitEnemyUzi(DSWActor* actor)
actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit.hitSector, hit.hitpos, daang, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SMOKE, s_UziSmoke, hit.hitSector, hit.hitpos, daang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT); actorNew->spr.scale = DVector2(UZI_SMOKE_REPEAT, UZI_SMOKE_REPEAT);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->clipdist = 0.5; actorNew->clipdist = 0.5;
@ -16651,7 +16651,7 @@ int InitEnemyUzi(DSWActor* actor)
actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit.hitSector, hit.hitpos, daang, 0); actorNew = SpawnActor(STAT_MISSILE, UZI_SPARK, s_UziSpark, hit.hitSector, hit.hitpos, daang, 0);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT); actorNew->spr.scale = DVector2(UZI_SPARK_REPEAT, UZI_SPARK_REPEAT);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->user.spal = actorNew->spr.pal; actorNew->user.spal = actorNew->spr.pal;
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
@ -16712,7 +16712,7 @@ int InitGrenade(PLAYER* pp)
actorNew->user.Flags |= (SPR_XFLIP_TOGGLE); actorNew->user.Flags |= (SPR_XFLIP_TOGGLE);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
//actorNew->clipdist = 5; //actorNew->clipdist = 5;
actorNew->clipdist = 2; actorNew->clipdist = 2;
@ -16786,7 +16786,7 @@ int InitSpriteGrenade(DSWActor* actor)
SetOwner(GetOwner(actor), actorNew); SetOwner(GetOwner(actor), actorNew);
else else
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
//actorNew->clipdist = 5; //actorNew->clipdist = 5;
actorNew->clipdist = 2; actorNew->clipdist = 2;
@ -16840,7 +16840,7 @@ int InitMine(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, MINE, s_Mine, pp->cursector, pos, pp->angle.ang, MINE_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, MINE, s_Mine, pp->cursector, pos, pp->angle.ang, MINE_VELOCITY);
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->clipdist = 8; actorNew->clipdist = 8;
actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF; actorNew->vel.Z = pp->horizon.horiz.Tan() * HORIZ_MULTF;
@ -16888,8 +16888,8 @@ int InitEnemyMine(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, MINE, s_Mine, actor->sector(), actor->spr.pos.plusZ(-40), actor->spr.angle, MINE_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, MINE, s_Mine, actor->sector(), actor->spr.pos.plusZ(-40), actor->spr.angle, MINE_VELOCITY);
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.SetScale(0.5, 0.5); actorNew->spr.scale = DVector2(0.5, 0.5);
actorNew->spr.shade = -15; actorNew->spr.shade = -15;
actorNew->clipdist = 8; actorNew->clipdist = 8;
@ -16968,7 +16968,7 @@ int InitFireball(PLAYER* pp)
auto actorNew = SpawnActor(STAT_MISSILE, FIREBALL1, s_Fireball, pp->cursector, pos, pp->angle.ang, FIREBALL_VELOCITY); auto actorNew = SpawnActor(STAT_MISSILE, FIREBALL1, s_Fireball, pp->cursector, pos, pp->angle.ang, FIREBALL_VELOCITY);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.625, 0.625); actorNew->spr.scale = DVector2(0.625, 0.625);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->clipdist = 2; actorNew->clipdist = 2;
SetOwner(pp->actor, actorNew); SetOwner(pp->actor, actorNew);
@ -17045,7 +17045,7 @@ int InitEnemyFireball(DSWActor* actor)
DVector3(actor->spr.pos, nz), actor->spr.angle, GORO_FIREBALL_VELOCITY); DVector3(actor->spr.pos, nz), actor->spr.angle, GORO_FIREBALL_VELOCITY);
actorNew->spr.hitag = LUMINOUS; //Always full brightness actorNew->spr.hitag = LUMINOUS; //Always full brightness
actorNew->spr.SetScale(0.34375, 0.3125); actorNew->spr.scale = DVector2(0.34375, 0.3125);
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
SetOwner(actor, actorNew); SetOwner(actor, actorNew);
@ -17409,7 +17409,7 @@ int SpawnSplash(DSWActor* actor)
if (sectu && (sectp->extra & SECTFX_LIQUID_MASK) == SECTFX_LIQUID_LAVA) if (sectu && (sectp->extra & SECTFX_LIQUID_MASK) == SECTFX_LIQUID_LAVA)
actorNew->user.spal = actorNew->spr.pal = PALETTE_RED_LIGHTING; actorNew->user.spal = actorNew->spr.pal = PALETTE_RED_LIGHTING;
actorNew->spr.SetScale(0.703125, 0.65625); actorNew->spr.scale = DVector2(0.703125, 0.65625);
actorNew->spr.shade = actor->sector()->floorshade - 10; actorNew->spr.shade = actor->sector()->floorshade - 10;
return 0; return 0;
@ -17437,7 +17437,7 @@ int SpawnSplashXY(const DVector3& pos, sectortype* sectp)
if (sectp->hasU() && (sectp->extra & SECTFX_LIQUID_MASK) == SECTFX_LIQUID_LAVA) if (sectp->hasU() && (sectp->extra & SECTFX_LIQUID_MASK) == SECTFX_LIQUID_LAVA)
actorNew->user.spal = actorNew->spr.pal = PALETTE_RED_LIGHTING; actorNew->user.spal = actorNew->spr.pal = PALETTE_RED_LIGHTING;
actorNew->spr.SetScale(0.703125, 0.65625); actorNew->spr.scale = DVector2(0.703125, 0.65625);
actorNew->spr.shade = actorNew->sector()->floorshade - 10; actorNew->spr.shade = actorNew->sector()->floorshade - 10;
return 0; return 0;
@ -17515,7 +17515,7 @@ DSWActor* SpawnBubble(DSWActor* actor)
auto actorNew = SpawnActor(STAT_MISSILE, BUBBLE, s_Bubble, actor->sector(), actor->spr.pos, actor->spr.angle, 0); auto actorNew = SpawnActor(STAT_MISSILE, BUBBLE, s_Bubble, actor->sector(), actor->spr.pos, actor->spr.angle, 0);
double scale = (8 + (RANDOM_P2(8 << 8) >> 8)) * REPEAT_SCALE; double scale = (8 + (RANDOM_P2(8 << 8) >> 8)) * REPEAT_SCALE;
actorNew->spr.SetScale(scale, scale); actorNew->spr.scale = DVector2(scale, scale);
// notreallypos // notreallypos
actorNew->user.pos.XY() = actorNew->spr.scale; actorNew->user.pos.XY() = actorNew->spr.scale;
actorNew->user.ceiling_dist = 1; actorNew->user.ceiling_dist = 1;
@ -17565,7 +17565,7 @@ int SpawnVehicleSmoke(DSWActor* actor)
actorNew->user.WaitTics = 1*120; actorNew->user.WaitTics = 1*120;
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -17594,7 +17594,7 @@ int SpawnSmokePuff(DSWActor* actor)
actorNew->user.WaitTics = 1*120; actorNew->user.WaitTics = 1*120;
actorNew->spr.shade = -40; actorNew->spr.shade = -40;
actorNew->spr.SetScale(1, 1); actorNew->spr.scale = DVector2(1, 1);
actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER); actorNew->spr.cstat |= (CSTAT_SPRITE_YCENTER);
actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN); actorNew->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
@ -17853,7 +17853,7 @@ void QueueHole(sectortype* hit_sect, walltype* hit_wall, const DVector3& pos)
HoleQueueHead = (HoleQueueHead+1) & (MAX_HOLE_QUEUE-1); HoleQueueHead = (HoleQueueHead+1) & (MAX_HOLE_QUEUE-1);
spawnedActor->spr.SetScale(0.25, 0.25); spawnedActor->spr.scale = DVector2(0.25, 0.25);
spawnedActor->spr.cstat = 0; spawnedActor->spr.cstat = 0;
spawnedActor->spr.pal = 0; spawnedActor->spr.pal = 0;
spawnedActor->spr.shade = 0; spawnedActor->spr.shade = 0;
@ -17940,7 +17940,7 @@ int QueueFloorBlood(DSWActor* actor)
spawnedActor->spr.hitag = 9995; spawnedActor->spr.hitag = 9995;
else else
spawnedActor->spr.hitag = 0; spawnedActor->spr.hitag = 0;
spawnedActor->spr.SetScale(0.125, 0.125); spawnedActor->spr.scale = DVector2(0.125, 0.125);
spawnedActor->spr.cstat = 0; spawnedActor->spr.cstat = 0;
spawnedActor->spr.pal = 0; spawnedActor->spr.pal = 0;
spawnedActor->spr.shade = 0; spawnedActor->spr.shade = 0;
@ -18054,7 +18054,7 @@ int QueueFootPrint(DSWActor* actor)
spawnedActor->spr.hitag = 0; spawnedActor->spr.hitag = 0;
spawnedActor->spr.SetScale(0.75, 0.84375); spawnedActor->spr.scale = DVector2(0.75, 0.84375);
spawnedActor->spr.cstat = 0; spawnedActor->spr.cstat = 0;
spawnedActor->spr.pal = 0; spawnedActor->spr.pal = 0;
spawnedActor->spr.shade = 0; spawnedActor->spr.shade = 0;
@ -18194,7 +18194,7 @@ DSWActor* QueueWallBlood(DSWActor* actor, DAngle bang)
WallBloodQueueHead = (WallBloodQueueHead+1) & (MAX_WALLBLOOD_QUEUE-1); WallBloodQueueHead = (WallBloodQueueHead+1) & (MAX_WALLBLOOD_QUEUE-1);
spawnedActor->spr.SetScale(0.46875, 0.625); spawnedActor->spr.scale = DVector2(0.46875, 0.625);
spawnedActor->spr.cstat = 0; spawnedActor->spr.cstat = 0;
spawnedActor->spr.pal = 0; spawnedActor->spr.pal = 0;
spawnedActor->spr.shade = 0; spawnedActor->spr.shade = 0;
@ -18279,7 +18279,7 @@ int DoFloorBlood(DSWActor* actor)
{ {
actor->spr.scale.Y += (-0.15625); actor->spr.scale.Y += (-0.15625);
if (actor->spr.scale.Y <= 0.15625) // Shrink it down and don't use it anymore if (actor->spr.scale.Y <= 0.15625) // Shrink it down and don't use it anymore
actor->spr.SetScale(0.0625, 0.0625); actor->spr.scale = DVector2(0.0625, 0.0625);
} }
} }
} }

View file

@ -631,7 +631,7 @@ int SetupZilla(DSWActor* actor)
EnemyDefaults(actor, &ZillaActionSet, &ZillaPersonality); EnemyDefaults(actor, &ZillaActionSet, &ZillaPersonality);
actor->clipdist = 32; actor->clipdist = 32;
actor->spr.SetScale(1.515625, 1.23475); actor->spr.scale = DVector2(1.515625, 1.23475);
return 0; return 0;
} }

View file

@ -760,7 +760,7 @@ int SetupZombie(DSWActor* actor)
actor->user.Health = 100; actor->user.Health = 100;
actor->user.StateEnd = &s_ZombiePain[0][0]; actor->user.StateEnd = &s_ZombiePain[0][0];
actor->user.Rot = sg_ZombieRun; actor->user.Rot = sg_ZombieRun;
actor->spr.SetScale(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_YREPEAT); actor->spr.scale = DVector2(PLAYER_NINJA_XREPEAT, PLAYER_NINJA_YREPEAT);
actor->user.Attrib = &ZombieAttrib; actor->user.Attrib = &ZombieAttrib;
EnemyDefaults(actor, &ZombieActionSet, &ZombiePersonality); EnemyDefaults(actor, &ZombieActionSet, &ZombiePersonality);