mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Downgrade damage when tripwire lenient
This commit is contained in:
parent
f2c92efa67
commit
91b15905d2
1 changed files with 24 additions and 4 deletions
|
|
@ -3190,7 +3190,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
||||||
damage = 0;
|
damage = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean hitFromInvinc = false;
|
boolean softenTumble = false;
|
||||||
|
|
||||||
// Sting and stumble shouldn't be rewarding Battle hits.
|
// Sting and stumble shouldn't be rewarding Battle hits.
|
||||||
if (type == DMG_STING || type == DMG_STUMBLE)
|
if (type == DMG_STING || type == DMG_STUMBLE)
|
||||||
|
|
@ -3212,7 +3212,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
||||||
{
|
{
|
||||||
tic_t kinvextend;
|
tic_t kinvextend;
|
||||||
|
|
||||||
hitFromInvinc = true;
|
softenTumble = true;
|
||||||
|
|
||||||
if (gametyperules & GTR_CLOSERPLAYERS)
|
if (gametyperules & GTR_CLOSERPLAYERS)
|
||||||
kinvextend = 2*TICRATE;
|
kinvextend = 2*TICRATE;
|
||||||
|
|
@ -3332,6 +3332,26 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
||||||
K_PopPlayerShield(player);
|
K_PopPlayerShield(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!(gametyperules & GTR_SPHERES) && player->tripwireLeniency)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case DMG_EXPLODE:
|
||||||
|
type = DMG_TUMBLE;
|
||||||
|
break;
|
||||||
|
case DMG_TUMBLE:
|
||||||
|
softenTumble = true;
|
||||||
|
break;
|
||||||
|
case DMG_NORMAL:
|
||||||
|
type = DMG_STUMBLE;
|
||||||
|
player->ringburst += 5; // THERE IS SIMPLY NO HOPE AT THIS POINT
|
||||||
|
K_PopPlayerShield(player);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case DMG_STING:
|
case DMG_STING:
|
||||||
|
|
@ -3345,7 +3365,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
||||||
ringburst = 0;
|
ringburst = 0;
|
||||||
break;
|
break;
|
||||||
case DMG_TUMBLE:
|
case DMG_TUMBLE:
|
||||||
K_TumblePlayer(player, inflictor, source, hitFromInvinc);
|
K_TumblePlayer(player, inflictor, source, softenTumble);
|
||||||
ringburst = 10;
|
ringburst = 10;
|
||||||
break;
|
break;
|
||||||
case DMG_EXPLODE:
|
case DMG_EXPLODE:
|
||||||
|
|
@ -3389,7 +3409,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
||||||
if (gametyperules & GTR_BUMPERS)
|
if (gametyperules & GTR_BUMPERS)
|
||||||
player->spheres = min(player->spheres + 10, 40);
|
player->spheres = min(player->spheres + 10, 40);
|
||||||
|
|
||||||
if ((hardhit == true && !hitFromInvinc) || cv_kartdebughuddrop.value)
|
if ((hardhit == true && !softenTumble) || cv_kartdebughuddrop.value)
|
||||||
{
|
{
|
||||||
K_DropItems(player);
|
K_DropItems(player);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue