mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-12-27 21:01:04 +00:00
Last touches for smk maps
- different min/max on capped spring pads - turn the normally almost-useless "non-ramp sector" type into "wall sector", which disables both stepup AND stepdown instead of just stepdown
This commit is contained in:
parent
6fdb743a59
commit
14ccdb0dcf
3 changed files with 12 additions and 8 deletions
|
@ -1585,9 +1585,9 @@ fixed_t K_3dKartMovement(player_t *player, boolean onground, fixed_t forwardmove
|
||||||
|
|
||||||
if (player->kartstuff[k_pogospring]) // Pogo Spring minimum/maximum thrust
|
if (player->kartstuff[k_pogospring]) // Pogo Spring minimum/maximum thrust
|
||||||
{
|
{
|
||||||
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale);
|
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale /*+ (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale)*/;
|
||||||
const fixed_t minspeed = 24*hscale;
|
const fixed_t minspeed = 24*hscale;
|
||||||
const fixed_t maxspeed = 36*hscale;
|
const fixed_t maxspeed = 32*hscale;
|
||||||
|
|
||||||
if (newspeed > maxspeed && player->kartstuff[k_pogospring] == 2)
|
if (newspeed > maxspeed && player->kartstuff[k_pogospring] == 2)
|
||||||
newspeed = maxspeed;
|
newspeed = maxspeed;
|
||||||
|
|
|
@ -2587,6 +2587,10 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff)
|
||||||
if (P_PlayerTouchingSectorSpecial(thing->player, 1, 13)
|
if (P_PlayerTouchingSectorSpecial(thing->player, 1, 13)
|
||||||
|| GETSECSPECIAL(R_PointInSubsector(x, y)->sector->special, 1) == 13)
|
|| GETSECSPECIAL(R_PointInSubsector(x, y)->sector->special, 1) == 13)
|
||||||
maxstep <<= 1;
|
maxstep <<= 1;
|
||||||
|
// If using type Section1:14, no maxstep. For ledges you want the player to LAND on, not climb! (see: SMK VL2)
|
||||||
|
else if (P_PlayerTouchingSectorSpecial(thing->player, 1, 14)
|
||||||
|
|| GETSECSPECIAL(R_PointInSubsector(x, y)->sector->special, 1) == 14)
|
||||||
|
maxstep = 0;
|
||||||
|
|
||||||
// Don't 'step up' while springing,
|
// Don't 'step up' while springing,
|
||||||
// Only step up "if needed".
|
// Only step up "if needed".
|
||||||
|
|
12
src/p_spec.c
12
src/p_spec.c
|
@ -3621,7 +3621,7 @@ void P_ProcessSpecialSector(player_t *player, sector_t *sector, sector_t *rovers
|
||||||
player->powers[pw_spacetime] = spacetimetics + 1;
|
player->powers[pw_spacetime] = spacetimetics + 1;
|
||||||
break;
|
break;
|
||||||
case 13: // Ramp Sector (Increase step-up/down)
|
case 13: // Ramp Sector (Increase step-up/down)
|
||||||
case 14: // Non-Ramp Sector (Don't step-down)
|
case 14: // Non-Ramp Sector (Don't step-up/down)
|
||||||
case 15: // Bouncy Sector (FOF Control Only)
|
case 15: // Bouncy Sector (FOF Control Only)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -3756,8 +3756,8 @@ DoneSection2:
|
||||||
case 1: // SRB2kart: Spring Panel
|
case 1: // SRB2kart: Spring Panel
|
||||||
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
||||||
{
|
{
|
||||||
const fixed_t scale = mapheaderinfo[gamemap-1]->mobj_scale + abs(player->mo->scale - mapheaderinfo[gamemap-1]->mobj_scale);
|
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale);
|
||||||
const fixed_t minspeed = 24*scale;
|
const fixed_t minspeed = 24*hscale;
|
||||||
|
|
||||||
if (player->mo->eflags & MFE_SPRUNG)
|
if (player->mo->eflags & MFE_SPRUNG)
|
||||||
break;
|
break;
|
||||||
|
@ -3776,9 +3776,9 @@ DoneSection2:
|
||||||
case 3: // SRB2kart: Spring Panel (capped speed)
|
case 3: // SRB2kart: Spring Panel (capped speed)
|
||||||
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
||||||
{
|
{
|
||||||
const fixed_t scale = mapheaderinfo[gamemap-1]->mobj_scale + abs(player->mo->scale - mapheaderinfo[gamemap-1]->mobj_scale);
|
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale);
|
||||||
const fixed_t minspeed = 24*scale;
|
const fixed_t minspeed = 24*hscale;
|
||||||
const fixed_t maxspeed = 36*scale;
|
const fixed_t maxspeed = 32*hscale;
|
||||||
|
|
||||||
if (player->mo->eflags & MFE_SPRUNG)
|
if (player->mo->eflags & MFE_SPRUNG)
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in a new issue