mirror of
https://github.com/ZDoom/Raze.git
synced 2025-03-13 12:32:13 +00:00
- no need to use int_delta when all we want is the angle.
This commit is contained in:
parent
05a7fe8f36
commit
785575604b
18 changed files with 37 additions and 48 deletions
|
@ -380,7 +380,6 @@ struct walltype
|
||||||
|
|
||||||
vec2_t wall_int_pos() const { return vec2_t(pos.X * worldtoint, pos.Y * worldtoint); };
|
vec2_t wall_int_pos() const { return vec2_t(pos.X * worldtoint, pos.Y * worldtoint); };
|
||||||
vec2_t int_delta() const { return point2Wall()->wall_int_pos() - wall_int_pos(); }
|
vec2_t int_delta() const { return point2Wall()->wall_int_pos() - wall_int_pos(); }
|
||||||
vec2_t int_center() const { return(point2Wall()->wall_int_pos() + wall_int_pos()) / 2; }
|
|
||||||
|
|
||||||
void setPosFromMap(int x, int y) { pos = { x * maptoworld, y * maptoworld }; }
|
void setPosFromMap(int x, int y) { pos = { x * maptoworld, y * maptoworld }; }
|
||||||
|
|
||||||
|
|
|
@ -236,8 +236,7 @@ bool CheckProximityWall(walltype* pWall, int x, int y, int nDist)
|
||||||
|
|
||||||
int GetWallAngle(walltype* pWall)
|
int GetWallAngle(walltype* pWall)
|
||||||
{
|
{
|
||||||
auto delta = pWall->int_delta();
|
return getangle(pWall->delta());
|
||||||
return getangle(delta.X, delta.Y);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void GetWallNormal(walltype* pWall, int* pX, int* pY)
|
void GetWallNormal(walltype* pWall, int* pX, int* pY)
|
||||||
|
|
|
@ -1263,7 +1263,7 @@ void bounce(DDukeActor* actor)
|
||||||
|
|
||||||
auto sectp = actor->sector();
|
auto sectp = actor->sector();
|
||||||
|
|
||||||
int daang = getangle(sectp->firstWall()->int_delta());
|
int daang = getangle(sectp->firstWall()->delta());
|
||||||
|
|
||||||
int k, l;
|
int k, l;
|
||||||
if (actor->spr.pos.Z < (actor->floorz + actor->ceilingz) * 0.5)
|
if (actor->spr.pos.Z < (actor->floorz + actor->ceilingz) * 0.5)
|
||||||
|
@ -1472,7 +1472,7 @@ bool queball(DDukeActor *actor, int pocket, int queball, int stripeball)
|
||||||
|
|
||||||
if (j == kHitWall)
|
if (j == kHitWall)
|
||||||
{
|
{
|
||||||
int k = getangle(coll.hitWall->int_delta());
|
int k = getangle(coll.hitWall->delta());
|
||||||
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
|
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
|
||||||
}
|
}
|
||||||
else if (j == kHitSprite)
|
else if (j == kHitSprite)
|
||||||
|
|
|
@ -1418,7 +1418,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const DVector3 &oldpo
|
||||||
(!isWorldTour() || proj->spr.picnum != FIREBALL) &&
|
(!isWorldTour() || proj->spr.picnum != FIREBALL) &&
|
||||||
(wal->overpicnum == MIRROR || wal->picnum == MIRROR))
|
(wal->overpicnum == MIRROR || wal->picnum == MIRROR))
|
||||||
{
|
{
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
||||||
proj->SetOwner(proj);
|
proj->SetOwner(proj);
|
||||||
spawn(proj, TRANSPORTERSTAR);
|
spawn(proj, TRANSPORTERSTAR);
|
||||||
|
@ -1437,7 +1437,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const DVector3 &oldpo
|
||||||
proj->spr.yvel--;
|
proj->spr.yvel--;
|
||||||
}
|
}
|
||||||
|
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -2641,7 +2641,7 @@ static void heavyhbomb(DDukeActor *actor)
|
||||||
auto wal = coll.hitWall;
|
auto wal = coll.hitWall;
|
||||||
fi.checkhitwall(actor, wal, actor->spr.pos, actor->spr.picnum);
|
fi.checkhitwall(actor, wal, actor->spr.pos, actor->spr.picnum);
|
||||||
|
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
|
|
||||||
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
|
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
|
||||||
actor->spr.xvel >>= 1;
|
actor->spr.xvel >>= 1;
|
||||||
|
|
|
@ -1051,7 +1051,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const DVector3& oldpo
|
||||||
|
|
||||||
if (proj->spr.picnum != RPG && (!isRRRA() || proj->spr.picnum != RPG2) && proj->spr.picnum != FREEZEBLAST && proj->spr.picnum != SPIT && proj->spr.picnum != SHRINKSPARK && (wal->overpicnum == MIRROR || wal->picnum == MIRROR))
|
if (proj->spr.picnum != RPG && (!isRRRA() || proj->spr.picnum != RPG2) && proj->spr.picnum != FREEZEBLAST && proj->spr.picnum != SPIT && proj->spr.picnum != SHRINKSPARK && (wal->overpicnum == MIRROR || wal->picnum == MIRROR))
|
||||||
{
|
{
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
||||||
proj->SetOwner(proj);
|
proj->SetOwner(proj);
|
||||||
spawn(proj, TRANSPORTERSTAR);
|
spawn(proj, TRANSPORTERSTAR);
|
||||||
|
@ -1074,7 +1074,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const DVector3& oldpo
|
||||||
proj->spr.yvel--;
|
proj->spr.yvel--;
|
||||||
}
|
}
|
||||||
|
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -1109,7 +1109,7 @@ static bool weaponhitwall(DDukeActor *proj, walltype* wal, const DVector3& oldpo
|
||||||
proj->spr.yvel--;
|
proj->spr.yvel--;
|
||||||
}
|
}
|
||||||
|
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
proj->set_int_ang(((k << 1) - proj->int_ang()) & 2047);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -2430,7 +2430,7 @@ static void heavyhbomb(DDukeActor *actor)
|
||||||
auto wal = coll.hitWall;
|
auto wal = coll.hitWall;
|
||||||
fi.checkhitwall(actor, wal, actor->spr.pos, actor->spr.picnum);
|
fi.checkhitwall(actor, wal, actor->spr.pos, actor->spr.picnum);
|
||||||
|
|
||||||
int k = getangle(wal->int_delta());
|
int k = getangle(wal->delta());
|
||||||
|
|
||||||
if (actor->spr.picnum == CHEERBOMB)
|
if (actor->spr.picnum == CHEERBOMB)
|
||||||
{
|
{
|
||||||
|
@ -2570,7 +2570,7 @@ static int henstand(DDukeActor *actor)
|
||||||
{
|
{
|
||||||
if (coll.type == kHitWall)
|
if (coll.type == kHitWall)
|
||||||
{
|
{
|
||||||
int k = getangle(coll.hitWall->int_delta());
|
int k = getangle(coll.hitWall->delta());
|
||||||
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
|
actor->set_int_ang(((k << 1) - actor->int_ang()) & 2047);
|
||||||
}
|
}
|
||||||
else if (coll.type == kHitSprite)
|
else if (coll.type == kHitSprite)
|
||||||
|
|
|
@ -1057,8 +1057,7 @@ void shootbloodsplat(DDukeActor* actor, int p, int sx, int sy, int sz, int sa, i
|
||||||
if (spawned)
|
if (spawned)
|
||||||
{
|
{
|
||||||
spawned->spr.xvel = -12;
|
spawned->spr.xvel = -12;
|
||||||
auto delta = hit.hitWall->int_delta();
|
spawned->set_int_ang(getangle(-hit.hitWall->delta()) + 512); // note the '-' sign here!
|
||||||
spawned->set_int_ang(getangle(-delta.X, -delta.Y) + 512); // note the '-' sign here!
|
|
||||||
spawned->spr.pos = hit.hitpos;
|
spawned->spr.pos = hit.hitpos;
|
||||||
spawned->spr.cstat |= randomXFlip();
|
spawned->spr.cstat |= randomXFlip();
|
||||||
ssp(spawned, CLIPMASK0);
|
ssp(spawned, CLIPMASK0);
|
||||||
|
|
|
@ -513,8 +513,7 @@ static void shootweapon(DDukeActor *actor, int p, int sx, int sy, int sz, int sa
|
||||||
if (hole)
|
if (hole)
|
||||||
{
|
{
|
||||||
hole->spr.xvel = -1;
|
hole->spr.xvel = -1;
|
||||||
auto delta = hit.hitWall->int_delta();
|
hole->set_int_ang(getangle(-hit.hitWall->delta()) + 512);
|
||||||
hole->set_int_ang(getangle(-delta.X, -delta.Y) + 512);
|
|
||||||
ssp(hole, CLIPMASK0);
|
ssp(hole, CLIPMASK0);
|
||||||
hole->spr.cstat2 |= CSTAT2_SPRITE_DECAL;
|
hole->spr.cstat2 |= CSTAT2_SPRITE_DECAL;
|
||||||
}
|
}
|
||||||
|
|
|
@ -410,8 +410,7 @@ static void shootweapon(DDukeActor* actor, int p, int sx, int sy, int sz, int sa
|
||||||
if (hole)
|
if (hole)
|
||||||
{
|
{
|
||||||
hole->spr.xvel = -1;
|
hole->spr.xvel = -1;
|
||||||
auto delta = hit.hitWall->int_delta();
|
hole->set_int_ang(getangle(-hit.hitWall->delta()) + 512);
|
||||||
hole->set_int_ang(getangle(-delta.X, -delta.Y) + 512);
|
|
||||||
ssp(hole, CLIPMASK0);
|
ssp(hole, CLIPMASK0);
|
||||||
hole->spr.cstat2 |= CSTAT2_SPRITE_DECAL;
|
hole->spr.cstat2 |= CSTAT2_SPRITE_DECAL;
|
||||||
}
|
}
|
||||||
|
@ -2368,7 +2367,7 @@ void onMotorcycleMove(int snum, walltype* wal)
|
||||||
{
|
{
|
||||||
auto p = &ps[snum];
|
auto p = &ps[snum];
|
||||||
auto pact = p->GetActor();
|
auto pact = p->GetActor();
|
||||||
int angleDelta = abs(p->angle.ang.Buildang() - getangle(wal->int_delta()));
|
int angleDelta = abs(p->angle.ang.Buildang() - getangle(wal->delta()));
|
||||||
double damageAmount = p->MotoSpeed * p->MotoSpeed;
|
double damageAmount = p->MotoSpeed * p->MotoSpeed;
|
||||||
|
|
||||||
p->angle.addadjustment(DAngle::fromBuildf(p->MotoSpeed / (krand() & 1 ? -2 : 2)));
|
p->angle.addadjustment(DAngle::fromBuildf(p->MotoSpeed / (krand() & 1 ? -2 : 2)));
|
||||||
|
@ -2422,8 +2421,7 @@ void onBoatMove(int snum, int psectlotag, walltype* wal)
|
||||||
{
|
{
|
||||||
auto p = &ps[snum];
|
auto p = &ps[snum];
|
||||||
auto pact = p->GetActor();
|
auto pact = p->GetActor();
|
||||||
auto delta = wal->int_delta();
|
int angleDelta = abs(p->angle.ang.Buildang() - getangle(wal->delta()));
|
||||||
int angleDelta = abs(p->angle.ang.Buildang() - getangle(wal->int_delta()));
|
|
||||||
|
|
||||||
p->angle.addadjustment(DAngle::fromBuildf(p->MotoSpeed / (krand() & 1 ? -4 : 4)));
|
p->angle.addadjustment(DAngle::fromBuildf(p->MotoSpeed / (krand() & 1 ? -4 : 4)));
|
||||||
|
|
||||||
|
|
|
@ -681,8 +681,7 @@ void checkhitwall_d(DDukeActor* spr, walltype* wal, const DVector3& pos, int atw
|
||||||
if (spawned)
|
if (spawned)
|
||||||
{
|
{
|
||||||
spawned->spr.cstat |= CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER;
|
spawned->spr.cstat |= CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_ALIGNMENT_WALL | CSTAT_SPRITE_YCENTER;
|
||||||
auto delta = wal->int_delta();
|
spawned->set_int_ang(getangle(-wal->delta()) - 512);
|
||||||
spawned->set_int_ang(getangle(-delta.X, -delta.Y) - 512);
|
|
||||||
|
|
||||||
S_PlayActorSound(SOMETHINGHITFORCE, spawned);
|
S_PlayActorSound(SOMETHINGHITFORCE, spawned);
|
||||||
}
|
}
|
||||||
|
|
|
@ -244,8 +244,6 @@ void AddFlash(sectortype* pSector, const DVector3& pos, int val)
|
||||||
|
|
||||||
for (auto& wal : wallsofsector(pSector))
|
for (auto& wal : wallsofsector(pSector))
|
||||||
{
|
{
|
||||||
auto average = wal.int_center();
|
|
||||||
|
|
||||||
sectortype *pNextSector = NULL;
|
sectortype *pNextSector = NULL;
|
||||||
if (wal.twoSided())
|
if (wal.twoSided())
|
||||||
pNextSector = wal.nextSector();
|
pNextSector = wal.nextSector();
|
||||||
|
|
|
@ -1180,9 +1180,7 @@ Collision AngleChase(DExhumedActor* pActor, DExhumedActor* pActor2, int ebx, int
|
||||||
|
|
||||||
int GetWallNormal(walltype* pWall)
|
int GetWallNormal(walltype* pWall)
|
||||||
{
|
{
|
||||||
auto delta = pWall->int_delta();
|
int nAngle = getangle(pWall->delta());
|
||||||
|
|
||||||
int nAngle = getangle(delta.X, delta.Y);
|
|
||||||
return (nAngle + 512) & kAngleMask;
|
return (nAngle + 512) & kAngleMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -729,7 +729,7 @@ int WallBreakPosition(walltype* wp, sectortype** sectp, int *x, int *y, int *z,
|
||||||
int nx,ny;
|
int nx,ny;
|
||||||
int wall_ang;
|
int wall_ang;
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(wp->int_delta())+512);
|
wall_ang = NORM_ANGLE(getangle(wp->delta())+512);
|
||||||
|
|
||||||
*sectp = wp->sectorp();
|
*sectp = wp->sectorp();
|
||||||
ASSERT(*sectp);
|
ASSERT(*sectp);
|
||||||
|
|
|
@ -959,7 +959,7 @@ void CircleCamera(int *nx, int *ny, int *nz, sectortype** vsect, DAngle *nang, f
|
||||||
{
|
{
|
||||||
*vsect = hit.hitSector;
|
*vsect = hit.hitSector;
|
||||||
|
|
||||||
daang = getangle(hit.hitWall->int_delta());
|
daang = getangle(hit.hitWall->delta());
|
||||||
|
|
||||||
i = vx * bsin(daang) + vy * -bcos(daang);
|
i = vx * bsin(daang) + vy * -bcos(daang);
|
||||||
if (abs(vx) > abs(vy))
|
if (abs(vx) > abs(vy))
|
||||||
|
|
|
@ -424,7 +424,7 @@ int DoBloodSpray(DSWActor* actor)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(wph->int_delta()) + 512);
|
wall_ang = NORM_ANGLE(getangle(wph->delta()) + 512);
|
||||||
|
|
||||||
SpawnMidSplash(actor);
|
SpawnMidSplash(actor);
|
||||||
auto bldActor = QueueWallBlood(actor, NORM_ANGLE(wall_ang+1024));
|
auto bldActor = QueueWallBlood(actor, NORM_ANGLE(wall_ang+1024));
|
||||||
|
@ -618,7 +618,7 @@ int DoPhosphorus(DSWActor* actor)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(wph->int_delta()) + 512);
|
wall_ang = NORM_ANGLE(getangle(wph->delta()) + 512);
|
||||||
|
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 32000);
|
ScaleSpriteVector(actor, 32000);
|
||||||
|
@ -823,7 +823,7 @@ int DoChemBomb(DSWActor* actor)
|
||||||
if (!(actor->spr.cstat & CSTAT_SPRITE_INVISIBLE))
|
if (!(actor->spr.cstat & CSTAT_SPRITE_INVISIBLE))
|
||||||
PlaySound(DIGI_CHEMBOUNCE, actor, v3df_dontpan);
|
PlaySound(DIGI_CHEMBOUNCE, actor, v3df_dontpan);
|
||||||
|
|
||||||
int wall_ang = NORM_ANGLE(getangle(wph->int_delta()) + 512);
|
int wall_ang = NORM_ANGLE(getangle(wph->delta()) + 512);
|
||||||
|
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 32000);
|
ScaleSpriteVector(actor, 32000);
|
||||||
|
@ -1037,7 +1037,7 @@ int DoCaltrops(DSWActor* actor)
|
||||||
|
|
||||||
PlaySound(DIGI_CALTROPS, actor, v3df_dontpan);
|
PlaySound(DIGI_CALTROPS, actor, v3df_dontpan);
|
||||||
|
|
||||||
int wall_ang = NORM_ANGLE(getangle(wph->int_delta()) + 512);
|
int wall_ang = NORM_ANGLE(getangle(wph->delta()) + 512);
|
||||||
|
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 1000);
|
ScaleSpriteVector(actor, 1000);
|
||||||
|
|
|
@ -1567,7 +1567,7 @@ void SlipSlope(PLAYER* pp)
|
||||||
if (!(sectu->flags & SECTFU_SLIDE_SECTOR) || !(pp->cursector->floorstat & CSTAT_SECTOR_SLOPE))
|
if (!(sectu->flags & SECTFU_SLIDE_SECTOR) || !(pp->cursector->floorstat & CSTAT_SECTOR_SLOPE))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ang = getangle(pp->cursector->firstWall()->int_delta());
|
ang = getangle(pp->cursector->firstWall()->delta());
|
||||||
|
|
||||||
ang = NORM_ANGLE(ang + 512);
|
ang = NORM_ANGLE(ang + 512);
|
||||||
|
|
||||||
|
@ -5835,7 +5835,7 @@ void DoPlayerDeathMoveHead(PLAYER* pp)
|
||||||
}
|
}
|
||||||
case kHitWall:
|
case kHitWall:
|
||||||
{
|
{
|
||||||
int wall_ang = NORM_ANGLE(getangle(plActor->user.coll.hitWall->int_delta())-512);
|
int wall_ang = NORM_ANGLE(getangle(plActor->user.coll.hitWall->delta())-512);
|
||||||
|
|
||||||
int dang = getincangle(wall_ang, plActor->user.slide_ang);
|
int dang = getincangle(wall_ang, plActor->user.slide_ang);
|
||||||
plActor->user.slide_ang = NORM_ANGLE(wall_ang + 1024 - dang);
|
plActor->user.slide_ang = NORM_ANGLE(wall_ang + 1024 - dang);
|
||||||
|
|
|
@ -1001,7 +1001,7 @@ int DoRipperMoveHang(DSWActor* actor)
|
||||||
actor->user.WaitTics = 2 + ((RANDOM_P2(4 << 8) >> 8) * 120);
|
actor->user.WaitTics = 2 + ((RANDOM_P2(4 << 8) >> 8) * 120);
|
||||||
|
|
||||||
// hang flush with the wall
|
// hang flush with the wall
|
||||||
actor->set_int_ang(NORM_ANGLE(getangle(actor->user.coll.hitWall->int_delta()) - 512));
|
actor->set_int_ang(NORM_ANGLE(getangle(actor->user.coll.hitWall->delta()) - 512));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1021,7 +1021,7 @@ int DoRipper2MoveHang(DSWActor* actor)
|
||||||
actor->user.WaitTics = 0; // Double jump
|
actor->user.WaitTics = 0; // Double jump
|
||||||
|
|
||||||
// hang flush with the wall
|
// hang flush with the wall
|
||||||
actor->set_int_ang(NORM_ANGLE(getangle(actor->user.coll.hitWall->int_delta()) - 512));
|
actor->set_int_ang(NORM_ANGLE(getangle(actor->user.coll.hitWall->delta()) - 512));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -7472,7 +7472,7 @@ int DoStar(DSWActor* actor)
|
||||||
if (RANDOM_P2(1024) < STAR_BOUNCE_RNUM)
|
if (RANDOM_P2(1024) < STAR_BOUNCE_RNUM)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(wph->int_delta())+512);
|
wall_ang = NORM_ANGLE(getangle(wph->delta())+512);
|
||||||
|
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 36000);
|
ScaleSpriteVector(actor, 36000);
|
||||||
|
@ -8168,7 +8168,7 @@ bool SlopeBounce(DSWActor* actor, bool *hit_wall)
|
||||||
|
|
||||||
// get angle of the first wall of the sector
|
// get angle of the first wall of the sector
|
||||||
auto wallp = hit_sector->firstWall();
|
auto wallp = hit_sector->firstWall();
|
||||||
daang = getangle(wallp->int_delta());
|
daang = getangle(wallp->delta());
|
||||||
|
|
||||||
// k is now the slope of the ceiling or floor
|
// k is now the slope of the ceiling or floor
|
||||||
|
|
||||||
|
@ -8285,7 +8285,7 @@ int DoGrenade(DSWActor* actor)
|
||||||
|
|
||||||
PlaySound(DIGI_40MMBNCE, actor, v3df_dontpan);
|
PlaySound(DIGI_40MMBNCE, actor, v3df_dontpan);
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(wph->int_delta())+512);
|
wall_ang = NORM_ANGLE(getangle(wph->delta())+512);
|
||||||
|
|
||||||
//actor->spr.angle = NORM_ANGLE(actor->spr.angle + 1);
|
//actor->spr.angle = NORM_ANGLE(actor->spr.angle + 1);
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
|
@ -8483,7 +8483,7 @@ int DoVulcanBoulder(DSWActor* actor)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(wph->int_delta())+512);
|
wall_ang = NORM_ANGLE(getangle(wph->delta())+512);
|
||||||
|
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 40000);
|
ScaleSpriteVector(actor, 40000);
|
||||||
|
@ -14970,7 +14970,7 @@ bool HitscanSpriteAdjust(DSWActor* actor, walltype* hit_wall)
|
||||||
|
|
||||||
if (hit_wall)
|
if (hit_wall)
|
||||||
{
|
{
|
||||||
int16_t const wall_ang = NORM_ANGLE(getangle(hit_wall->int_delta()));
|
int16_t const wall_ang = NORM_ANGLE(getangle(hit_wall->delta()));
|
||||||
actor->set_int_ang(NORM_ANGLE(wall_ang + 512));
|
actor->set_int_ang(NORM_ANGLE(wall_ang + 512));
|
||||||
}
|
}
|
||||||
ang = actor->int_ang();
|
ang = actor->int_ang();
|
||||||
|
@ -17259,7 +17259,7 @@ void QueueHole(sectortype* hit_sect, walltype* hit_wall, const DVector3& pos)
|
||||||
spawnedActor->spr.cstat |= (CSTAT_SPRITE_ONE_SIDE);
|
spawnedActor->spr.cstat |= (CSTAT_SPRITE_ONE_SIDE);
|
||||||
spawnedActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
|
spawnedActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(hit_wall->int_delta())+512);
|
wall_ang = NORM_ANGLE(getangle(hit_wall->delta())+512);
|
||||||
spawnedActor->set_int_ang(wall_ang);
|
spawnedActor->set_int_ang(wall_ang);
|
||||||
|
|
||||||
// move it back some
|
// move it back some
|
||||||
|
@ -17570,7 +17570,7 @@ DSWActor* QueueWallBlood(DSWActor* actor, short ang)
|
||||||
spawnedActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
|
spawnedActor->spr.cstat |= (CSTAT_SPRITE_YCENTER);
|
||||||
spawnedActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
|
spawnedActor->spr.cstat &= ~(CSTAT_SPRITE_BLOCK|CSTAT_SPRITE_BLOCK_HITSCAN);
|
||||||
|
|
||||||
wall_ang = NORM_ANGLE(getangle(hit.hitWall->int_delta()) + 512);
|
wall_ang = NORM_ANGLE(getangle(hit.hitWall->delta()) + 512);
|
||||||
spawnedActor->set_int_ang(wall_ang);
|
spawnedActor->set_int_ang(wall_ang);
|
||||||
|
|
||||||
// move it back some
|
// move it back some
|
||||||
|
@ -17802,7 +17802,7 @@ int DoShrapVelocity(DSWActor* actor)
|
||||||
|
|
||||||
case kHitWall:
|
case kHitWall:
|
||||||
{
|
{
|
||||||
int wall_ang = NORM_ANGLE(getangle(actor->user.coll.hitWall->int_delta())+512);
|
int wall_ang = NORM_ANGLE(getangle(actor->user.coll.hitWall->delta())+512);
|
||||||
|
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 32000);
|
ScaleSpriteVector(actor, 32000);
|
||||||
|
@ -18118,7 +18118,7 @@ int DoItemFly(DSWActor* actor)
|
||||||
|
|
||||||
case kHitWall:
|
case kHitWall:
|
||||||
{
|
{
|
||||||
int wall_ang = NORM_ANGLE(getangle(actor->user.coll.hitWall->int_delta())+512);
|
int wall_ang = NORM_ANGLE(getangle(actor->user.coll.hitWall->delta())+512);
|
||||||
WallBounce(actor, wall_ang);
|
WallBounce(actor, wall_ang);
|
||||||
ScaleSpriteVector(actor, 32000);
|
ScaleSpriteVector(actor, 32000);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in a new issue