File diff r23482:de566f8c088d → r23483:3733e6b8ff17
src/misc_cmd.cpp
Show inline comments
 
@@ -151,43 +151,37 @@ CommandCost CmdPause(TileIndex tile, DoC
 
		case PM_PAUSED_SAVELOAD:
 
		case PM_PAUSED_ERROR:
 
		case PM_PAUSED_NORMAL:
 
		case PM_PAUSED_GAME_SCRIPT:
 
			break;
 

	
 
#ifdef ENABLE_NETWORK
 
		case PM_PAUSED_JOIN:
 
		case PM_PAUSED_ACTIVE_CLIENTS:
 
			if (!_networking) return CMD_ERROR;
 
			break;
 
#endif /* ENABLE_NETWORK */
 

	
 
		default: return CMD_ERROR;
 
	}
 
	if (flags & DC_EXEC) {
 
		if (p1 == PM_PAUSED_NORMAL && _pause_mode & PM_PAUSED_ERROR) {
 
			ShowQuery(
 
				STR_NEWGRF_UNPAUSE_WARNING_TITLE,
 
				STR_NEWGRF_UNPAUSE_WARNING,
 
				NULL,
 
				AskUnsafeUnpauseCallback
 
			);
 
		} else {
 
#ifdef ENABLE_NETWORK
 
			PauseMode prev_mode = _pause_mode;
 
#endif /* ENABLE_NETWORK */
 

	
 
			if (p2 == 0) {
 
				_pause_mode = _pause_mode & ~p1;
 
			} else {
 
				_pause_mode = _pause_mode | p1;
 
			}
 

	
 
#ifdef ENABLE_NETWORK
 
			NetworkHandlePauseChange(prev_mode, (PauseMode)p1);
 
#endif /* ENABLE_NETWORK */
 
		}
 

	
 
		SetWindowDirty(WC_STATUS_BAR, 0);
 
		SetWindowDirty(WC_MAIN_TOOLBAR, 0);
 
	}
 
	return CommandCost();