fix grow on dashrings for real
This commit is contained in:
parent
8a91fdfa43
commit
8a8466bae8
4 changed files with 15 additions and 1 deletions
|
|
@ -72,7 +72,9 @@ typedef enum
|
|||
PF_GAINAX = 1<<3,
|
||||
PF_KICKSTARTACCEL = 1<<4, // Accessibility feature: Is accelerate in kickstart mode?
|
||||
|
||||
// free: 1<<5 and 1<<6
|
||||
// free: 1<<5
|
||||
|
||||
PF_NOSCALEGRAVITY = 1<<6, // Don't scale gravity by player object scale (cleared when grounded)
|
||||
|
||||
PF_WANTSTOJOIN = 1<<7, // Spectator that wants to join
|
||||
|
||||
|
|
|
|||
|
|
@ -163,6 +163,8 @@ void Obj_DashRingTouch(mobj_t *ring, player_t *player)
|
|||
player->carry = CR_DASHRING;
|
||||
player->dashRingPullTics = DASHRING_PULL_TICS;
|
||||
player->dashRingPushTics = 0;
|
||||
|
||||
player->pflags |= PF_NOSCALEGRAVITY;
|
||||
}
|
||||
|
||||
static fixed_t GetPlayerDashRingZ(player_t *player, mobj_t *ring)
|
||||
|
|
|
|||
|
|
@ -1195,6 +1195,11 @@ fixed_t P_GetMobjGravity(mobj_t *mo)
|
|||
{
|
||||
gravitymul = mapobjectscale;
|
||||
}
|
||||
|
||||
if (mo->player->pflags & PF_NOSCALEGRAVITY)
|
||||
{
|
||||
gravitymul = mapobjectscale;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4324,6 +4324,11 @@ void P_PlayerThink(player_t *player)
|
|||
player->typing_duration = 0;
|
||||
}
|
||||
|
||||
if (P_IsObjectOnGround(player->mo) && (player->pflags & PF_NOSCALEGRAVITY))
|
||||
{
|
||||
player->pflags &= ~PF_NOSCALEGRAVITY;
|
||||
}
|
||||
|
||||
player->pflags &= ~PF_HITFINISHLINE;
|
||||
|
||||
// experiment: process the drift input *before* player movement instead of after
|
||||
|
|
|
|||
Loading…
Reference in a new issue