Beispiel #1
0
//--------- Begin of function Firm::detect_info_both ---------//
//
// Called by Info::detect(). Detect both cases when the firm is
// under construction and is normal. 
//
void Firm::detect_info_both()
{
	if( under_construction )
		detect_basic_info();
	else
	{
		switch( firm_menu_mode )
		{
			case FIRM_MENU_MAIN:
				detect_info();
				break;

			case FIRM_MENU_SPY:
			case FIRM_MENU_SELECT_BRIBER:
				detect_spy_menu();
				break;

			case FIRM_MENU_SET_BRIBE_AMOUNT:
				detect_bribe_menu();
				break;

			case FIRM_MENU_VIEW_SECRET:
				if( spy_array.detect_view_secret_menu(action_spy_recno, nation_recno) )
				{
					firm_menu_mode = FIRM_MENU_MAIN;
					info.disp();
				}
				break;

			case FIRM_MENU_ASSASSINATE_RESULT:
				detect_assassinate_result();
				break;
		}
	}
}
Beispiel #2
0
//--------- Begin of function Unit::detect_main_menu ---------//
//
void Unit::detect_main_menu()
{
	if( detect_basic_info() )
		return;

	if( detect_unit_profile() )
		return;

	if( is_own_spy() )
		detect_spy_menu(INFO_Y1+187);

	if( is_own() )
		detect_button();
}
Beispiel #3
0
//--------- Begin of function FirmCamp::detect_info ---------//
//
void FirmCamp::detect_info()
{
	Firm::detect_info();

	switch( firm_menu_mode )
	{
	case FIRM_MENU_MAIN:
		if( should_show_info() )
		{
			detect_camp_info();
			detect_soldier_list(0);
			detect_soldier_info();
			detect_spy_button();
		}
		break;

	case FIRM_MENU_TRAIN:
		detect_train_menu();
		break;

	case FIRM_MENU_SPY:
	case FIRM_MENU_SELECT_BRIBER:
		detect_spy_menu();
		break;

	case FIRM_MENU_SET_BRIBE_AMOUNT:
		detect_bribe_menu();
		break;

	case FIRM_MENU_BRIBE_RESULT:
		detect_bribe_result();
		break;

	case FIRM_MENU_VIEW_SECRET:
		if( spy_array.detect_view_secret_menu(action_spy_recno, nation_recno) )
		{
			firm_menu_mode = FIRM_MENU_MAIN;
//			info.disp();
		}
		break;

	case FIRM_MENU_ASSASSINATE_CONFIRM:
		detect_assassinate_confirm();
		break;

	case FIRM_MENU_ASSASSINATE_RESULT:
		detect_assassinate_result();
		break;

	case FIRM_MENU_STEAL_TECH_CONFIRM:
		detect_steal_tech_confirm();
		break;

	case FIRM_MENU_STEAL_TECH_RESULT:
		detect_steal_tech_result();
		break;

	case FIRM_MENU_INCIDENT_NATION:
		detect_incident_nation();
		break;

	case FIRM_MENU_INCIDENT_CONFIRM:
		detect_incident_confirm();
		break;

	case FIRM_MENU_INCIDENT_RESULT:
		detect_incident_result();
		break;

	default:
		err_when( firm_menu_mode < FIRM_MENU_CAMP_LAST );
		// if firm_menu_mode >= FIRM_MENU_CAMP_LAST, handled by sub-class
	}
}