diff --git a/src/objects/ufo.c b/src/objects/ufo.c index 3ed9614f4..a85383644 100644 --- a/src/objects/ufo.c +++ b/src/objects/ufo.c @@ -834,6 +834,14 @@ static UINT8 GetUFODamage(mobj_t *inflictor, UINT8 damageType) ret = 10; break; } + case MT_GARDENTOP: + { + // Garden Top is not classified as a "field + // item" because the player can ride it. So + // an explicit case is necessary. + ret = 10; + break; + } case MT_PLAYER: { // Players deal damage relative to how many sneakers they used. @@ -849,6 +857,11 @@ static UINT8 GetUFODamage(mobj_t *inflictor, UINT8 damageType) } default: { + // General hazards cannot damage the UFO + if (P_IsKartFieldItem(inflictor->type) == false) + { + return 0; + } break; } }