G_Responder: Call HU_Responder in Playing(), instead of a whitelisted set of gamestates
Neatly sidesteps a class of bugs where whenever we added a new gamestate accessible in netplay, chat was console-only.
This commit is contained in:
parent
7ebda658f6
commit
e30b0c273d
1 changed files with 8 additions and 31 deletions
39
src/g_game.c
39
src/g_game.c
|
|
@ -2243,13 +2243,20 @@ boolean G_Responder(event_t *ev)
|
|||
return false;
|
||||
}
|
||||
|
||||
if (gamestate == GS_LEVEL)
|
||||
if (Playing())
|
||||
{
|
||||
// If you're playing, chat is real.
|
||||
// Neatly sidesteps a class of bugs where whenever we add a
|
||||
// new gamestate accessible in netplay, chat was console-only.
|
||||
if (HU_Responder(ev))
|
||||
{
|
||||
hu_keystrokes = true;
|
||||
return true; // chat ate the event
|
||||
}
|
||||
}
|
||||
|
||||
if (gamestate == GS_LEVEL)
|
||||
{
|
||||
if (AM_Responder(ev))
|
||||
return true; // automap ate it
|
||||
// map the event (key/mouse/joy) to a gamecontrol
|
||||
|
|
@ -2265,12 +2272,6 @@ boolean G_Responder(event_t *ev)
|
|||
}
|
||||
else if (gamestate == GS_CUTSCENE)
|
||||
{
|
||||
if (HU_Responder(ev))
|
||||
{
|
||||
hu_keystrokes = true;
|
||||
return true; // chat ate the event
|
||||
}
|
||||
|
||||
if (F_CutsceneResponder(ev))
|
||||
{
|
||||
D_StartTitle();
|
||||
|
|
@ -2279,12 +2280,6 @@ boolean G_Responder(event_t *ev)
|
|||
}
|
||||
else if (gamestate == GS_CREDITS) // todo: keep ending here?
|
||||
{
|
||||
if (HU_Responder(ev))
|
||||
{
|
||||
hu_keystrokes = true;
|
||||
return true; // chat ate the event
|
||||
}
|
||||
|
||||
if (F_CreditResponder(ev))
|
||||
{
|
||||
// Skip credits for everyone
|
||||
|
|
@ -2297,12 +2292,6 @@ boolean G_Responder(event_t *ev)
|
|||
}
|
||||
else if (gamestate == GS_BLANCREDITS)
|
||||
{
|
||||
if (HU_Responder(ev))
|
||||
{
|
||||
hu_keystrokes = true;
|
||||
return true; // chat ate the event
|
||||
}
|
||||
|
||||
if (F_CreditResponder(ev))
|
||||
{
|
||||
// Skip credits for everyone
|
||||
|
|
@ -2315,12 +2304,6 @@ boolean G_Responder(event_t *ev)
|
|||
}
|
||||
else if (gamestate == GS_SECRETCREDITS)
|
||||
{
|
||||
if (HU_Responder(ev))
|
||||
{
|
||||
hu_keystrokes = true;
|
||||
return true; // chat ate the event
|
||||
}
|
||||
|
||||
if (F_CreditResponder(ev))
|
||||
{
|
||||
// Skip credits for everyone
|
||||
|
|
@ -2331,12 +2314,6 @@ boolean G_Responder(event_t *ev)
|
|||
return true;
|
||||
}
|
||||
}
|
||||
else if (gamestate == GS_INTERMISSION || gamestate == GS_VOTING || gamestate == GS_EVALUATION)
|
||||
if (HU_Responder(ev))
|
||||
{
|
||||
hu_keystrokes = true;
|
||||
return true; // chat ate the event
|
||||
}
|
||||
|
||||
// allow spy mode changes even during the demo
|
||||
if (gamestate == GS_LEVEL && ev->type == ev_keydown
|
||||
|
|
|
|||
Loading…
Reference in a new issue