summaryrefslogtreecommitdiffstats
path: root/src/core/Frontend.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/Frontend.h')
-rw-r--r--src/core/Frontend.h64
1 files changed, 37 insertions, 27 deletions
diff --git a/src/core/Frontend.h b/src/core/Frontend.h
index 89517528..7b0e2f4b 100644
--- a/src/core/Frontend.h
+++ b/src/core/Frontend.h
@@ -1,4 +1,7 @@
#pragma once
+#ifdef PS2_MENU
+#include "Frontend_PS2.h"
+#else
#include "Sprite2d.h"
@@ -81,20 +84,6 @@
#define CONTSETUP_BACK_BOTTOM 122.0f
#define CONTSETUP_BACK_HEIGHT 25.0f
-enum eLanguages
-{
- LANGUAGE_AMERICAN,
- LANGUAGE_FRENCH,
- LANGUAGE_GERMAN,
- LANGUAGE_ITALIAN,
- LANGUAGE_SPANISH,
-#ifdef MORE_LANGUAGES
- LANGUAGE_POLISH,
- LANGUAGE_RUSSIAN,
- LANGUAGE_JAPANESE,
-#endif
-};
-
enum eFrontendSprites
{
FE2_MAINPANEL_UL,
@@ -245,7 +234,7 @@ enum eMenuScreen
MENUPAGE_SKIN_SELECT = 54,
MENUPAGE_KEYBOARD_CONTROLS = 55,
MENUPAGE_MOUSE_CONTROLS = 56,
- MENUPAGE_57 = 57, // mission failed, wanna restart page in mobile
+ MENUPAGE_MISSION_RETRY = 57,
MENUPAGE_58 = 58,
#ifdef MENU_MAP
MENUPAGE_MAP = 59,
@@ -327,7 +316,7 @@ enum eMenuAction
MENUACTION_UNK69,
MENUACTION_UNK70,
MENUACTION_FINDMP,
- MENUACTION_REDEFCTRL,
+ MENUACTION_KEYBOARDCTRLS,
MENUACTION_UNK73,
MENUACTION_INITMP,
MENUACTION_MP_PLAYERCOLOR,
@@ -366,13 +355,12 @@ enum eMenuAction
MENUACTION_UNK108,
MENUACTION_UNK109,
MENUACTION_UNK110,
-#ifdef MORE_LANGUAGES
- MENUACTION_LANG_PL,
- MENUACTION_LANG_RUS,
- MENUACTION_LANG_JAP,
-#endif
-#ifdef IMPROVED_VIDEOMODE
- MENUACTION_SCREENMODE
+ MENUACTION_UNK111,
+ MENUACTION_UNK112,
+ MENUACTION_REJECT_RETRY,
+ MENUACTION_UNK114,
+#ifdef CUSTOM_FRONTEND_OPTIONS
+ MENUACTION_TRIGGERFUNC
#endif
};
@@ -468,7 +456,7 @@ struct CMenuScreen
int32 m_Action; // eMenuAction
char m_EntryName[8];
int32 m_SaveSlot; // eSaveSlot
- int32 m_TargetMenu; // eMenuScreen
+ int32 m_TargetMenu; // eMenuScreen // FrontendOption ID if it's a custom option
} m_aEntries[NUM_MENUROWS];
};
@@ -530,7 +518,7 @@ public:
int32 m_nHoverOption;
int32 m_nCurrScreen;
int32 m_nCurrOption;
- int32 m_nPrevOption;
+ int32 m_nOptionMouseHovering;
int32 m_nPrevScreen;
uint32 field_558;
int32 m_nCurrSaveSlot;
@@ -545,6 +533,19 @@ public:
int32 m_nSelectedScreenMode;
#endif
+ enum LANGUAGE
+ {
+ LANGUAGE_AMERICAN,
+ LANGUAGE_FRENCH,
+ LANGUAGE_GERMAN,
+ LANGUAGE_ITALIAN,
+ LANGUAGE_SPANISH,
+#ifdef MORE_LANGUAGES
+ LANGUAGE_POLISH,
+ LANGUAGE_RUSSIAN,
+ LANGUAGE_JAPANESE,
+#endif
+ };
public:
bool GetIsMenuActive() {return !!m_bMenuActive;}
@@ -581,6 +582,10 @@ public:
static uint8 m_PrefsPlayerGreen;
static uint8 m_PrefsPlayerBlue;
+#ifdef CUTSCENE_BORDERS_SWITCH
+ static bool m_PrefsCutsceneBorders;
+#endif
+
#ifndef MASTER
static bool m_PrefsMarketing;
static bool m_PrefsDisableTutorials;
@@ -647,12 +652,14 @@ public:
int GetNumOptionsCntrlConfigScreens();
int ConstructStatLine(int);
- // New (not in function or inlined in the game)
- void ThingsToDoBeforeLeavingPage();
+ // Those are either inlined in game, not in function yet, or I can't believe that they're not inlined.
+ // Names were made up by me.
+ void ThingsToDoBeforeGoingBack();
void ScrollUpListByOne();
void ScrollDownListByOne();
void PageUpList(bool);
void PageDownList(bool);
+ int8 GetPreviousPageOption();
// uint8 GetNumberOfMenuOptions();
};
@@ -662,3 +669,6 @@ VALIDATE_SIZE(CMenuManager, 0x564);
#endif
extern CMenuManager FrontEndMenuManager;
+extern CMenuScreen aScreens[];
+
+#endif \ No newline at end of file