示例#1
0
void notify_modem_answer_function ( ui_object *obj, void *arg )
{
	char
		text_buffer [256];

	ghost_ui_objects_for_modem (obj, TRUE);

	switch ( modem_state )
	{

		case MODEM_NOT_CONNECTED:
		{

			char
				*modem;

			modem = current_modem->name;

			if ( modem )
			{

				//
				// Have to call create session to get the phone to answer
				//

				if ( direct_play_answer_modem ( modem, GAME_TYPE_INVALID ) )
				{

					direct_play_session_capabilities ();

					direct_play_create_group ();

					direct_play_create_player ();

					set_server_id (direct_play_get_player_id ());

					//
					// Turn off the back button while we connect
					//

//					set_ui_object_drawable ( multi_player_back_button, UI_OBJECT_STATE_OFF );

					sprintf (text_buffer, "%s: %s", get_trans ("MP_STATUS"), get_trans ("MP_WAITING_FOR_CALL"));

					set_ui_object_text (modem_status_text, text_buffer);

					modem_state = MODEM_ANSWERING;

					ui_set_user_function ( multiplayer_modem_answer_update_function );
				}
			}

			break;
		}
	}

	// don't leave text selected

	set_toggle_button_off (obj);
}
示例#2
0
void notify_device_option_button ( ui_object *obj, void *arg )
{
	char
		*name[1];

	if (number_of_joystick_devices > 1)
	{
		if ( get_global_joystick_device_index () < (number_of_joystick_devices - 1) )
		{
			set_global_joystick_device_index (get_global_joystick_device_index () + 1);
		}
		else
		{
			set_global_joystick_device_index (0);
		}

		set_ui_object_text (device_option_button, joystick_devices[get_global_joystick_device_index ()].device_name);

		name[0] = &joystick_devices[get_global_joystick_device_index ()].device_name;

		preprocess_translation_object_size (device_graphic_area, device_option_button, name, 1, RESIZE_OPTION_CYCLE_BUTTON);
	}

	// don't leave text selected

	set_toggle_button_off (obj);

	#if DEBUG_MODULE
		debug_filtered_log ("no. jd's:%d  jd index:%d", number_of_joystick_devices, get_global_joystick_device_index ());
	#endif

}
示例#3
0
文件: op_real.c 项目: Comanche93/eech
void notify_cpg_report_targets_option_button ( ui_object *obj, void *arg )
{
    global_co_pilot_scans_for_targets = !global_co_pilot_scans_for_targets;

    set_ui_object_text (obj, option_cpg_report_targets_text [global_co_pilot_scans_for_targets]);

    // don't leave text selected

    set_toggle_button_off (obj);
}
示例#4
0
文件: op_real.c 项目: Comanche93/eech
void notify_co_pilot_ecm_option_button ( ui_object *obj, void *arg )
{

    set_global_auto_counter_measures (!get_global_auto_counter_measures ());

    set_ui_object_text (obj, option_boolean_text [get_global_auto_counter_measures ()]);

    // don't leave text selected

    set_toggle_button_off (obj);
}
示例#5
0
void notify_modem_cancel_function ( ui_object *obj, void *arg )
{

	break_modem_connection ();

	ghost_ui_objects_for_modem (obj, FALSE);

	// don't leave text selected

	set_toggle_button_off (obj);
}
示例#6
0
void notify_keyboard_assist_option_button ( ui_object *obj, void *arg )
{
	set_global_dynamics_options_keyboard_assistance (!get_global_dynamics_options_keyboard_assistance ());

	set_ui_object_text (keyboard_assist_option_button, option_boolean_text [get_global_dynamics_options_keyboard_assistance ()]);

	set_current_dynamics_options (DYNAMICS_OPTIONS_KEYBOARD_ASSISTANCE, get_global_dynamics_options_keyboard_assistance());

	// don't leave text selected

	set_toggle_button_off (obj);
}
示例#7
0
文件: op_real.c 项目: Comanche93/eech
void notify_avionics_option_button ( ui_object *obj, void *arg )
{

    set_global_simple_avionics (!get_global_simple_avionics ());

    set_ui_object_text (obj, option_avionics_text [get_global_simple_avionics ()]);

#if DEBUG_MODULE
    debug_filtered_log ("avionics: %d text: %s", get_global_simple_avionics (), option_avionics_text [get_global_simple_avionics ()]);
#endif

    // don't leave text selected

    set_toggle_button_off (obj);
}
示例#8
0
文件: op_real.c 项目: Comanche93/eech
void notify_co_pilot_target_option_button ( ui_object *obj, void *arg )
{
    int
    selection;

    selection = (get_global_cpg_assist_type () + 1) % NUM_CPG_ASSISTANCE_TYPES;

    set_global_cpg_assist_type ((cpg_assist_types) selection);

    set_ui_object_text (obj, option_cpg_text [selection]);

    // don't leave text selected

    set_toggle_button_off (obj);

#if DEBUG_MODULE
    debug_filtered_log("selection:%d", selection);
#endif
}
示例#9
0
void notify_pedal_option_button ( ui_object *obj, void *arg )
{

	if ( (number_of_joystick_devices) && (get_global_pedal_input () == KEYBOARD_INPUT) )
	{
			set_global_pedal_input (RUDDER_INPUT);

			set_ui_object_text (pedal_option_button, option_pedal_text[1]);
	}
	else
	{
		set_global_pedal_input (KEYBOARD_INPUT);

		set_ui_object_text (pedal_option_button, option_pedal_text[0]);
	}

	// don't leave text selected

	set_toggle_button_off (obj);
}
示例#10
0
void notify_collective_option_button ( ui_object *obj, void *arg )
{

	if ( (number_of_joystick_devices) && (get_global_collective_input () == KEYBOARD_INPUT) )
	{
			set_global_collective_input (THROTTLE_INPUT);

			set_ui_object_text (collective_option_button, option_throttle_text[1]);
	}
	else
	{
		set_global_collective_input (KEYBOARD_INPUT);

		set_ui_object_text (collective_option_button, option_throttle_text[0]);
	}

	// don't leave text selected

	set_toggle_button_off (obj);
}
示例#11
0
文件: op_real.c 项目: Comanche93/eech
void notify_difficulty_option_button ( ui_object *obj, void *arg )
{
    int
    selection;

    selection = get_global_difficulty_level ();

    selection--;

    if (selection < GAME_DIFFICULTY_HARD)
    {
        selection = GAME_DIFFICULTY_EASY;
    }

    set_global_difficulty_level ((enum GAME_DIFFICULTY_SETTINGS) selection);

    set_ui_object_text (obj, option_difficulty_text [selection - 1]);

    // don't leave text selected

    set_toggle_button_off (obj);
}
示例#12
0
void notify_reverse_throttle_option_button ( ui_object *obj, void *arg )
{

	int
		selection;

	selection = !get_global_dynamics_options_reverse_throttle_input ();

	set_global_dynamics_options_reverse_throttle_input (selection);

	set_ui_object_text (reverse_throttle_button, option_boolean_text [selection]);

	set_current_dynamics_options (DYNAMICS_OPTIONS_REVERSE_THROTTLE_INPUT, get_global_dynamics_options_reverse_throttle_input());

	// don't leave text selected

	set_toggle_button_off (obj);

	#ifdef DEBUG_MODULE
		debug_filtered_log ("reverse throttle: %d", get_global_dynamics_options_reverse_throttle_input ());
	#endif
}
示例#13
0
void ghost_ui_objects_for_modem (ui_object *obj, int flag)
{
	int
		i;

	// activate ghosting
	if (flag == TRUE)
	{
		// disable common object items
		for (i = 0; i < NUM_OPTIONS_PAGES; i++)
		{
			set_ui_object_drawable (options_page_buttons [i], FALSE);
		}

		set_ui_object_drawable (option_page_ok_button, FALSE);

		// disable modem objects
		set_ui_object_highlightable (connection_type_button, FALSE);

		set_ui_object_font_colour_end (connection_type_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 127);

		set_ui_object_highlightable (phone_number_text_obj, FALSE);

		set_ui_object_font_colour_end (phone_number_text_obj, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 127);

		set_ui_object_highlightable (modem_type_button, FALSE);

		set_ui_object_font_colour_end (modem_type_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 127);

		set_ui_object_highlightable (modem_answer_button, FALSE);

		set_ui_object_font_colour_end (modem_answer_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 127);

		set_ui_object_highlightable (modem_dial_button, FALSE);

		set_ui_object_font_colour_end (modem_dial_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 127);

		// enable ghosting overlay
		set_ui_object_drawable (ghost_multiplayer_modem_area, TRUE);

		set_ui_object_drawable (ghost_multiplayer_modem_area2, TRUE);
	}
	// deactivate ghosting
	else
	{
		// enable common object items
		for (i = 0; i < NUM_OPTIONS_PAGES; i++)
		{
			set_ui_object_drawable (options_page_buttons [i], TRUE);
		}

		set_ui_object_drawable (option_page_ok_button, TRUE);

		// enable modem objects
		set_ui_object_highlightable (connection_type_button, TRUE);

		set_ui_object_font_colour_end (connection_type_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 255);

		set_ui_object_highlightable (phone_number_text_obj, TRUE);

		set_ui_object_font_colour_end (phone_number_text_obj, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 255);

		set_ui_object_highlightable (modem_type_button, TRUE);

		set_ui_object_font_colour_end (modem_type_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 255);

		set_ui_object_highlightable (modem_answer_button, TRUE);

		set_ui_object_font_colour_end (modem_answer_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 255);

		set_ui_object_highlightable (modem_dial_button, TRUE);

		set_ui_object_font_colour_end (modem_dial_button, ui_option_text_default_colour.r, ui_option_text_default_colour.g, ui_option_text_default_colour.b, 255);

		// disable ghosting overlay
		set_ui_object_drawable (ghost_multiplayer_modem_area, FALSE);

		set_ui_object_drawable (ghost_multiplayer_modem_area2, FALSE);
	}

	// don't leave text selected
	if (obj)
	{
		set_toggle_button_off (obj);
	}

//	ui_force_update ();
}