/* * Copyright (C) Volition, Inc. 1999. All rights reserved. * * All source code herein is the property of Volition, Inc. You may not sell * or otherwise commercially exploit the source or things you created based on the * source. * */ #ifndef _MULTI_PAUSE_HEADER_FILE #define _MULTI_PAUSE_HEADER_FILE // ---------------------------------------------------------------------------------- // PAUSE DEFINES/VARS // class UI_WINDOW; struct net_player; // state of the game (paused or not) on _my_ machine. Obviously this is important for the server // call multi_pause_reset() to reinitialize extern int Multi_pause_status; // who paused the game extern net_player *Multi_pause_pauser; extern int Multi_paused; // ---------------------------------------------------------------------------------- // PAUSE FUNCTIONS // // re-initializes the pause system. call before entering the mission to reset void multi_pause_reset(); // send a request to pause or unpause a game (all players should use this function) void multi_pause_request(int pause); // (client) call when receiving a packet indicating we should pause void multi_pause_pause(); // (client) call when receiving a packet indicating we should unpause void multi_pause_unpause(); // (server) evaluate a pause request from the given player (should call for himself as well) void multi_pause_server_eval_request(net_player *pl, int pause); // if we still want to eat keys int multi_pause_eat_keys(); // ---------------------------------------------------------------------------------- // PAUSE UI FUNCTIONS // // initialize multi pause screen void multi_pause_init(bool API_Access = false); // do frame for the multi pause screen void multi_pause_do(bool API_Access = false); // close the multi pause screen void multi_pause_close(int end_mission, bool API_Access = false); #endif