mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-12-27 04:41:23 +00:00
Mine updates
- Increase gravity of super-forward throws - Revert explosion radius change - Nerf generic explosion stun (SPB explosion stun is identical)
This commit is contained in:
parent
5760e106e5
commit
36a7e88e63
3 changed files with 21 additions and 8 deletions
|
@ -15577,7 +15577,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
0, // reactiontime
|
0, // reactiontime
|
||||||
sfx_None, // attacksound
|
sfx_None, // attacksound
|
||||||
S_NULL, // painstate
|
S_NULL, // painstate
|
||||||
128*FRACUNIT, // painchance
|
192*FRACUNIT, // painchance
|
||||||
sfx_None, // painsound
|
sfx_None, // painsound
|
||||||
S_NULL, // meleestate
|
S_NULL, // meleestate
|
||||||
S_NULL, // missilestate
|
S_NULL, // missilestate
|
||||||
|
@ -15604,7 +15604,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
8, // reactiontime
|
8, // reactiontime
|
||||||
sfx_None, // attacksound
|
sfx_None, // attacksound
|
||||||
S_NULL, // painstate
|
S_NULL, // painstate
|
||||||
128*FRACUNIT, // painchance
|
192*FRACUNIT, // painchance
|
||||||
sfx_None, // painsound
|
sfx_None, // painsound
|
||||||
S_NULL, // meleestate
|
S_NULL, // meleestate
|
||||||
S_NULL, // missilestate
|
S_NULL, // missilestate
|
||||||
|
|
19
src/k_kart.c
19
src/k_kart.c
|
@ -2217,6 +2217,7 @@ void K_ExplodePlayer(player_t *player, mobj_t *source, mobj_t *inflictor) // A b
|
||||||
#ifdef HAVE_BLUA
|
#ifdef HAVE_BLUA
|
||||||
boolean force = false; // Used to check if Lua ShouldExplode should get us damaged reguardless of flashtics or heck knows what.
|
boolean force = false; // Used to check if Lua ShouldExplode should get us damaged reguardless of flashtics or heck knows what.
|
||||||
UINT8 shouldForce = LUAh_ShouldExplode(player, inflictor, source);
|
UINT8 shouldForce = LUAh_ShouldExplode(player, inflictor, source);
|
||||||
|
|
||||||
if (P_MobjWasRemoved(player->mo))
|
if (P_MobjWasRemoved(player->mo))
|
||||||
return; // mobj was removed (in theory that shouldn't happen)
|
return; // mobj was removed (in theory that shouldn't happen)
|
||||||
if (shouldForce == 1)
|
if (shouldForce == 1)
|
||||||
|
@ -2227,6 +2228,7 @@ void K_ExplodePlayer(player_t *player, mobj_t *source, mobj_t *inflictor) // A b
|
||||||
#else
|
#else
|
||||||
static const boolean force = false;
|
static const boolean force = false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (G_BattleGametype())
|
if (G_BattleGametype())
|
||||||
{
|
{
|
||||||
if (K_IsPlayerWanted(player))
|
if (K_IsPlayerWanted(player))
|
||||||
|
@ -2308,13 +2310,13 @@ void K_ExplodePlayer(player_t *player, mobj_t *source, mobj_t *inflictor) // A b
|
||||||
}
|
}
|
||||||
|
|
||||||
player->kartstuff[k_spinouttype] = 1;
|
player->kartstuff[k_spinouttype] = 1;
|
||||||
player->kartstuff[k_spinouttimer] = 2*TICRATE+(TICRATE/2);
|
player->kartstuff[k_spinouttimer] = (3*TICRATE/2)+2;
|
||||||
|
|
||||||
player->powers[pw_flashing] = K_GetKartFlashing(player);
|
player->powers[pw_flashing] = K_GetKartFlashing(player);
|
||||||
|
|
||||||
if (inflictor && inflictor->type == MT_SPBEXPLOSION && inflictor->extravalue1)
|
if (inflictor && inflictor->type == MT_SPBEXPLOSION && inflictor->extravalue1)
|
||||||
{
|
{
|
||||||
player->kartstuff[k_spinouttimer] = ((3*player->kartstuff[k_spinouttimer])/2)+1;
|
player->kartstuff[k_spinouttimer] = ((5*player->kartstuff[k_spinouttimer])/2)+1;
|
||||||
player->mo->momz *= 2;
|
player->mo->momz *= 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3048,12 +3050,19 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
||||||
{
|
{
|
||||||
if (altthrow == 2) // Kitchen sink throwing
|
if (altthrow == 2) // Kitchen sink throwing
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
if (player->kartstuff[k_throwdir] == 1)
|
if (player->kartstuff[k_throwdir] == 1)
|
||||||
dir = 3;
|
dir = 3;
|
||||||
else if (player->kartstuff[k_throwdir] == -1)
|
else if (player->kartstuff[k_throwdir] == -1)
|
||||||
dir = 1;
|
dir = 1;
|
||||||
else
|
else
|
||||||
dir = 2;
|
dir = 2;
|
||||||
|
#else
|
||||||
|
if (player->kartstuff[k_throwdir] == 1)
|
||||||
|
dir = 2;
|
||||||
|
else
|
||||||
|
dir = 1;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -3129,10 +3138,12 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
||||||
angle_t fa = player->mo->angle>>ANGLETOFINESHIFT;
|
angle_t fa = player->mo->angle>>ANGLETOFINESHIFT;
|
||||||
fixed_t HEIGHT = (20 + (dir*10))*mapobjectscale + player->mo->momz;
|
fixed_t HEIGHT = (20 + (dir*10))*mapobjectscale + player->mo->momz;
|
||||||
|
|
||||||
mo->momx = player->mo->momx + FixedMul(FINECOSINE(fa), PROJSPEED);
|
mo->momx = player->mo->momx + FixedMul(FINECOSINE(fa), PROJSPEED*dir);
|
||||||
mo->momy = player->mo->momy + FixedMul(FINESINE(fa), PROJSPEED);
|
mo->momy = player->mo->momy + FixedMul(FINESINE(fa), PROJSPEED*dir);
|
||||||
mo->momz = P_MobjFlip(player->mo) * HEIGHT;
|
mo->momz = P_MobjFlip(player->mo) * HEIGHT;
|
||||||
|
|
||||||
|
mo->extravalue2 = dir;
|
||||||
|
|
||||||
if (mo->eflags & MFE_UNDERWATER)
|
if (mo->eflags & MFE_UNDERWATER)
|
||||||
mo->momz = (117 * mo->momz) / 200;
|
mo->momz = (117 * mo->momz) / 200;
|
||||||
|
|
||||||
|
|
|
@ -1404,11 +1404,13 @@ fixed_t P_GetMobjGravity(mobj_t *mo)
|
||||||
break;
|
break;
|
||||||
case MT_BANANA:
|
case MT_BANANA:
|
||||||
case MT_EGGMANITEM:
|
case MT_EGGMANITEM:
|
||||||
|
case MT_SSMINE:
|
||||||
|
case MT_SINK:
|
||||||
|
gravityadd *= mo->extravalue2;
|
||||||
|
/* FALLTHRU */
|
||||||
case MT_ORBINAUT:
|
case MT_ORBINAUT:
|
||||||
case MT_JAWZ:
|
case MT_JAWZ:
|
||||||
case MT_JAWZ_DUD:
|
case MT_JAWZ_DUD:
|
||||||
case MT_SSMINE:
|
|
||||||
case MT_SINK:
|
|
||||||
gravityadd = (5*gravityadd)/2;
|
gravityadd = (5*gravityadd)/2;
|
||||||
break;
|
break;
|
||||||
case MT_SIGN:
|
case MT_SIGN:
|
||||||
|
|
Loading…
Reference in a new issue