From 4e9144dd204c2239d98a9b9f4cab4b901a45416a Mon Sep 17 00:00:00 2001 From: "Richard C. Gobeille" Date: Thu, 11 Jun 2020 09:59:27 -0700 Subject: [PATCH] Duke3d: fix GREENSLIME issue introduced by 6335a9a2e515329a159b03ba0c8a32136dc6ac42 --- source/duke3d/src/actors.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/source/duke3d/src/actors.cpp b/source/duke3d/src/actors.cpp index 9c8554c0f..4f9873b97 100644 --- a/source/duke3d/src/actors.cpp +++ b/source/duke3d/src/actors.cpp @@ -4739,12 +4739,12 @@ ACTOR_STATIC void G_MoveActors(void) pSprite->cstat = (playerDist < 1596) ? 0 : 257; - if (pData[0] == GREENSLIME_ONPLAYER && pPlayer->somethingonplayer == spriteNum) + if (pData[0] == GREENSLIME_ONPLAYER) { - if (sprite[pPlayer->i].extra < 1) + if (sprite[pPlayer->i].extra < 1 && pPlayer->somethingonplayer == spriteNum) { pPlayer->somethingonplayer = -1; - pData[0] = GREENSLIME_DONEEATING; + pData[0] = GREENSLIME_TOFLOOR; goto next_sprite; } @@ -4827,10 +4827,9 @@ ACTOR_STATIC void G_MoveActors(void) goto next_sprite; } - else if (pSprite->xvel < 64 && playerDist < 768) { - if (pPlayer->somethingonplayer == -1) + if (pPlayer->somethingonplayer == -1 && sprite[pPlayer->i].extra > 0) { pPlayer->somethingonplayer = spriteNum;