2 * Copyright (C) Volition, Inc. 1999. All rights reserved.
4 * All source code herein is the property of Volition, Inc. You may not sell
5 * or otherwise commercially exploit the source or things you created based on
10 #ifndef _FREESPACE_STANDALONE_SERVER_HEADER_FILE
11 #define _FREESPACE_STANDALONE_SERVER_HEADER_FILE
13 // ----------------------------------------------------------------------------------------
19 // ----------------------------------------------------------------------------------------
20 // generic dialog functions
23 // create the validate dialog
24 void std_create_gen_dialog(const char *title);
26 // kill the validate dialog();
27 void std_destroy_gen_dialog();
29 // set the text in the filename of the validate dialog
30 // valid values for field_num == 0 .. 2
31 void std_gen_set_text(const char *str, int field_num);
34 // ----------------------------------------------------------------------------------------
35 // connection page/tab functions
38 // set the text box indicating how many players are connected, returning the determined count
39 int std_connect_set_connect_count();
41 // set the connect status (connected or not) of the game host
42 void std_connect_set_host_connect_status();
44 // set the game name for the standalone. passing NULL uses the default
45 void std_connect_set_gamename(const char *name);
48 // ----------------------------------------------------------------------------------------
49 // multiplayer page/tab functions
52 // set the mission time in seconds
53 void std_multi_set_standalone_missiontime(float mission_time);
55 // set the mission name
56 void std_multi_set_standalone_mission_name(const char *mission_name);
58 // initialize the goal tree for this mission
59 void std_multi_setup_goal_tree();
61 // add all the goals from the current mission to the tree control
62 void std_multi_add_goals();
64 // update all the goals in the goal tree based upon the mission status
65 void std_multi_update_goals();
67 // update the netgame information area controls with the current Netgame settings
68 void std_multi_update_netgame_info_controls();
71 // ---------------------------------------------------------------------------------------
72 // player info page/tab functions
75 // start displaying info for the passed player on this page
76 void std_pinfo_display_player_info(net_player *p);
79 // ---------------------------------------------------------------------------------------
80 // debug page/tab functions
83 // set the text on the standalones state indicator box
84 void std_debug_set_standalone_state_string(const char *str);
87 // ---------------------------------------------------------------------------------------
91 // add a player and take care of updating all gui/data details
92 void std_add_player(net_player *p);
94 // remove a player and take care of updateing all gui/data details
95 int std_remove_player(net_player *p);
97 // set any relevant controls which display the framerate of the standalone
98 void std_set_standalone_fps(float fps);
100 // update any relveant controls which display the ping for the given player
101 void std_update_player_ping(net_player *p);
103 // reset all gui stuff for the standalone
104 void std_reset_standalone_gui();
106 // close down the standalone
107 void std_deinit_standalone();
109 // initialize the standalone
110 void std_init_standalone();
112 // do any gui related issues on the standalone (like periodically updating player stats, etc...)
113 void std_do_gui_frame();
115 // notify the user that the standalone has failed to login to the tracker on startup
116 void std_tracker_notify_login_fail();
118 // attempt to log the standalone into the tracker
119 void std_tracker_login();
121 // reset all stand gui timestamps
122 void std_reset_timestamps();
124 // add a line of text chat to the standalone
125 void std_add_chat_text(const char *text, int player_index, int add_id);
127 // if the standalone is host password protected
128 int std_is_host_passwd();
130 // if the given callsign is banned from the server
131 int std_player_is_banned(const char *name);
133 // add a callsign to the ban list
134 void std_add_ban(const char *name);