mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-03-26 04:30:55 +00:00
* Make autobrake scaled to low-friction surfaces.
* Make rope hangs change how they handle the player's angle a little more organically.
This commit is contained in:
parent
725e015a19
commit
d44a36c8fe
1 changed files with 11 additions and 5 deletions
16
src/p_user.c
16
src/p_user.c
|
@ -9756,12 +9756,14 @@ void P_PlayerThink(player_t *player)
|
|||
case CR_PLAYER:
|
||||
player->drawangle = (player->mo->tracer->player ? player->mo->tracer->player->drawangle : player->mo->tracer->angle);
|
||||
break;
|
||||
/* -- in case we wanted to have the camera freely movable during zoom tube style stuff
|
||||
case CR_ZOOMTUBE:
|
||||
/* -- in case we wanted to have the camera freely movable during zoom tubes
|
||||
case CR_ZOOMTUBE:*/
|
||||
case CR_ROPEHANG:
|
||||
player->drawangle = R_PointToAngle2(0, 0, player->mo->momx, player->mo->momy);
|
||||
break;
|
||||
*/
|
||||
if (player->mo->momx || player->mo->momy)
|
||||
{
|
||||
player->drawangle = R_PointToAngle2(0, 0, player->mo->momx, player->mo->momy);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
player->drawangle = player->mo->angle;
|
||||
break;
|
||||
|
@ -9831,6 +9833,9 @@ void P_PlayerThink(player_t *player)
|
|||
if (!currentlyonground)
|
||||
acceleration /= 2;
|
||||
|
||||
if (player->mo->movefactor != FRACUNIT) // Friction-scaled acceleration...
|
||||
acceleration = FixedMul(acceleration<<FRACBITS, player->mo->movefactor)>>FRACBITS;
|
||||
|
||||
P_Thrust(player->mo, moveAngle, -acceleration);
|
||||
}
|
||||
|
||||
|
@ -9847,6 +9852,7 @@ void P_PlayerThink(player_t *player)
|
|||
|
||||
if (player->powers[pw_pushing])
|
||||
player->powers[pw_pushing]--;
|
||||
|
||||
player->mo->movefactor = FRACUNIT; // We're not going to do any more with this, so let's change it back for the next frame.
|
||||
|
||||
// Unset statis flags after moving.
|
||||
|
|
Loading…
Reference in a new issue