62 #define OM_MODE_NONE -1 // no mode (unintialized)
63 #define OM_MODE_GENERAL 0 // general tab
64 #define OM_MODE_VOX 1 // voice tab
68 #define OM_NOTIFY_TIME 8000
69 #define OM_NOTIFY_Y 430
70 #define OM_NOTIFY_Y2 440
88 #define OM_PRO_NUM_BUTTONS 10
92 #define OM_PRO_SCROLL_IP_UP 2
93 #define OM_PRO_SCROLL_IP_DOWN 3
94 #define OM_PRO_ADD_IP 4
95 #define OM_PRO_DELETE_IP 5
96 #define OM_PRO_LOCAL_BROADCAST 6
98 #define OM_PRO_VOX_TAB 8
99 #define OM_PRO_GEN_TAB 9
131 #define OM_PRO_NUM_TEXT 12
198 #define TRACKER_FOCUS_NONE 0
199 #define TRACKER_FOCUS_LOGIN 1
200 #define TRACKER_FOCUS_PASSWORD 2
201 #define TRACKER_FOCUS_SQUADRON 3
202 static int Om_tracker_focus = 0;
205 #define IP_STRING_LEN 255
206 #define MAX_IP_ADDRS 100
208 #define IP_CONFIG_FNAME NOX("Tcp.cfg")
210 #define IP_EMPTY_STRING ""
300 #define OM_GEN_NUM_BUTTONS 10
302 #define OM_GEN_OBJ_LOW 0
303 #define OM_GEN_OBJ_MED 1
304 #define OM_GEN_OBJ_HIGH 2
305 #define OM_GEN_OBJ_LAN 3
306 #define OM_GEN_PIX_YES 4
307 #define OM_GEN_PIX_NO 5
308 #define OM_GEN_XFER_MULTIDATA_YES 6
309 #define OM_GEN_XFER_MULTIDATA_NO 7
310 #define OM_GEN_FLUSH_NO 8
311 #define OM_GEN_FLUSH_YES 9
343 #define OM_GEN_NUM_TEXT 14
411 #define OM_VOX_NUM_BUTTONS 6
413 #define OM_VOX_VOICE_TEST 0
414 #define OM_VOX_VOICE_YES 1
415 #define OM_VOX_VOICE_NO 2
416 #define OM_VOX_PLIST_UP 3
417 #define OM_VOX_PLIST_DOWN 4
418 #define OM_VOX_VOICE_MUTE 5
442 #define OM_VOX_NUM_TEXT 6
462 #define NUM_OM_VOX_SLIDERS 1
463 #define OM_VOX_QOS_SLIDER 0
467 op_sliders(
"OVB_18", 429, 162, -1, -1, 18, 20, 10, NULL, -1, -1, -1, NULL, -1, -1, -1),
470 op_sliders(
"2_OVB_18", 686, 259, -1, -1, 18, 31, 10, NULL, -1, -1, -1, NULL, -1, -1, -1),
492 #define OM_VOX_BUF_SIZE (1<<12)
493 #define OM_VOX_COMP_SIZE ((1<<15) + (1<<14))
495 #define OM_VOX_WAVE_Y 240
496 #define OM_VOX_WAVE_WIDTH 300
498 #define OM_VOX_DROP_ICON_X 100
499 #define OM_VOX_DROP_ICON_Y 100
501 #define OM_VOX_RECORD_INT 175
512 #define OM_VOX_TEST_NONE -1
513 #define OM_VOX_TEST_RECORDING 0
514 #define OM_VOX_TEST_PLAYBACK 1
577 nprintf((
"Network",
"Error loading options background %s\n",Om_background_0_fname[
gr_screen.
res]));
582 nprintf((
"Network",
"Error loading options background %s\n",Om_background_1_fname[
gr_screen.
res]));
588 nprintf((
"Network",
"Error loading options background mask %s\n",Om_background_0_mask_fname[
gr_screen.
res]));
593 nprintf((
"Network",
"Error loading options background mask %s\n",Om_background_1_mask_fname[
gr_screen.
res]));
638 const char *p_str[3];
662 for(idx=0;idx<line_count;idx++){
663 memset(line, 0, 255);
664 strncpy(line, p_str[idx], n_chars[idx]);
669 y_start += line_height;
681 Assert(Om_window != NULL);
736 Om_tracker_login.
hide();
738 Om_tracker_passwd.
hide();
740 Om_tracker_squad_name.
hide();
741 Om_tracker_squad_name.
disable();
774 Om_tracker_login.
enable();
775 Om_tracker_passwd.
enable();
776 Om_tracker_squad_name.
enable();
778 Om_tracker_login.
unhide();
779 Om_tracker_passwd.
unhide();
780 Om_tracker_squad_name.
unhide();
877 }
else if(Om_tracker_passwd.
has_focus()){
879 }
else if(Om_tracker_squad_name.
has_focus()){
911 }
else if (Om_tracker_passwd.
has_focus()) {
916 }
else if (Om_tracker_squad_name.
has_focus()) {
1051 Om_tracker_login.
enable();
1052 Om_tracker_passwd.
enable();
1053 Om_tracker_squad_name.
enable();
1057 Om_tracker_squad_name.
disable();
1133 nprintf((
"Network",
"Error loading tcp.cfg file!\n"));
1138 while(!
cfeof(file)){
1143 if(line[strlen(line) - 1] ==
'\n'){
1144 line[strlen(line) - 1] =
'\0';
1148 if((line[0] ==
'\0') || (line[0] ==
'\n') )
1152 nprintf((
"Network",
"Invalid ip string (%s)\n",line));
1172 nprintf((
"Network",
"Error loading tcp.cfg file\n"));
1217 y_start += line_height;
1279 if(Om_num_ips <= 0){
1332 if(Om_num_ips == 1){
1348 Assert(Om_window != NULL);
1386 Om_gen_bogus.
hide();
1632 Assert(Om_window != NULL);
1665 Om_vox_plist_button.
hide();
1670 Om_vox_players[
idx] = NULL;
1716 Om_vox_plist_button.
disable();
1719 Om_vox_bogus.
hide();
1745 Om_vox_player_select = Om_vox_players[0];
1749 Om_vox_plist_button.
enable();
1771 int voice_pref_flags;
1780 voice_pref_flags = 0xffffffff;
1911 if(Om_vox_player_select != NULL){
1939 options_multi_add_notify(
XSTR(
"DirectSoundCapture could not be initialized. To initialize DirectSoundCapture your sound card must be full duplex and your sound card drivers must support DirectSoundCapture", 392));
1966 int idx,a_idx,running_avg;
1995 for(idx=0; idx < c_width; idx++){
1998 for(a_idx = 0; a_idx < avg_len; a_idx++){
2005 running_avg /= avg_len;
2025 for(idx=0; idx < c_width; idx++){
2028 for(a_idx = 0; a_idx < avg_len; a_idx++){
2037 running_avg /= avg_len;
2048 int y_start,p_count;
2049 int selected_index,click_y;
2055 if(Om_vox_plist_button.
pressed()){
2060 if(Om_vox_players[selected_index] != NULL){
2061 Om_vox_player_select = Om_vox_players[selected_index];
2071 if(Om_vox_players[idx] != NULL){
2073 if(Om_vox_players[idx] == Om_vox_player_select){
2080 strcpy_s(str,Om_vox_players[idx]->m_player->callsign);
2087 y_start += line_height;
2106 if(pl == Om_vox_players[idx]){
2150 Om_window = options_window;
2340 if ( (sound_buf == NULL) || (buf_size <= 0) ) {
void create(UI_WINDOW *wnd, int _x, int _y, int _num_pos, char *bm_slider, int slider_mask, char *bm_left=NULL, int left_mask=-1, int left_x=-1, int left_y=-1, char *bm_right=NULL, int right_mask=-1, int right_x=-1, int right_y=-1, int _dot_width=19)
DOT_SLIDER class down here.
void set_text(const char *in)
void set_highlight_action(void(*_user_function)(void))
void multi_voice_test_record_stop()
int timestamp(int delta_ms)
#define MY_NET_PLAYER_NUM
uint os_config_read_uint(const char *section, const char *name, uint default_value)
void add_XSTR(char *string, int _xstr_id, int _x, int _y, UI_GADGET *_assoc, int _color_type, int _font_id=-1)
char Multi_tracker_squad_name[MULTI_TRACKER_STRING_LEN+1]
void multi_voice_test_record_start()
unsigned int ds_get_play_position(int channel_id)
void multi_options_update_local()
#define MULTI_STANDALONE(np)
int Multi_voice_local_prefs
#define GR_NUM_RESOLUTIONS
__inline void gr_string(int x, int y, const char *string, int resize_mode=GR_RESIZE_FULL)
#define UI_INPUTBOX_FLAG_NO_BACK
general failure sound for any event
int multi_voice_test_recording()
void base_create(UI_WINDOW *wnd, int _kind, int _x, int _y, int _w, int _h)
void gr_set_color_fast(color *dst)
void rtvoice_set_qos(int qos)
void os_config_write_uint(const char *section, const char *name, uint value)
int bm_release(int handle, int clear_render_targets)
Frees both a bitmap's data and it's associated slot.
char callsign[CALLSIGN_LEN+1]
void draw_forced(int frame_num)
void os_config_write_string(const char *section, const char *name, const char *value)
typedef int(SCP_EXT_CALLCONV *SCPDLL_PFVERSION)(SCPDLL_Version *)
void set_mask_bmap(char *fname)
int set_bmaps(char *ani_filename, int nframes=3, int start_frame=1)
#define NET_PLAYER_INDEX(np)
char Multi_tracker_passwd[MULTI_TRACKER_STRING_LEN+1]
int ds_get_channel(int sig)
#define NETINFO_FLAG_AM_MASTER
int psnet_is_valid_ip_string(char *ip_string, int allow_port)
#define UI_INPUTBOX_FLAG_PASSWD
int Multi_voice_can_record
char * cfgets(char *buf, int n, CFILE *cfile)
void gr_shade(int x, int y, int w, int h, int resize_mode)
multi_local_options m_local_options
int rtvoice_play(int index, unsigned char *data, int size)
int split_str(const char *src, int max_pixel_w, int *n_chars, const char **p_str, int max_lines, char ignore_char)
#define MLO_FLAG_NO_VOICE
const char * XSTR(const char *str, int index)
user_click (mouse selects a control)
#define NETINFO_FLAG_CONNECTED
__inline void gr_line(int x1, int y1, int x2, int y2, int resize_mode=GR_RESIZE_FULL)
void multi_options_local_load(multi_local_options *options, net_player *pxo_pl)
int bm_load(const char *real_filename)
Loads a bitmap so we can draw with it later.
void multi_voice_set_prefs(int pref_flags)
scroll pressed (and scroll)
void link_hotspot(int num)
int cfputs(const char *str, CFILE *cfile)
void create(UI_WINDOW *wnd, char *_text, int _x, int _y, int _w, int _h, int do_repeat=0, int ignore_focus=0)
#define MULTI_CONNECTED(np)
#define OBJ_UPDATE_MEDIUM
int gr_force_fit_string(char *str, int max_str, int max_width)
void gr_get_string_size(int *w, int *h, const char *text, int len=9999)
void common_play_highlight_sound()
void create(UI_WINDOW *wnd, int _x, int _y, int _w, int _textlen, char *_text, int _flags=0, int pixel_lim=-1, color *clr=NULL)
#define MLO_FLAG_LOCAL_BROADCAST
#define timestamp_elapsed(stamp)
void get_mouse_pos(int *xx, int *yy)
#define UI_INPUTBOX_FLAG_INVIS
#define MLO_FLAG_ACCEPT_PIX
#define UI_XSTR_COLOR_GREEN
int multi_voice_test_packet_tossed()
#define MLO_FLAG_XFER_MULTIDATA
void rtvoice_stop_playback_all()
void gamesnd_play_iface(int n)
int cfclose(CFILE *cfile)
struct ui_button_info ui_button_info
void gr_set_shader(shader *shade)
net_player Net_players[MAX_PLAYERS]
void _cdecl gr_printf_menu(int x, int y, const char *format,...)
#define MLO_FLAG_FLUSH_CACHE
#define UI_INPUTBOX_FLAG_KEYTHRU
char Multi_tracker_login[MULTI_TRACKER_STRING_LEN+1]
multi_global_options Multi_options_g
int ds_is_channel_playing(int channel_id)
void multi_voice_test_process()
#define UI_INPUTBOX_FLAG_ESC_CLR
multi_local_options options
int multi_voice_test_get_playback_buffer()