- Improve game_restart:
* differing screen resolutions and network settings are now honoured when changing fs_game * Fix hunk memory leak on game_restart * Move cls.state and cls.servername to clc so connection state is fully preserved over game_restart * Revert back to previous fs_game after disconnecting from a server that triggered a game_restart * Fix error dialog popping up after every game_restart if an error happened previously (reported by Ensiform) - Fixed that not all commands added by CL_Init() would be removed by CL_Shutdown()
This commit is contained in:
parent
adc143e050
commit
dee3724a13
17 changed files with 354 additions and 191 deletions
|
@ -72,7 +72,7 @@ Con_ToggleConsole_f
|
|||
*/
|
||||
void Con_ToggleConsole_f (void) {
|
||||
// Can't toggle the console when it's the only thing available
|
||||
if ( cls.state == CA_DISCONNECTED && Key_GetCatcher( ) == KEYCATCH_CONSOLE ) {
|
||||
if ( clc.state == CA_DISCONNECTED && Key_GetCatcher( ) == KEYCATCH_CONSOLE ) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -343,6 +343,21 @@ void Con_Init (void) {
|
|||
Cmd_SetCommandCompletionFunc( "condump", Cmd_CompleteTxtName );
|
||||
}
|
||||
|
||||
/*
|
||||
================
|
||||
Con_Shutdown
|
||||
================
|
||||
*/
|
||||
void Con_Shutdown(void)
|
||||
{
|
||||
Cmd_RemoveCommand("toggleconsole");
|
||||
Cmd_RemoveCommand("messagemode");
|
||||
Cmd_RemoveCommand("messagemode2");
|
||||
Cmd_RemoveCommand("messagemode3");
|
||||
Cmd_RemoveCommand("messagemode4");
|
||||
Cmd_RemoveCommand("clear");
|
||||
Cmd_RemoveCommand("condump");
|
||||
}
|
||||
|
||||
/*
|
||||
===============
|
||||
|
@ -487,7 +502,7 @@ Draw the editline after a ] prompt
|
|||
void Con_DrawInput (void) {
|
||||
int y;
|
||||
|
||||
if ( cls.state != CA_DISCONNECTED && !(Key_GetCatcher( ) & KEYCATCH_CONSOLE ) ) {
|
||||
if ( clc.state != CA_DISCONNECTED && !(Key_GetCatcher( ) & KEYCATCH_CONSOLE ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -704,7 +719,7 @@ void Con_DrawConsole( void ) {
|
|||
Con_CheckResize ();
|
||||
|
||||
// if disconnected, render console full screen
|
||||
if ( cls.state == CA_DISCONNECTED ) {
|
||||
if ( clc.state == CA_DISCONNECTED ) {
|
||||
if ( !( Key_GetCatcher( ) & (KEYCATCH_UI | KEYCATCH_CGAME)) ) {
|
||||
Con_DrawSolidConsole( 1.0 );
|
||||
return;
|
||||
|
@ -715,7 +730,7 @@ void Con_DrawConsole( void ) {
|
|||
Con_DrawSolidConsole( con.displayFrac );
|
||||
} else {
|
||||
// draw notify lines
|
||||
if ( cls.state == CA_ACTIVE ) {
|
||||
if ( clc.state == CA_ACTIVE ) {
|
||||
Con_DrawNotify ();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue