mirror of
https://github.com/ZDoom/Raze.git
synced 2025-03-13 20:42:11 +00:00
- floatified gs.playerfriction
This commit is contained in:
parent
477120923f
commit
a5652655db
6 changed files with 25 additions and 38 deletions
|
@ -3637,13 +3637,12 @@ void move_d(DDukeActor *actor, int playernum, int xvel)
|
|||
|
||||
if (xvel < 512)
|
||||
{
|
||||
ps[playernum].__vel.X = 0;
|
||||
ps[playernum].__vel.Y = 0;
|
||||
ps[playernum].vel.X = 0;
|
||||
ps[playernum].vel.Y = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
ps[playernum].__vel.X = MulScaleF(ps[playernum].__vel.X, gs.playerfriction - 0x2000, 16);
|
||||
ps[playernum].__vel.Y = MulScaleF(ps[playernum].__vel.Y, gs.playerfriction - 0x2000, 16);
|
||||
ps[playernum].vel.XY() *= gs.playerfriction - 0.125;
|
||||
}
|
||||
}
|
||||
else if (actor->spr.picnum != DRONE && actor->spr.picnum != SHARK && actor->spr.picnum != COMMANDER)
|
||||
|
|
|
@ -3669,13 +3669,12 @@ void move_r(DDukeActor *actor, int pnum, int xvel)
|
|||
|
||||
if (xvel < 512)
|
||||
{
|
||||
ps[pnum].__vel.X = 0;
|
||||
ps[pnum].__vel.Y = 0;
|
||||
ps[pnum].vel.X = 0;
|
||||
ps[pnum].vel.Y = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
ps[pnum].__vel.X = MulScaleF(ps[pnum].__vel.X, gs.playerfriction - 0x2000, 16);
|
||||
ps[pnum].__vel.Y = MulScaleF(ps[pnum].__vel.Y, gs.playerfriction - 0x2000, 16);
|
||||
ps[pnum].vel.XY() *= gs.playerfriction - 0.125;
|
||||
}
|
||||
}
|
||||
else if ((isRRRA() && actor->spr.picnum != DRONE && actor->spr.picnum != SHARK && actor->spr.picnum != UFO1_RRRA) ||
|
||||
|
|
|
@ -1939,7 +1939,7 @@ int ConCompiler::parsecommand()
|
|||
gs.max_armour_amount = parseone();
|
||||
gs.respawnactortime = parseone();
|
||||
gs.respawnitemtime = parseone();
|
||||
gs.playerfriction = parseone();
|
||||
gs.playerfriction = FixedToFloat(parseone());
|
||||
if (isPlutoPak() || isRR()) gs.gravity = parseone();
|
||||
gs.rpgblastradius = parseone();
|
||||
gs.pipebombblastradius = parseone();
|
||||
|
@ -3181,7 +3181,7 @@ void loadcons()
|
|||
gs.morterblastradius = 2500;
|
||||
gs.numfreezebounces = 3;
|
||||
gs.pipebombblastradius = 2500;
|
||||
gs.playerfriction = 0xCFD0;
|
||||
gs.playerfriction = FixedToFloat(0xCFD0);
|
||||
gs.rpgblastradius = 1780;
|
||||
gs.seenineblastradius = 2048;
|
||||
gs.shrinkerblastradius = 650;
|
||||
|
|
|
@ -2998,20 +2998,17 @@ void processinput_d(int snum)
|
|||
else check = ((aplWeaponWorksLike(p->curr_weapon, snum) == KNEE_WEAPON && p->kickback_pic > 10 && p->on_ground) || (p->on_ground && (actions & SB_CROUCH)));
|
||||
if (check)
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction - 0x2000, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction - 0x2000, 16);
|
||||
p->vel.XY() *= gs.playerfriction - 0.125;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (psectlotag == 2)
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction - 0x1400, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction - 0x1400, 16);
|
||||
p->vel.XY() *= gs.playerfriction - FixedToFloat(0x1400);
|
||||
}
|
||||
else
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction, 16);
|
||||
p->vel.XY() *= gs.playerfriction;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3020,10 +3017,7 @@ void processinput_d(int snum)
|
|||
|
||||
if (shrunk)
|
||||
{
|
||||
p->__vel.X =
|
||||
MulScaleF(p->__vel.X, gs.playerfriction * 0.75, 16);
|
||||
p->__vel.Y =
|
||||
MulScaleF(p->__vel.Y, gs.playerfriction * 0.75, 16);
|
||||
p->__vel.XY() *= gs.playerfriction * 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3712,20 +3712,17 @@ void processinput_r(int snum)
|
|||
|
||||
if (!isRRRA() && ((p->curr_weapon == KNEE_WEAPON && p->kickback_pic > 10 && p->on_ground) || (p->on_ground && (actions & SB_CROUCH))))
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction - 0x2000, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction - 0x2000, 16);
|
||||
p->vel.XY() *= gs.playerfriction - 0.125;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (psectlotag == 2)
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction - 0x1400, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction - 0x1400, 16);
|
||||
p->vel.XY() *= gs.playerfriction - FixedToFloat(0x1400);
|
||||
}
|
||||
else
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction, 16);
|
||||
p->vel.XY() *= gs.playerfriction;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3746,8 +3743,7 @@ void processinput_r(int snum)
|
|||
p->boot_amount--;
|
||||
else
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction, 16);
|
||||
p->vel.XY() *= gs.playerfriction;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -3758,8 +3754,7 @@ void processinput_r(int snum)
|
|||
{
|
||||
if (p->on_ground)
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction - 0x1800, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction - 0x1800, 16);
|
||||
p->vel.XY() *= gs.playerfriction - FixedToFloat(0x1800);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -3767,20 +3762,16 @@ void processinput_r(int snum)
|
|||
p->boot_amount--;
|
||||
else
|
||||
{
|
||||
p->__vel.X = MulScaleF(p->__vel.X, gs.playerfriction - 0x1800, 16);
|
||||
p->__vel.Y = MulScaleF(p->__vel.Y, gs.playerfriction - 0x1800, 16);
|
||||
p->vel.XY() *= gs.playerfriction - FixedToFloat(0x1800);
|
||||
}
|
||||
}
|
||||
|
||||
if (abs(p->__vel.X) < 2048 && abs(p->__vel.Y) < 2048)
|
||||
p->__vel.X = p->__vel.Y = 0;
|
||||
p->vel.X = p->vel.Y = 0;
|
||||
|
||||
if (shrunk)
|
||||
{
|
||||
p->__vel.X =
|
||||
MulScaleF(p->__vel.X, gs.playerfriction * 0.75, 16);
|
||||
p->__vel.Y =
|
||||
MulScaleF(p->__vel.Y, gs.playerfriction * 0.75, 16);
|
||||
p->__vel.XY() *= gs.playerfriction * 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -201,7 +201,11 @@ struct CraneDef
|
|||
|
||||
struct player_struct
|
||||
{
|
||||
DVector3 __vel;
|
||||
union
|
||||
{
|
||||
DVector3 vel; // refactoring aid;
|
||||
DVector3 __vel;
|
||||
};
|
||||
DVector3 pos, opos;
|
||||
DVector2 bobpos;
|
||||
|
||||
|
|
Loading…
Reference in a new issue