- the resuming of the conversation interrupted by a slideshow must be performed by the game action handler

If this is done within the intermission code, both intermission and menu will write to the same global variables and destroy their data, this became very apparent when it altered the screen scale for the conversation.

# Conflicts:
#	src/g_game.cpp
This commit is contained in:
Christoph Oelckers 2019-04-05 00:59:32 +02:00 committed by drfrag
parent 25fc00f64c
commit 943991ff89
3 changed files with 8 additions and 1 deletions

View file

@ -75,6 +75,7 @@ enum gameaction_t : int
ga_screenshot,
ga_togglemap,
ga_fullconsole,
ga_resumeconversation,
};

View file

@ -89,6 +89,7 @@
#include "vm.h"
#include "dobjgc.h"
#include "gi.h"
#include "p_conversation.h"
#include <zlib.h>
@ -1118,6 +1119,11 @@ void G_Ticker ()
AM_ToggleMap ();
gameaction = ga_nothing;
break;
case ga_resumeconversation:
P_ResumeConversation ();
gameaction = ga_nothing;
break;
default:
case ga_nothing:
break;
}

View file

@ -839,7 +839,7 @@ void DIntermissionController::Ticker ()
S_ChangeMusic (level.Music, level.musicorder);
gamestate = GS_LEVEL;
wipegamestate = GS_LEVEL;
P_ResumeConversation ();
gameaction = ga_resumeconversation;
viewactive = true;
Destroy();
break;