|
|
|
@ -125,6 +125,10 @@ bool CMenuManager::m_PrefsMarketing = false;
|
|
|
|
|
bool CMenuManager::m_PrefsDisableTutorials = false;
|
|
|
|
|
#endif // !MASTER
|
|
|
|
|
|
|
|
|
|
#if defined(LEGACY_MENU_OPTIONS) || defined(GAMEPAD_MENU)
|
|
|
|
|
uint32 TimeToStopPadShaking;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
const char* FrontendFilenames[][2] = {
|
|
|
|
|
{"background", ""},
|
|
|
|
|
{"vc_logo", "vc_logom"},
|
|
|
|
@ -151,7 +155,14 @@ const char* FrontendFilenames[][2] = {
|
|
|
|
|
{"downOff", "buttonA"},
|
|
|
|
|
{"downOn", "buttonA"},
|
|
|
|
|
{"upOff", "buttonA"},
|
|
|
|
|
{"upOn", "buttonA"}
|
|
|
|
|
{"upOn", "buttonA"},
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
{"fe_controller", "" },
|
|
|
|
|
{"fe_arrows1", "" },
|
|
|
|
|
{"fe_arrows2", "" },
|
|
|
|
|
{"fe_arrows3", "" },
|
|
|
|
|
{"fe_arrows4", "" },
|
|
|
|
|
#endif
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#define MENU_X_RIGHT_ALIGNED(x) SCALE_AND_CENTER_X(DEFAULT_SCREEN_WIDTH - (x))
|
|
|
|
@ -526,6 +537,10 @@ CMenuManager::CMenuManager()
|
|
|
|
|
#ifdef NO_ISLAND_LOADING
|
|
|
|
|
m_PrefsIslandLoading = ISLAND_LOADING_LOW;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
m_PrefsControllerType = CONTROLLER_XBOXONE;
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
@ -1074,7 +1089,7 @@ CMenuManager::DrawStandardMenus(bool activeScreen)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch (aScreens[m_nCurrScreen].m_aEntries[i].m_Action) {
|
|
|
|
|
#ifdef LEGACY_MENU_OPTIONS
|
|
|
|
|
#if defined(LEGACY_MENU_OPTIONS) || defined(GAMEPAD_MENU)
|
|
|
|
|
case MENUACTION_CTRLVIBRATION:
|
|
|
|
|
if (m_PrefsUseVibration)
|
|
|
|
|
rightText = TheText.Get("FEM_ON");
|
|
|
|
@ -1539,6 +1554,11 @@ CMenuManager::DrawStandardMenus(bool activeScreen)
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
switch (m_nCurrScreen) {
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
case MENUPAGE_CONTROLLER_SETTINGS:
|
|
|
|
|
PrintController();
|
|
|
|
|
break;
|
|
|
|
|
#endif
|
|
|
|
|
case MENUPAGE_STATS:
|
|
|
|
|
case MENUPAGE_CONTROLLER_PC:
|
|
|
|
|
case MENUPAGE_SOUND_SETTINGS:
|
|
|
|
@ -2280,6 +2300,9 @@ CMenuManager::DrawBackground(bool transitionCall)
|
|
|
|
|
break;
|
|
|
|
|
case MENUPAGE_SKIN_SELECT:
|
|
|
|
|
case MENUPAGE_KEYBOARD_CONTROLS:
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
case MENUPAGE_CONTROLLER_SETTINGS:
|
|
|
|
|
#endif
|
|
|
|
|
menuBg.topLeft_x = 14.0f;
|
|
|
|
|
menuBg.topLeft_y = 39.0f;
|
|
|
|
|
menuBg.topRight_x = 636.0f;
|
|
|
|
@ -2948,12 +2971,19 @@ CMenuManager::LoadAllTextures()
|
|
|
|
|
CTxdStore::AddRef(frontendTxdSlot2);
|
|
|
|
|
CTxdStore::SetCurrentTxd(frontendTxdSlot2);
|
|
|
|
|
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
for (int i = 3; i < MENUSPRITE_CONTROLLER; i++) {
|
|
|
|
|
#else
|
|
|
|
|
for (int i = 3; i < NUM_MENU_SPRITES; i++) {
|
|
|
|
|
#endif
|
|
|
|
|
m_aFrontEndSprites[i].SetTexture(FrontendFilenames[i][0], FrontendFilenames[i][1]);
|
|
|
|
|
m_aFrontEndSprites[i].SetAddressing(rwTEXTUREADDRESSBORDER);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CTxdStore::PopCurrentTxd();
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
LoadController(m_PrefsControllerType);
|
|
|
|
|
#endif
|
|
|
|
|
CStreaming::IHaveUsedStreamingMemory();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -4896,6 +4926,16 @@ CMenuManager::ProcessUserInput(uint8 goDown, uint8 goUp, uint8 optionSelected, u
|
|
|
|
|
|
|
|
|
|
if (changeAmount != 0) {
|
|
|
|
|
switch (aScreens[m_nCurrScreen].m_aEntries[m_nCurrOption].m_Action) {
|
|
|
|
|
#if defined(LEGACY_MENU_OPTIONS) || defined(GAMEPAD_MENU)
|
|
|
|
|
case MENUACTION_CTRLCONFIG:
|
|
|
|
|
CPad::GetPad(0)->Mode += changeAmount;
|
|
|
|
|
if (CPad::GetPad(0)->Mode > 3)
|
|
|
|
|
CPad::GetPad(0)->Mode = 0;
|
|
|
|
|
else if (CPad::GetPad(0)->Mode < 0)
|
|
|
|
|
CPad::GetPad(0)->Mode = 3;
|
|
|
|
|
SaveSettings();
|
|
|
|
|
break;
|
|
|
|
|
#endif
|
|
|
|
|
case MENUACTION_RADIO:
|
|
|
|
|
ChangeRadioStation(changeAmount);
|
|
|
|
|
break;
|
|
|
|
@ -5037,14 +5077,14 @@ void
|
|
|
|
|
CMenuManager::ProcessOnOffMenuOptions()
|
|
|
|
|
{
|
|
|
|
|
switch (aScreens[m_nCurrScreen].m_aEntries[m_nCurrOption].m_Action) {
|
|
|
|
|
#ifdef LEGACY_MENU_OPTIONS
|
|
|
|
|
#if defined(LEGACY_MENU_OPTIONS) || defined(GAMEPAD_MENU)
|
|
|
|
|
case MENUACTION_CTRLVIBRATION:
|
|
|
|
|
m_PrefsUseVibration = !m_PrefsUseVibration;
|
|
|
|
|
break;
|
|
|
|
|
case MENUACTION_CTRLCONFIG:
|
|
|
|
|
CPad::GetPad(0)->Mode++;
|
|
|
|
|
if (CPad::GetPad(0)->Mode > 3)
|
|
|
|
|
CPad::GetPad(0)->Mode = 0;
|
|
|
|
|
if (m_PrefsUseVibration) {
|
|
|
|
|
CPad::GetPad(0)->StartShake(350, 150);
|
|
|
|
|
TimeToStopPadShaking = CTimer::GetTimeInMillisecondsPauseMode() + 500;
|
|
|
|
|
}
|
|
|
|
|
SaveSettings();
|
|
|
|
|
break;
|
|
|
|
|
#endif
|
|
|
|
|
case MENUACTION_INVERTPADY:
|
|
|
|
@ -5510,6 +5550,14 @@ CMenuManager::SwitchMenuOnAndOff()
|
|
|
|
|
|
|
|
|
|
m_bStartUpFrontEndRequested = false;
|
|
|
|
|
m_bShutDownFrontEndRequested = false;
|
|
|
|
|
|
|
|
|
|
#if defined(LEGACY_MENU_OPTIONS) || defined(GAMEPAD_MENU)
|
|
|
|
|
// Reset pad shaking.
|
|
|
|
|
if (TimeToStopPadShaking && TimeToStopPadShaking < CTimer::GetTimeInMillisecondsPauseMode()) {
|
|
|
|
|
CPad::StopPadsShaking();
|
|
|
|
|
TimeToStopPadShaking = 0;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
@ -5534,6 +5582,13 @@ CMenuManager::UnloadTextures()
|
|
|
|
|
m_aFrontEndSprites[i].Delete();
|
|
|
|
|
|
|
|
|
|
CTxdStore::RemoveTxd(frontend2);
|
|
|
|
|
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
// Unload controller txd
|
|
|
|
|
int frontend_controller = CTxdStore::FindTxdSlot("frontend_controller");
|
|
|
|
|
if (frontend_controller != -1)
|
|
|
|
|
CTxdStore::RemoveTxd(frontend_controller);
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_bSpritesLoaded = false;
|
|
|
|
@ -5781,5 +5836,753 @@ uint8 CMenuManager::GetNumberOfMenuOptions()
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef GAMEPAD_MENU
|
|
|
|
|
const char* controllerTypesPaths[] = {
|
|
|
|
|
"MODELS/FRONTEND_DS2.TXD",
|
|
|
|
|
"MODELS/FRONTEND_DS3.TXD",
|
|
|
|
|
"MODELS/FRONTEND_DS4.TXD",
|
|
|
|
|
"MODELS/FRONTEND_X360.TXD",
|
|
|
|
|
"MODELS/FRONTEND_XONE.TXD",
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
CMenuManager::PrintController(void)
|
|
|
|
|
{
|
|
|
|
|
// Don't print anything if controller texture is missing
|
|
|
|
|
if (!m_aFrontEndSprites[MENUSPRITE_CONTROLLER].m_pTexture) return;
|
|
|
|
|
|
|
|
|
|
const float scale = 0.9f;
|
|
|
|
|
const float CONTROLLER_SIZE_X = 235.2f;
|
|
|
|
|
const float CONTROLLER_SIZE_Y = 175.2f;
|
|
|
|
|
const float CONTROLLER_POS_X = (DEFAULT_SCREEN_WIDTH - CONTROLLER_SIZE_X) / 2.0f;
|
|
|
|
|
const float CONTROLLER_POS_Y = 220.0f;
|
|
|
|
|
|
|
|
|
|
float centerX = CONTROLLER_POS_X + CONTROLLER_SIZE_X / 2;
|
|
|
|
|
float centerY = CONTROLLER_POS_Y + CONTROLLER_SIZE_Y / 2;
|
|
|
|
|
|
|
|
|
|
#define X(f) ((f)*scale + centerX)
|
|
|
|
|
#define Y(f) ((f)*scale + centerY)
|
|
|
|
|
|
|
|
|
|
m_aFrontEndSprites[MENUSPRITE_CONTROLLER].Draw(MENU_X_LEFT_ALIGNED(X(-CONTROLLER_SIZE_X / 2)), MENU_Y(Y(-CONTROLLER_SIZE_Y / 2)), MENU_X(CONTROLLER_SIZE_X * scale), MENU_Y(CONTROLLER_SIZE_Y * scale), CRGBA(255, 255, 255, FadeIn(255)));
|
|
|
|
|
if (m_DisplayControllerOnFoot) {
|
|
|
|
|
if ((int)CTimer::GetTimeInMillisecondsPauseMode() & 0x400)
|
|
|
|
|
m_aFrontEndSprites[MENUSPRITE_ARROWS1].Draw(MENU_X_LEFT_ALIGNED(X(-CONTROLLER_SIZE_X / 2)), MENU_Y(Y(-CONTROLLER_SIZE_Y / 2)), MENU_X(CONTROLLER_SIZE_X * scale), MENU_Y(CONTROLLER_SIZE_Y * scale), CRGBA(255, 255, 255, FadeIn(255)));
|
|
|
|
|
else
|
|
|
|
|
m_aFrontEndSprites[MENUSPRITE_ARROWS3].Draw(MENU_X_LEFT_ALIGNED(X(-CONTROLLER_SIZE_X / 2)), MENU_Y(Y(-CONTROLLER_SIZE_Y / 2)), MENU_X(CONTROLLER_SIZE_X * scale), MENU_Y(CONTROLLER_SIZE_Y * scale), CRGBA(255, 255, 255, FadeIn(255)));
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
if ((int)CTimer::GetTimeInMillisecondsPauseMode() & 0x400)
|
|
|
|
|
m_aFrontEndSprites[MENUSPRITE_ARROWS2].Draw(MENU_X_LEFT_ALIGNED(X(-CONTROLLER_SIZE_X / 2)), MENU_Y(Y(-CONTROLLER_SIZE_Y / 2)), MENU_X(CONTROLLER_SIZE_X * scale), MENU_Y(CONTROLLER_SIZE_Y * scale), CRGBA(255, 255, 255, FadeIn(255)));
|
|
|
|
|
else
|
|
|
|
|
m_aFrontEndSprites[MENUSPRITE_ARROWS4].Draw(MENU_X_LEFT_ALIGNED(X(-CONTROLLER_SIZE_X / 2)), MENU_Y(Y(-CONTROLLER_SIZE_Y / 2)), MENU_X(CONTROLLER_SIZE_X * scale), MENU_Y(CONTROLLER_SIZE_Y * scale), CRGBA(255, 255, 255, FadeIn(255)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CFont::SetFontStyle(FONT_LOCALE(FONT_STANDARD));
|
|
|
|
|
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.9f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.9f)); // X
|
|
|
|
|
|
|
|
|
|
CFont::SetDropColor(CRGBA(0, 0, 0, FadeIn(255)));
|
|
|
|
|
CFont::SetDropShadowPosition(0);
|
|
|
|
|
CFont::SetColor(CRGBA(0, 0, 0, FadeIn(255)));
|
|
|
|
|
CFont::SetWrapx(SCREEN_WIDTH);
|
|
|
|
|
|
|
|
|
|
float TEXT_L2_X = 85.0f + CONTROLLER_POS_X - centerX, TEXT_L2_Y = -14.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_L1_X = -4.0f + CONTROLLER_POS_X - centerX, TEXT_L1_Y = 27.0f + CONTROLLER_POS_Y - centerY, TEXT_L1_Y_VEH = 3.0f + TEXT_L1_Y;
|
|
|
|
|
float TEXT_DPAD_X = -4.0f + CONTROLLER_POS_X - centerX, TEXT_DPAD_Y = 67.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_LSTICK_X = -4.0f + CONTROLLER_POS_X - centerX, TEXT_LSTICK_Y = 97.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_SELECT_X = 170.0f + CONTROLLER_POS_X - centerX, TEXT_SELECT_Y = 141.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_START_X = 130.0f + CONTROLLER_POS_X - centerX, TEXT_START_Y = 128.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_R2_X = 164.0f + CONTROLLER_POS_X - centerX, TEXT_R2_Y = -14.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_R1_X = 242.0f + CONTROLLER_POS_X - centerX, TEXT_R1_Y = 27.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
|
|
|
|
|
float TEXT_SQUARE_X = 147.0f + CONTROLLER_POS_X - centerX, TEXT_SQUARE_Y = 30.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_TRIANGLE_X = 242.0f + CONTROLLER_POS_X - centerX, TEXT_TRIANGLE_Y = 55.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_CIRCLE_X = 242.0f + CONTROLLER_POS_X - centerX, TEXT_CIRCLE_Y = 67.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_CROSS_X = 242.0f + CONTROLLER_POS_X - centerX, TEXT_CROSS_Y = 80.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_RSTICK_X = 242.0f + CONTROLLER_POS_X - centerX, TEXT_RSTICK_Y = 97.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_R3_X = 242.0f + CONTROLLER_POS_X - centerX, TEXT_R3_Y = 110.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_L3_X = 94.0f + CONTROLLER_POS_X - centerX, TEXT_L3_Y = 162.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
float TEXT_L2R2_X = 120.0f + CONTROLLER_POS_X - centerX, TEXT_L2R2_Y = -4.0f + CONTROLLER_POS_Y - centerY;
|
|
|
|
|
|
|
|
|
|
switch (m_PrefsControllerType)
|
|
|
|
|
{
|
|
|
|
|
case CONTROLLER_DUALSHOCK4:
|
|
|
|
|
TEXT_L1_Y += 7.0f;
|
|
|
|
|
TEXT_L1_Y_VEH = TEXT_L1_Y;
|
|
|
|
|
TEXT_R1_Y += 7.0f;
|
|
|
|
|
TEXT_TRIANGLE_Y -= 1.0f;
|
|
|
|
|
TEXT_CIRCLE_Y -= 1.0f;
|
|
|
|
|
TEXT_CROSS_Y -= 1.0f;
|
|
|
|
|
TEXT_RSTICK_Y -= 4.0f;
|
|
|
|
|
TEXT_R3_Y -= 4.0f;
|
|
|
|
|
TEXT_DPAD_Y -= 2.0f;
|
|
|
|
|
TEXT_LSTICK_Y -= 6.0f;
|
|
|
|
|
TEXT_L3_X -= 2.0f;
|
|
|
|
|
break;
|
|
|
|
|
case CONTROLLER_XBOXONE:
|
|
|
|
|
TEXT_L2_X -= 2.0f;
|
|
|
|
|
TEXT_R2_X += 2.0f;
|
|
|
|
|
TEXT_L1_Y += 15.0f;
|
|
|
|
|
TEXT_L1_Y_VEH = TEXT_L1_Y;
|
|
|
|
|
TEXT_R1_Y += 15.0f;
|
|
|
|
|
TEXT_TRIANGLE_Y += 4.0f;
|
|
|
|
|
TEXT_CIRCLE_Y += 4.0f;
|
|
|
|
|
TEXT_CROSS_Y += 4.0f;
|
|
|
|
|
TEXT_RSTICK_Y += 1.0f;
|
|
|
|
|
TEXT_R3_Y += 1.0f;
|
|
|
|
|
TEXT_DPAD_Y += 29.0f;
|
|
|
|
|
TEXT_LSTICK_Y -= 20.0f;
|
|
|
|
|
TEXT_L3_X -= 36.0f;
|
|
|
|
|
TEXT_L2R2_Y += 5.0f;
|
|
|
|
|
TEXT_SELECT_X += 4.0f;
|
|
|
|
|
break;
|
|
|
|
|
case CONTROLLER_XBOX360:
|
|
|
|
|
TEXT_L2_X += 8.0f;
|
|
|
|
|
TEXT_R2_X -= 8.0f;
|
|
|
|
|
TEXT_L1_Y += 15.0f;
|
|
|
|
|
TEXT_L1_Y_VEH = TEXT_L1_Y;
|
|
|
|
|
TEXT_R1_Y += 15.0f;
|
|
|
|
|
TEXT_TRIANGLE_Y += 4.0f;
|
|
|
|
|
TEXT_CIRCLE_Y += 4.0f;
|
|
|
|
|
TEXT_CROSS_Y += 4.0f;
|
|
|
|
|
TEXT_RSTICK_Y += 4.0f;
|
|
|
|
|
TEXT_R3_Y += 4.0f;
|
|
|
|
|
TEXT_DPAD_Y += 30.0f;
|
|
|
|
|
TEXT_LSTICK_Y -= 19.0f;
|
|
|
|
|
TEXT_L3_X -= 36.0f;
|
|
|
|
|
TEXT_L2R2_Y += 5.0f;
|
|
|
|
|
TEXT_SELECT_X += 3.0f;
|
|
|
|
|
break;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
if (m_DisplayControllerOnFoot) {
|
|
|
|
|
switch (CPad::GetPad(0)->Mode) {
|
|
|
|
|
case 0:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_L2_X -= 45.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)) - SCREEN_SCALE_X(85));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_CWL"));
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y)), TheText.Get("FEC_LOF"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_MOV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_MOV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_CR3"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 15.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_R2_X += 30.0f;
|
|
|
|
|
CFont::SetJustifyOff();
|
|
|
|
|
CFont::SetWrapx(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)) + SCREEN_SCALE_X(120));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_CWR"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::SetWrapx(SCREEN_WIDTH);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_TAR"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_JUM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_ENV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_ATT"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_RUN"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_FPC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_LB3"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y + 13.0f)), TheText.Get("FEC_R3"));
|
|
|
|
|
break;
|
|
|
|
|
case 1:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_L2_X -= 45.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)) - SCREEN_SCALE_X(85));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_CWL"));
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y)), TheText.Get("FEC_LOF"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_MOV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_CR3"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_NA"));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X - 50)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_NA"));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_R2_X += 30.0f;
|
|
|
|
|
CFont::SetJustifyOff();
|
|
|
|
|
CFont::SetWrapx(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)) + SCREEN_SCALE_X(120));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_CWR"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::SetWrapx(SCREEN_WIDTH);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_TAR"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_JUM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_ENV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_ATT"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_RUN"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_FPC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_LB3"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y + 13.0f)), TheText.Get("FEC_R3"));
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_L2_X -= 45.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)) - SCREEN_SCALE_X(85));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_CWL"));
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y)), TheText.Get("FEC_ENV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_MOV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_MOV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_CR3"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 15.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_R2_X += 30.0f;
|
|
|
|
|
CFont::SetJustifyOff();
|
|
|
|
|
CFont::SetWrapx(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)) + SCREEN_SCALE_X(120));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_CWR"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::SetWrapx(SCREEN_WIDTH);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_TAR"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_JUM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_LOF"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_RUN"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_ATT"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_FPC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_LB3"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y + 13.0f)), TheText.Get("FEC_R3"));
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_L2_X -= 45.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)) - SCREEN_SCALE_X(85));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_CWL"));
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y)), TheText.Get("FEC_TAR"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_NA"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_MOV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_CR3"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 15.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_R2_X += 30.0f;
|
|
|
|
|
CFont::SetJustifyOff();
|
|
|
|
|
CFont::SetWrapx(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)) + SCREEN_SCALE_X(120));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_CWR"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::SetWrapx(SCREEN_WIDTH);
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_TAR"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_JUM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_LOF"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_RUN"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_ATT"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_FPC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_LB3"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y + 13.0f)), TheText.Get("FEC_R3"));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
CFont::SetCentreOn();
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_ITALIAN:
|
|
|
|
|
if (m_PrefsControllerType != CONTROLLER_XBOX360)
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(0.0f)), MENU_Y(Y(TEXT_L2R2_Y)), TheText.Get("FEC_LB"));
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.9f), MENU_Y(SMALLESTTEXT_Y_SCALE* scale * 0.9f));
|
|
|
|
|
switch (CPad::GetPad(0)->Mode) {
|
|
|
|
|
case 0:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_LL"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y_VEH)), TheText.Get("FEC_RSC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_VES"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_VES"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L3_X)), MENU_Y(Y(TEXT_L3_Y)), TheText.Get("FEC_HO3"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SELECT_X -= 5.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 15.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)) - SCREEN_SCALE_X(80));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_LR"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_HAB"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_EXV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_CAW"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_ACC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_TUC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_SM3"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsControllerType)
|
|
|
|
|
{
|
|
|
|
|
case CONTROLLER_XBOXONE:
|
|
|
|
|
case CONTROLLER_XBOX360:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SQUARE_X += 3.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(90));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SQUARE_X += 18.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(90));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SQUARE_X -= 15.0f;
|
|
|
|
|
TEXT_SQUARE_Y += 5.0f;
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SQUARE_X -= 15.0f;
|
|
|
|
|
TEXT_SQUARE_Y += 10.0f;
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE* scale * 0.65f));
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SQUARE_X += 15.0f;
|
|
|
|
|
case LANGUAGE_ITALIAN:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(100));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_BRA"));
|
|
|
|
|
break;
|
|
|
|
|
case 1:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_LL"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y_VEH)), TheText.Get("FEC_HOR"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_VES"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L3_X)), MENU_Y(Y(TEXT_L3_Y)), TheText.Get("FEC_NA"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 12.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)) - SCREEN_SCALE_X(80));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_RSC"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_LR"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_HAB"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_EXV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_CAW"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_ACC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_TUC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_SM3"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsControllerType)
|
|
|
|
|
{
|
|
|
|
|
case CONTROLLER_XBOXONE:
|
|
|
|
|
case CONTROLLER_XBOX360:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SQUARE_X += 3.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(90));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SQUARE_X += 18.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(90));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SQUARE_X -= 15.0f;
|
|
|
|
|
TEXT_SQUARE_Y += 5.0f;
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SQUARE_X -= 15.0f;
|
|
|
|
|
TEXT_SQUARE_Y += 10.0f;
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SQUARE_X += 15.0f;
|
|
|
|
|
case LANGUAGE_ITALIAN:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(100));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_BRA"));
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_LL"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y_VEH)), TheText.Get("FEC_EXV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_VES"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_VES"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L3_X)), MENU_Y(Y(TEXT_L3_Y)), TheText.Get("FEC_RS3"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SELECT_X -= 5.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 15.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)) - SCREEN_SCALE_X(80));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_LR"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_HOR"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_HAB"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_CAW"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_ACC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_TUC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_SM3"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
switch (m_PrefsControllerType)
|
|
|
|
|
{
|
|
|
|
|
case CONTROLLER_XBOXONE:
|
|
|
|
|
case CONTROLLER_XBOX360:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SQUARE_X += 3.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(90));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SQUARE_X += 18.0f;
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(90));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SQUARE_X -= 15.0f;
|
|
|
|
|
TEXT_SQUARE_Y += 5.0f;
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SQUARE_X -= 15.0f;
|
|
|
|
|
TEXT_SQUARE_Y += 10.0f;
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(60));
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SQUARE_X += 15.0f;
|
|
|
|
|
case LANGUAGE_ITALIAN:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
default:
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)) - SCREEN_SCALE_X(100));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_BRA"));
|
|
|
|
|
break;
|
|
|
|
|
case 3:
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L2_X)), MENU_Y(Y(TEXT_L2_Y)), TheText.Get("FEC_LL"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L1_X)), MENU_Y(Y(TEXT_L1_Y_VEH)), TheText.Get("FEC_HAB"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_DPAD_X)), MENU_Y(Y(TEXT_DPAD_Y)), TheText.Get("FEC_TUC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_LSTICK_X)), MENU_Y(Y(TEXT_LSTICK_Y)), TheText.Get("FEC_VES"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_L3_X)), MENU_Y(Y(TEXT_L3_Y)), TheText.Get("FEC_HO3"));
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
TEXT_SELECT_X -= 5.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SELECT_X += 20.0f;
|
|
|
|
|
break;
|
|
|
|
|
case LANGUAGE_SPANISH:
|
|
|
|
|
TEXT_SELECT_X += 15.0f;
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
CFont::SetRightJustifyWrap(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)) - SCREEN_SCALE_X(80));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_SELECT_X)), MENU_Y(Y(TEXT_SELECT_Y)), TheText.Get("FEC_CAM"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_START_X)), MENU_Y(Y(TEXT_START_Y)), TheText.Get("FEC_PAU"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R2_X)), MENU_Y(Y(TEXT_R2_Y)), TheText.Get("FEC_LR"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R1_X)), MENU_Y(Y(TEXT_R1_Y)), TheText.Get("FEC_CAW"));
|
|
|
|
|
CFont::SetJustifyOn();
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_TRIANGLE_X)), MENU_Y(Y(TEXT_TRIANGLE_Y)), TheText.Get("FEC_EXV"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CIRCLE_X)), MENU_Y(Y(TEXT_CIRCLE_Y)), TheText.Get("FEC_RSC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_CROSS_X)), MENU_Y(Y(TEXT_CROSS_Y)), TheText.Get("FEC_NA"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_RSTICK_X)), MENU_Y(Y(TEXT_RSTICK_Y)), TheText.Get("FEC_ACC"));
|
|
|
|
|
CFont::PrintString(MENU_X_LEFT_ALIGNED(X(TEXT_R3_X)), MENU_Y(Y(TEXT_R3_Y)), TheText.Get("FEC_BRA"));
|
|
|
|
|
CFont::SetRightJustifyOn();
|
|
|
|
|
CFont::SetRightJustifyWrap(0);
|
|
|
|
|
switch (m_PrefsControllerType)
|
|
|
|
|
{
|
|
|
|
|
case CONTROLLER_XBOXONE:
|
|
|
|
|
case CONTROLLER_XBOX360:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_SMT"));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
switch (m_PrefsLanguage)
|
|
|
|
|
{
|
|
|
|
|
case LANGUAGE_GERMAN:
|
|
|
|
|
TEXT_SQUARE_X += 5.0f;
|
|
|
|
|
case LANGUAGE_FRENCH:
|
|
|
|
|
case LANGUAGE_ITALIAN:
|
|
|
|
|
CFont::SetScale(MENU_X(SMALLESTTEXT_X_SCALE * 2 * scale * 0.65f), MENU_Y(SMALLESTTEXT_Y_SCALE * scale * 0.65f));
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_SMT"));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::PrintStringFromBottom(MENU_X_LEFT_ALIGNED(X(TEXT_SQUARE_X + 16.0f)), MENU_Y(Y(TEXT_SQUARE_Y)), TheText.Get("FEC_SMT"));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CFont::SetDropShadowPosition(0); // X
|
|
|
|
|
|
|
|
|
|
#undef X
|
|
|
|
|
#undef Y
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
|
CMenuManager::LoadController(int8 type)
|
|
|
|
|
{
|
|
|
|
|
switch (type)
|
|
|
|
|
{
|
|
|
|
|
case CONTROLLER_DUALSHOCK2:
|
|
|
|
|
case CONTROLLER_DUALSHOCK3:
|
|
|
|
|
case CONTROLLER_DUALSHOCK4:
|
|
|
|
|
CFont::LoadButtons("MODELS/PS3BTNS.TXD");
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
CFont::LoadButtons("MODELS/X360BTNS.TXD");
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Unload current textures
|
|
|
|
|
for (int i = MENUSPRITE_CONTROLLER; i <= MENUSPRITE_ARROWS4; i++)
|
|
|
|
|
m_aFrontEndSprites[i].Delete();
|
|
|
|
|
|
|
|
|
|
// Unload txd
|
|
|
|
|
int frontend_controller = CTxdStore::FindTxdSlot("frontend_controller");
|
|
|
|
|
if (frontend_controller != -1)
|
|
|
|
|
CTxdStore::RemoveTxd(frontend_controller);
|
|
|
|
|
|
|
|
|
|
// Find the new txd to load
|
|
|
|
|
bool bTxdMissing = true;
|
|
|
|
|
if (controllerTypesPaths[type])
|
|
|
|
|
if (int file = CFileMgr::OpenFile(controllerTypesPaths[type])) {
|
|
|
|
|
CFileMgr::CloseFile(file);
|
|
|
|
|
bTxdMissing = false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int txdSlot = -1;
|
|
|
|
|
|
|
|
|
|
if (bTxdMissing)
|
|
|
|
|
// Not found, fall back to original textures
|
|
|
|
|
txdSlot = CTxdStore::FindTxdSlot("frontend2");
|
|
|
|
|
else {
|
|
|
|
|
// Found, load txd
|
|
|
|
|
txdSlot = frontend_controller;
|
|
|
|
|
if (txdSlot == -1)
|
|
|
|
|
txdSlot = CTxdStore::AddTxdSlot("frontend_controller");
|
|
|
|
|
CTxdStore::LoadTxd(txdSlot, controllerTypesPaths[type]);
|
|
|
|
|
CTxdStore::AddRef(txdSlot);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
assert(txdSlot != -1);
|
|
|
|
|
// Load new textures
|
|
|
|
|
CTxdStore::SetCurrentTxd(txdSlot);
|
|
|
|
|
for (int i = MENUSPRITE_CONTROLLER; i <= MENUSPRITE_ARROWS4; i++) {
|
|
|
|
|
m_aFrontEndSprites[i].SetTexture(FrontendFilenames[i][0], FrontendFilenames[i][1]);
|
|
|
|
|
m_aFrontEndSprites[i].SetAddressing(rwTEXTUREADDRESSBORDER);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endif // GAMEPAD_MENU
|
|
|
|
|
|
|
|
|
|
#undef GetBackJustUp
|
|
|
|
|
#undef GetBackJustDown
|
|
|
|
|