From 3da44990d04b3c473178142e4171c721cd866a36 Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Sun, 14 Jan 2024 22:40:14 -0700 Subject: [PATCH 1/3] Orbital items only inflict stumble --- src/objects/orbinaut.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/objects/orbinaut.c b/src/objects/orbinaut.c index a158b9a93..e6dff18f5 100644 --- a/src/objects/orbinaut.c +++ b/src/objects/orbinaut.c @@ -212,8 +212,20 @@ boolean Obj_OrbinautJawzCollide(mobj_t *t1, mobj_t *t2) else { // Player Damage - P_DamageMobj(t2, t1, t1->target, 1, DMG_WOMBO | + if (t1->type == MT_ORBINAUT_SHIELD || t1->type == MT_JAWZ_SHIELD) + { + // Same hack as Instawhip! + // If you do this a third time, please make it a part of the damage system. + // ^ remove all of P_DamageMobj and start over + P_PlayRinglossSound(t2); + P_PlayerRingBurst(t2->player, 5); + P_DamageMobj(t2, t1, t1->target, 1, DMG_WOMBO | DMG_WHUMBLE); + } + else + { + P_DamageMobj(t2, t1, t1->target, 1, DMG_WOMBO | (tumbleitem ? DMG_TUMBLE : DMG_WIPEOUT)); + } K_KartBouncing(t2, t1); S_StartSound(t2, sfx_s3k7b); } From dad09dc86f1aa17a7bb367e679eda0d2dc2e1415 Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Sun, 14 Jan 2024 23:07:40 -0700 Subject: [PATCH 2/3] Don't attempt to stumble invinc/grow players (someone get a fire extinguisher) --- src/objects/orbinaut.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/objects/orbinaut.c b/src/objects/orbinaut.c index e6dff18f5..4b1792b10 100644 --- a/src/objects/orbinaut.c +++ b/src/objects/orbinaut.c @@ -212,14 +212,15 @@ boolean Obj_OrbinautJawzCollide(mobj_t *t1, mobj_t *t2) else { // Player Damage - if (t1->type == MT_ORBINAUT_SHIELD || t1->type == MT_JAWZ_SHIELD) + if ((t1->type == MT_ORBINAUT_SHIELD || t1->type == MT_JAWZ_SHIELD) + && !t2->player->invincibilitytimer && !K_IsBigger(t1, t2)) // UGH. Stumble ignores invinc. Fix this damage type someday. { // Same hack as Instawhip! // If you do this a third time, please make it a part of the damage system. // ^ remove all of P_DamageMobj and start over P_PlayRinglossSound(t2); P_PlayerRingBurst(t2->player, 5); - P_DamageMobj(t2, t1, t1->target, 1, DMG_WOMBO | DMG_WHUMBLE); + P_DamageMobj(t2, t1, t1->target, 1, DMG_WOMBO | DMG_STUMBLE); } else { From 5dd473330917362472db0bac9a75806ddc6c970a Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Sun, 14 Jan 2024 23:26:05 -0700 Subject: [PATCH 3/3] Fix inverted Grow check in orbital stumble --- src/objects/orbinaut.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/objects/orbinaut.c b/src/objects/orbinaut.c index 4b1792b10..22632d33e 100644 --- a/src/objects/orbinaut.c +++ b/src/objects/orbinaut.c @@ -213,7 +213,7 @@ boolean Obj_OrbinautJawzCollide(mobj_t *t1, mobj_t *t2) { // Player Damage if ((t1->type == MT_ORBINAUT_SHIELD || t1->type == MT_JAWZ_SHIELD) - && !t2->player->invincibilitytimer && !K_IsBigger(t1, t2)) // UGH. Stumble ignores invinc. Fix this damage type someday. + && !t2->player->invincibilitytimer && !K_IsBigger(t2, t1)) // UGH. Stumble ignores invinc. Fix this damage type someday. { // Same hack as Instawhip! // If you do this a third time, please make it a part of the damage system.