mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-03-26 04:51:43 +00:00
Scale up Mushroom Hill Pole and remove speed requirement
This commit is contained in:
parent
cf2ab09845
commit
4543f10666
3 changed files with 6 additions and 6 deletions
|
|
@ -22960,7 +22960,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
|||
sfx_None, // deathsound
|
||||
8*FRACUNIT, // speed
|
||||
20*FRACUNIT, // radius
|
||||
64*FRACUNIT, // height
|
||||
128*FRACUNIT, // height
|
||||
0, // display offset
|
||||
0, // mass
|
||||
0, // damage
|
||||
|
|
|
|||
|
|
@ -84,18 +84,16 @@ void Obj_MushroomHillPolePlayerThink(player_t *player)
|
|||
void Obj_MushroomHillPoleTouch(mobj_t *pole, mobj_t *toucher)
|
||||
{
|
||||
player_t *player = toucher->player;
|
||||
fixed_t playerSpeed = FixedHypot(toucher->momx, toucher->momy);
|
||||
angle_t momentumAngle;
|
||||
|
||||
if (
|
||||
playerSpeed < FixedMul(pole->info->speed, pole->scale) // player is moving too slowly
|
||||
|| player->carry != CR_NONE // player is already being carried by something else
|
||||
player->carry != CR_NONE // player is already being carried by something else
|
||||
|| pole->tracer == toucher // pole just launched this player
|
||||
|| (
|
||||
!P_MobjWasRemoved(pole->target)
|
||||
&& pole->target->player
|
||||
&& pole->target->player->carry == CR_MUSHROOMHILLPOLE
|
||||
) // pole is already occupied by a player
|
||||
|| pole->tracer == toucher // pole just launched this player
|
||||
)
|
||||
{
|
||||
return;
|
||||
|
|
@ -104,7 +102,7 @@ void Obj_MushroomHillPoleTouch(mobj_t *pole, mobj_t *toucher)
|
|||
momentumAngle = K_MomentumAngle(toucher);
|
||||
|
||||
P_SetTarget(&pole->target, toucher);
|
||||
pole->movefactor = playerSpeed; // speed at which to spin around the pole
|
||||
pole->movefactor = max(FixedHypot(toucher->momx, toucher->momy), FixedMul(pole->info->speed, pole->scale)); // speed at which to spin around the pole
|
||||
pole->movedir = R_PointToAngle2(pole->x, pole->y, toucher->x, toucher->y); // angle at which to project the player from the pole
|
||||
pole->angle = toucher->angle + Easing_Linear(MOMENTUM_ANGLE_PROPORTION, 0, (INT32)(momentumAngle - toucher->angle)); // final launch angle
|
||||
pole->extravalue1 = (pole->movedir - momentumAngle < ANGLE_180) ? -1 : 1; // direction to spin around the pole
|
||||
|
|
|
|||
|
|
@ -11196,6 +11196,8 @@ fixed_t P_GetMobjDefaultScale(mobj_t *mobj)
|
|||
return 2*FRACUNIT;
|
||||
case MT_ANCIENTGEAR:
|
||||
return 3*FRACUNIT/2;
|
||||
case MT_MHPOLE:
|
||||
return 4*FRACUNIT;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue