mirror of
https://github.com/ZDoom/Raze.git
synced 2025-01-31 20:40:39 +00:00
- Duke: Clean up player/actor accesses in operateweapon()
.
This commit is contained in:
parent
f14d7f3612
commit
2c78fba4a2
2 changed files with 23 additions and 25 deletions
|
@ -994,9 +994,8 @@ static void fireweapon(DDukePlayer* const p)
|
||||||
//
|
//
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
static void operateweapon(int snum, ESyncBits actions)
|
static void operateweapon(DDukePlayer* const p, ESyncBits actions)
|
||||||
{
|
{
|
||||||
auto p = getPlayer(snum);
|
|
||||||
auto pact = p->GetActor();
|
auto pact = p->GetActor();
|
||||||
|
|
||||||
// already firing...
|
// already firing...
|
||||||
|
@ -1028,8 +1027,8 @@ static void operateweapon(int snum, ESyncBits actions)
|
||||||
zvel -= 4;
|
zvel -= 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto spawned = CreateActor(p->cursector, p->GetActor()->getPosWithOffsetZ() + p->GetActor()->spr.Angles.Yaw.ToVector() * 16, DukePipeBombClass, -16, DVector2(0.140625, 0.140625),
|
auto spawned = CreateActor(p->cursector, pact->getPosWithOffsetZ() + pact->spr.Angles.Yaw.ToVector() * 16, DukePipeBombClass, -16, DVector2(0.140625, 0.140625),
|
||||||
p->GetActor()->spr.Angles.Yaw, vel + p->hbomb_hold_delay * 2, zvel, pact, STAT_ACTOR);
|
pact->spr.Angles.Yaw, vel + p->hbomb_hold_delay * 2, zvel, pact, STAT_ACTOR);
|
||||||
|
|
||||||
if (isNam())
|
if (isNam())
|
||||||
{
|
{
|
||||||
|
@ -1397,7 +1396,7 @@ static void operateweapon(int snum, ESyncBits actions)
|
||||||
case TRIPBOMB_WEAPON: // Claymore in NAM
|
case TRIPBOMB_WEAPON: // Claymore in NAM
|
||||||
if (p->kickback_pic < 4)
|
if (p->kickback_pic < 4)
|
||||||
{
|
{
|
||||||
p->GetActor()->restorez();
|
pact->restorez();
|
||||||
p->vel.Z = 0;
|
p->vel.Z = 0;
|
||||||
if (p->kickback_pic == 3)
|
if (p->kickback_pic == 3)
|
||||||
shoot(pact, DukeHandHoldingLaserClass);
|
shoot(pact, DukeHandHoldingLaserClass);
|
||||||
|
@ -1515,7 +1514,7 @@ static void processweapon(int snum, ESyncBits actions)
|
||||||
}
|
}
|
||||||
else if (p->kickback_pic)
|
else if (p->kickback_pic)
|
||||||
{
|
{
|
||||||
if (!isWW2GI()) operateweapon(snum, actions);
|
if (!isWW2GI()) operateweapon(p, actions);
|
||||||
else operateweapon_ww(snum, actions);
|
else operateweapon_ww(snum, actions);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1630,9 +1630,8 @@ static void fireweapon(DDukePlayer* const p)
|
||||||
//
|
//
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
static void operateweapon(DDukePlayer* const p, ESyncBits actions, sectortype* psectp)
|
||||||
{
|
{
|
||||||
auto p = getPlayer(snum);
|
|
||||||
auto pact = p->GetActor();
|
auto pact = p->GetActor();
|
||||||
int psectlotag = psectp ? psectp->lotag : 857;
|
int psectlotag = psectp ? psectp->lotag : 857;
|
||||||
|
|
||||||
|
@ -1695,8 +1694,8 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
zvel -= 4;
|
zvel -= 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto spawned = CreateActor(p->cursector, p->GetActor()->getPosWithOffsetZ() + p->GetActor()->spr.Angles.Yaw.ToVector() * 16, RedneckDynamiteClass, -16, DVector2(0.140625, 0.140625),
|
auto spawned = CreateActor(p->cursector, pact->getPosWithOffsetZ() + pact->spr.Angles.Yaw.ToVector() * 16, RedneckDynamiteClass, -16, DVector2(0.140625, 0.140625),
|
||||||
p->GetActor()->spr.Angles.Yaw, (vel + p->hbomb_hold_delay * 2) * 2, zvel, pact, 1);
|
pact->spr.Angles.Yaw, (vel + p->hbomb_hold_delay * 2) * 2, zvel, pact, 1);
|
||||||
|
|
||||||
if (spawned)
|
if (spawned)
|
||||||
{
|
{
|
||||||
|
@ -1706,7 +1705,7 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
spawned->spr.pos.Z += 8;
|
spawned->spr.pos.Z += 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
double hd = hits(p->GetActor());
|
double hd = hits(pact);
|
||||||
if (hd < 32)
|
if (hd < 32)
|
||||||
{
|
{
|
||||||
spawned->spr.Angles.Yaw += DAngle180;
|
spawned->spr.Angles.Yaw += DAngle180;
|
||||||
|
@ -1747,7 +1746,7 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
p->visibility = 0;
|
p->visibility = 0;
|
||||||
if (psectlotag != 857)
|
if (psectlotag != 857)
|
||||||
{
|
{
|
||||||
p->vel.XY() -= p->GetActor()->spr.Angles.Yaw.ToVector();
|
p->vel.XY() -= pact->spr.Angles.Yaw.ToVector();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (p->kickback_pic == 2)
|
else if (p->kickback_pic == 2)
|
||||||
|
@ -1830,12 +1829,12 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
|
|
||||||
if (psectlotag != 857)
|
if (psectlotag != 857)
|
||||||
{
|
{
|
||||||
p->vel.XY() -= p->GetActor()->spr.Angles.Yaw.ToVector() * 2;
|
p->vel.XY() -= pact->spr.Angles.Yaw.ToVector() * 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (psectlotag != 857)
|
else if (psectlotag != 857)
|
||||||
{
|
{
|
||||||
p->vel.XY() -= p->GetActor()->spr.Angles.Yaw.ToVector();
|
p->vel.XY() -= pact->spr.Angles.Yaw.ToVector();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1890,7 +1889,7 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
case RIFLEGUN_WEAPON:
|
case RIFLEGUN_WEAPON:
|
||||||
|
|
||||||
p->kickback_pic++;
|
p->kickback_pic++;
|
||||||
p->GetActor()->spr.Angles.Pitch -= DAngle::fromDeg(0.4476);
|
pact->spr.Angles.Pitch -= DAngle::fromDeg(0.4476);
|
||||||
p->recoil++;
|
p->recoil++;
|
||||||
|
|
||||||
if (p->kickback_pic <= 12)
|
if (p->kickback_pic <= 12)
|
||||||
|
@ -1921,7 +1920,7 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
|
|
||||||
if (psectlotag != 857)
|
if (psectlotag != 857)
|
||||||
{
|
{
|
||||||
p->vel.XY() -= p->GetActor()->spr.Angles.Yaw.ToVector();
|
p->vel.XY() -= pact->spr.Angles.Yaw.ToVector();
|
||||||
}
|
}
|
||||||
checkavailweapon(p);
|
checkavailweapon(p);
|
||||||
|
|
||||||
|
@ -1981,11 +1980,11 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
}
|
}
|
||||||
if (p->kickback_pic == 2)
|
if (p->kickback_pic == 2)
|
||||||
{
|
{
|
||||||
p->GetActor()->spr.Angles.Yaw += mapangle(16);
|
pact->spr.Angles.Yaw += mapangle(16);
|
||||||
}
|
}
|
||||||
else if (p->kickback_pic == 4)
|
else if (p->kickback_pic == 4)
|
||||||
{
|
{
|
||||||
p->GetActor()->spr.Angles.Yaw -= mapangle(16);
|
pact->spr.Angles.Yaw -= mapangle(16);
|
||||||
}
|
}
|
||||||
if (p->kickback_pic > 4)
|
if (p->kickback_pic > 4)
|
||||||
p->kickback_pic = 1;
|
p->kickback_pic = 1;
|
||||||
|
@ -2011,11 +2010,11 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
}
|
}
|
||||||
if (p->kickback_pic == 2)
|
if (p->kickback_pic == 2)
|
||||||
{
|
{
|
||||||
p->GetActor()->spr.Angles.Yaw += mapangle(4);
|
pact->spr.Angles.Yaw += mapangle(4);
|
||||||
}
|
}
|
||||||
else if (p->kickback_pic == 4)
|
else if (p->kickback_pic == 4)
|
||||||
{
|
{
|
||||||
p->GetActor()->spr.Angles.Yaw -= mapangle(4);
|
pact->spr.Angles.Yaw -= mapangle(4);
|
||||||
}
|
}
|
||||||
if (p->kickback_pic > 4)
|
if (p->kickback_pic > 4)
|
||||||
p->kickback_pic = 1;
|
p->kickback_pic = 1;
|
||||||
|
@ -2061,8 +2060,8 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
}
|
}
|
||||||
else if (p->kickback_pic == 12)
|
else if (p->kickback_pic == 12)
|
||||||
{
|
{
|
||||||
p->vel.XY() -= p->GetActor()->spr.Angles.Yaw.ToVector();
|
p->vel.XY() -= pact->spr.Angles.Yaw.ToVector();
|
||||||
p->GetActor()->spr.Angles.Pitch -= DAngle::fromDeg(8.88);
|
pact->spr.Angles.Pitch -= DAngle::fromDeg(8.88);
|
||||||
p->recoil += 20;
|
p->recoil += 20;
|
||||||
}
|
}
|
||||||
if (p->kickback_pic > 20)
|
if (p->kickback_pic > 20)
|
||||||
|
@ -2087,7 +2086,7 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
zvel -= 4;
|
zvel -= 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
CreateActor(p->cursector, p->GetActor()->getPosWithOffsetZ() + p->GetActor()->spr.Angles.Yaw.ToVector() * 16, RedneckPowderKegClass, -16, DVector2(0.140625, 0.140625), p->GetActor()->spr.Angles.Yaw, vel * 2, zvel, pact, 1);
|
CreateActor(p->cursector, pact->getPosWithOffsetZ() + pact->spr.Angles.Yaw.ToVector() * 16, RedneckPowderKegClass, -16, DVector2(0.140625, 0.140625), p->GetActor()->spr.Angles.Yaw, vel * 2, zvel, pact, 1);
|
||||||
}
|
}
|
||||||
p->kickback_pic++;
|
p->kickback_pic++;
|
||||||
if (p->kickback_pic > 20)
|
if (p->kickback_pic > 20)
|
||||||
|
@ -2108,7 +2107,7 @@ static void operateweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
}
|
}
|
||||||
if (p->kickback_pic < 30)
|
if (p->kickback_pic < 30)
|
||||||
{
|
{
|
||||||
p->vel.XY() += p->GetActor()->spr.Angles.Yaw.ToVector();
|
p->vel.XY() += pact->spr.Angles.Yaw.ToVector();
|
||||||
}
|
}
|
||||||
p->kickback_pic++;
|
p->kickback_pic++;
|
||||||
if (p->kickback_pic > 40)
|
if (p->kickback_pic > 40)
|
||||||
|
@ -2247,7 +2246,7 @@ static void processweapon(int snum, ESyncBits actions, sectortype* psectp)
|
||||||
}
|
}
|
||||||
else if (p->kickback_pic)
|
else if (p->kickback_pic)
|
||||||
{
|
{
|
||||||
operateweapon(snum, actions, psectp);
|
operateweapon(p, actions, psectp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue