Merge branch 'blankart-dev' into newinput

This commit is contained in:
NepDisk 2025-03-13 04:02:09 -04:00
commit 793bd45ebb
5 changed files with 64 additions and 7 deletions

View file

@ -914,10 +914,13 @@ static const char *blancredits[] = {
"\"WumboSpasm\"",
"",
"\1External Programming",
"\"Hanicef\"",
"\"Lactozilla\"",
"\"xyzzy\"",
"\"SuperJustinBros\"",
"",
"\1Ring Racers Programming",
"\"JugadorXEI\"",
"Kart Krew Dev",
"",
"\1New Graphics Creation",

View file

@ -809,6 +809,7 @@ boolean K_KitchenSinkCollide(mobj_t *t1, mobj_t *t2)
K_StatPlayerSink(t1->player, P_MobjWasRemoved(t2->target) ? NULL : t2->target->player);
S_StartSound(NULL, sfx_bsnipe); //let all players hear it.
S_StartSound(NULL, sfx_cgot); //let all players hear it.
HU_SetCEchoFlags(0);
@ -816,6 +817,7 @@ boolean K_KitchenSinkCollide(mobj_t *t1, mobj_t *t2)
HU_DoCEcho(va("%s\\was hit by a kitchen sink.\\\\\\\\", player_names[t2->player-players]));
I_OutputMsg("%s was hit by a kitchen sink.\n", player_names[t2->player-players]);
P_PlayerRingBurst(t2->player, t2->player->rings);
P_DamageMobj(t2, t1, t1->target, 1, DMG_INSTAKILL);
P_KillMobj(t1, t2, t2, DMG_NORMAL);
}

View file

@ -3746,7 +3746,7 @@ void K_ApplyTripWire(player_t *player, tripwirestate_t state)
INT32 K_ExplodePlayer(player_t *player, mobj_t *inflictor, mobj_t *source) // A bit of a hack, we just throw the player up higher here and extend their spinout timer
{
INT32 ringburst = 10;
INT32 ringburst = 5;
(void)source;
@ -3766,7 +3766,7 @@ INT32 K_ExplodePlayer(player_t *player, mobj_t *inflictor, mobj_t *source) // A
{
player->spinouttimer = ((5*player->spinouttimer)/2)+1;
player->mo->momz *= 2;
ringburst = 20;
ringburst = 10;
}
}
@ -5363,7 +5363,6 @@ void K_DropHnextList(player_t *player, boolean keepshields)
break;
case KSHIELD_FLAME:
S_StartSound(player->mo, sfx_s3k47);
player->flametimer = 0;
break;
}

View file

@ -3643,7 +3643,7 @@ void A_AttractChase(mobj_t *actor)
actor->threshold--;
// Rings flicker before disappearing
if (actor->fuse && actor->fuse < 5*TICRATE && (leveltime & 1))
if (actor->fuse && actor->fuse < 2*TICRATE && (leveltime & 1))
actor->renderflags |= RF_DONTDRAW;
else
actor->renderflags &= ~RF_DONTDRAW;

View file

@ -2161,7 +2161,6 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
{
const UINT8 type = (damagetype & DMG_TYPEMASK);
const boolean explosioncombo = (type == DMG_EXPLODE); // This damage type can do evil stuff like ALWAYS combo
INT16 ringburst = 5;
// Check if the player is allowed to be damaged!
// If not, then spawn the instashield effect instead.
@ -2241,21 +2240,75 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
player->sneakertimer = 0;
player->driftboost = 0;
player->bubblepop = 0;
player->flametimer = 0;
//player->flamestore = 0
//player->flamedash = 0;
player->ringboost = 0;
player->glanceDir = 0;
player->pflags &= ~PF_GAINAX;
INT16 ringburst = 3;
// Handle ringloss based on hittype.
if (inflictor)
{
switch(inflictor->type)
{
case MT_BANANA:
if (inflictor->health > 1)
{
// Sniped!
ringburst = 10;
}
else
// FALLTHRU
case MT_BALLHOG:
case MT_BANANA_SHIELD:
ringburst = 3;
break;
case MT_ORBINAUT:
case MT_ORBINAUT_SHIELD:
case MT_JAWZ:
case MT_JAWZ_DUD:
case MT_JAWZ_SHIELD:
ringburst = 5;
break;
case MT_PLAYER:
if (inflictor->player)
{
if (inflictor->player->invincibilitytimer)
{
// Hit by invincibility
ringburst = 5;
}
}
break;
default:
ringburst = 3;
break;
}
}
switch (type)
{
case DMG_EXPLODE:
case DMG_KARMA:
// 10 on SPB hit, 5 on normal explosion
ringburst = K_ExplodePlayer(player, inflictor, source);
LUA_HookPlayerExplode(target, inflictor, source, damage, damagetype);
break;
case DMG_SQUISH:
if (inflictor)
{
// Squished by player or object
ringburst = 5;
}
K_SquishPlayer(player, inflictor, source);
LUA_HookPlayerSquish(target, inflictor, source, damage, damagetype);
ringburst = 5;
break;
case DMG_WIPEOUT:
if (P_IsDisplayPlayer(player))
@ -2422,6 +2475,6 @@ void P_PlayerRingBurst(player_t *player, INT32 num_rings)
for (i = 0; i < num_fling_rings; i++)
{
P_FlingBurst(player, fa, MT_FLINGRING, 60*TICRATE, FRACUNIT, i);
P_FlingBurst(player, fa, MT_FLINGRING, 20*TICRATE, FRACUNIT, i);
}
}