From 1fd0c279d7ef77308d11cbeafafba3532d96923f Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Fri, 15 May 2020 00:32:11 +0200 Subject: [PATCH] - fixed some bugs. --- source/games/duke/src/actors_d.cpp | 6 ++++++ source/games/duke/src/gameexec.cpp | 1 - source/games/duke/src/zz_gameexec.cpp | 13 +------------ 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/source/games/duke/src/actors_d.cpp b/source/games/duke/src/actors_d.cpp index 0b4c4fafe..a1eec057b 100644 --- a/source/games/duke/src/actors_d.cpp +++ b/source/games/duke/src/actors_d.cpp @@ -287,10 +287,16 @@ SKIPWALLCHECK: if (isWorldTour()) { if (sprite[s->owner].picnum == APLAYER && sj->picnum == APLAYER && ud.coop != 0 && ud.ffire == 0 && s->owner != j) + { + j = nextj; continue; + } if (s->picnum == FLAMETHROWERFLAME && ((sprite[s->owner].picnum == FIREFLY && sj->picnum == FIREFLY) || (sprite[s->owner].picnum == BOSS5 && sj->picnum == BOSS5))) + { + j = nextj; continue; + } } if (x == 0 || x >= 5 || AFLAMABLE(sj->picnum)) diff --git a/source/games/duke/src/gameexec.cpp b/source/games/duke/src/gameexec.cpp index de69ab824..ce7640c3e 100644 --- a/source/games/duke/src/gameexec.cpp +++ b/source/games/duke/src/gameexec.cpp @@ -506,7 +506,6 @@ int parse(void) insptr++; if (!S_CheckSoundPlaying(g_i, *insptr++)) A_PlaySound(*(insptr - 1), g_i); - insptr++; break; case concmd_stopsound: insptr++; diff --git a/source/games/duke/src/zz_gameexec.cpp b/source/games/duke/src/zz_gameexec.cpp index c97c6264d..f23c346af 100644 --- a/source/games/duke/src/zz_gameexec.cpp +++ b/source/games/duke/src/zz_gameexec.cpp @@ -483,18 +483,6 @@ void VM_Execute(native_t loop) A_PlaySound(ambientlotag[vm.pSprite->ang], vm.spriteNum); continue; - case concmd_soundonce: - if (EDUKE32_PREDICT_FALSE((unsigned)*(++insptr) >= MAXSOUNDS)) - { - CON_ERRPRINTF("invalid sound %d\n", (int32_t)*insptr++); - continue; - } - - if (!S_CheckSoundPlaying(vm.spriteNum, *insptr++)) - A_PlaySound(*(insptr - 1), vm.spriteNum); - - continue; - case concmd_stopsound: if (EDUKE32_PREDICT_FALSE((unsigned)*(++insptr) >= MAXSOUNDS)) { @@ -654,6 +642,7 @@ void VM_Execute(native_t loop) ud.eog = 1; continue; + case concmd_soundonce: case concmd_isdrunk: case concmd_strafeleft: case concmd_straferight: