Attempt to make LCJ Menu look more like the OG

Also some code cleanup for it
This commit is contained in:
GabsPuNs
2026-06-17 22:47:42 -04:00
parent 4c2665aef0
commit 18871ed84d
3 changed files with 44 additions and 1195 deletions

View File

@@ -3,7 +3,7 @@ body
width: 100%;
height: 100%;
font-family: Minecraft Default;
font-size: 14dp;
font-size: 36dp;
font-effect: shadow(1dp 1dp #000000);
color: #ffffff;
background: transparent;
@@ -14,8 +14,8 @@ body
div#lcj_menu
{
width: 650dp;
height: 600dp;
width: 898dp;
height: 774dp;
margin: auto;
display: flex;
flex-direction: column;
@@ -24,8 +24,8 @@ div#lcj_menu
div#tab_bar
{
width: 682dp;
height: 56dp;
width: 930dp;
height: 92dp;
display: flex;
flex-direction: row;
margin-bottom: 0;
@@ -36,13 +36,14 @@ div#tab_bar
button.tab
{
display: block;
height: 56dp;
height: 92dp;
flex: 0;
color: #ffffff;
font-size: 22dp;
color: #000000;
font-size: 36dp;
font-effect: none;
font-weight: normal;
text-align: center;
line-height: 63dp;
line-height: 100dp;
cursor: pointer;
background: transparent;
border-width: 0px;
@@ -55,7 +56,7 @@ button.tab
button.tab:hover,
button.tab.selected
{
line-height: 58dp;
line-height: 80dp;
}
button.tab_left
@@ -124,8 +125,7 @@ div.list_container
div.list_item
{
width: 100%;
height: 48dp;
margin-bottom: 4dp;
height: 90dp;
display: flex;
flex-direction: row;
align-items: center;
@@ -144,12 +144,12 @@ div.list_item button
display: flex;
align-items: center;
justify-content: flex-start;
padding-left: 16dp;
padding-left: 20dp;
padding-right: 16dp;
margin: 0 20dp;
gap: 8dp;
margin: 0 44dp;
gap: 30dp;
color: #ffffff;
font-size: 20dp;
font-size: 36dp;
background: transparent;
border-width: 0px;
cursor: pointer;
@@ -165,15 +165,15 @@ div.list_item button.selected
div.list_item button img.thumb
{
width: 32dp;
height: 32dp;
width: 64dp;
height: 64dp;
}
div.timer
{
width: 100%;
text-align: center;
font-size: 18dp;
font-size: 36dp;
color: #aaaaaa;
padding: 20dp 0;
display: none;
@@ -183,7 +183,7 @@ div.no_games
{
width: 100%;
text-align: center;
font-size: 18dp;
font-size: 36dp;
color: #aaaaaa;
padding: 40dp 0;
display: none;

File diff suppressed because it is too large Load Diff

View File

@@ -16,13 +16,6 @@
class LevelGenerationOptions;
class C4JThread;
#if defined __PS3__ || defined __ORBIS__ || defined(__PSVITA__)
#define SONY_REMOTE_STORAGE_DOWNLOAD
#endif
#if defined __PS3__ || __PSVITA__
#define SONY_REMOTE_STORAGE_UPLOAD
#endif
class UIScene_LoadCreateJoinMenu : public UIScene, public Rml::EventListener
{
private:
@@ -34,9 +27,7 @@ private:
eControl_TabLoad,
eControl_TabCreate,
eControl_TabJoin,
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
eControl_SpaceIndicator,
#endif
};
enum ELoadCreateJoinTab
@@ -137,9 +128,7 @@ public:
virtual EUIScene getSceneType() { return eUIScene_LoadCreateJoinMenu; }
static void UpdateGamesListCallback(LPVOID pParam);
#ifdef _XBOX_ONE
void HandleDLCLicenseChange();
#endif
virtual void tick();
// Override focus/movie lifecycle for RmlUi (no Iggy movie)
@@ -188,26 +177,15 @@ public:
static int DeleteSaveDataReturned(LPVOID lpParam,bool bRes);
static int RenameSaveDataReturned(LPVOID lpParam,bool bRes);
static int KeyboardCompleteWorldNameCallback(LPVOID lpParam,bool bRes);
#ifdef __PSVITA__
static int MustSignInTexturePack(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int MustSignInReturnedTexturePack(void *pParam,bool bContinue, int iPad);
static int SignInAdhocReturned(void *pParam,bool bContinue, int iPad);
#endif
protected:
void handlePress(F64 controlId, F64 childId);
void LoadLevelGen(LevelGenerationOptions *levelGen);
void LoadSaveFromDisk(File *saveFile, ESavePlatform savePlatform = SAVE_FILE_PLATFORM_LOCAL);
#if defined(__PS3__) || defined(__PSVITA__) || defined(__ORBIS__)
void LoadSaveFromCloud();
#endif
public:
virtual void HandleDLCMountingComplete();
#ifdef __ORBIS__
void LoadRemoteFileFromDisk(char* remoteFilename);
#endif
private:
void CheckAndJoinGame(int gameIndex);
@@ -223,138 +201,6 @@ private:
static int AddServerKeyboardCallback(LPVOID lpParam, bool bRes);
#endif
#if defined(__PS3__) || defined(__PSVITA__) || defined(__ORBIS__)
static int MustSignInReturnedPSN(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int PSN_SignInReturned(void *pParam,bool bContinue, int iPad);
static void remoteStorageGetSaveCallback(LPVOID lpParam, SonyRemoteStorage::Status s, int error_code);
#endif
#ifdef __ORBIS__
//static int PSPlusReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
#endif
#ifdef _XBOX_ONE
typedef struct _SaveTransferStateContainer
{
int m_iProgress;
bool m_bSaveTransferInProgress;
bool m_bSaveTransferCancelled;
int m_iPad;
C4JStorage::eSaveTransferState m_eSaveTransferState;
UIScene_LoadCreateJoinMenu *m_pClass;
} SaveTransferStateContainer;
enum ESaveTransferFiles
{
eSaveTransferFile_Marker,
eSaveTransferFile_Metadata,
eSaveTransferFile_SaveData,
};
static ESaveTransferFiles s_eSaveTransferFile;
static unsigned long s_ulFileSize;
static byteArray s_transferData;
static wstring m_wstrStageText;
LoadMenuInitData *m_loadMenuInitData;
#ifdef _DEBUG_MENUS_ENABLED
static C4JStorage::SAVETRANSFER_FILE_DETAILS m_debugTransferDetails;
#endif
void LaunchSaveTransfer();
static int DownloadXbox360SaveThreadProc( LPVOID lpParameter );
static void RequestFileSize( SaveTransferStateContainer *pClass, wchar_t *filename );
static void RequestFileData( SaveTransferStateContainer *pClass, wchar_t *filename );
static int SaveTransferReturned(LPVOID lpParam,C4JStorage::SAVETRANSFER_FILE_DETAILS *pSaveTransferDetails);
static int SaveTransferUpdateProgress(LPVOID lpParam,unsigned long ulBytesReceived);
static void CancelSaveTransferCallback(LPVOID lpParam);
static int NeedSyncMessageReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int CancelSaveTransferCompleteCallback(LPVOID lpParam);
#endif
#ifdef SONY_REMOTE_STORAGE_DOWNLOAD
enum eSaveTransferState
{
eSaveTransfer_Idle,
eSaveTransfer_Busy,
eSaveTransfer_GetRemoteSaveInfo,
eSaveTransfer_GettingRemoteSaveInfo,
eSaveTransfer_CreateDummyFile,
eSaveTransfer_CreatingDummyFile,
eSaveTransfer_GettingFileSize,
eSaveTransfer_FileSizeRetrieved,
eSaveTransfer_GetFileData,
eSaveTransfer_GettingFileData,
eSaveTransfer_FileDataRetrieved,
eSaveTransfer_GetSavesInfo,
eSaveTransfer_GettingSavesInfo,
eSaveTransfer_LoadSaveFromDisc,
eSaveTransfer_LoadingSaveFromDisc,
eSaveTransfer_CreatingNewSave,
eSaveTransfer_Converting,
eSaveTransfer_Saving,
eSaveTransfer_Succeeded,
eSaveTransfer_Cancelled,
eSaveTransfer_Error,
eSaveTransfer_ErrorDeletingSave,
eSaveTransfer_ErrorMesssage,
eSaveTransfer_Finished,
};
eSaveTransferState m_eSaveTransferState;
static unsigned long m_ulFileSize;
static wstring m_wstrStageText;
static bool m_bSaveTransferRunning;
int m_iProgress;
char m_downloadedUniqueFilename[64];//SCE_SAVE_DATA_DIRNAME_DATA_MAXSIZE];
bool m_saveTransferDownloadCancelled;
void LaunchSaveTransfer();
static int CreateDummySaveDataCallback(LPVOID lpParam,bool bRes);
static int CrossSaveGetSavesInfoCallback(LPVOID lpParam, SAVE_DETAILS *pSaveDetails,bool bRes);
static int LoadCrossSaveDataCallback(void *pParam,bool bIsCorrupt, bool bIsOwner);
static int CrossSaveFinishedCallback(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int CrossSaveDeleteOnErrorReturned(LPVOID lpParam,bool bRes);
static int RemoteSaveNotFoundCallback(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int DownloadSonyCrossSaveThreadProc( LPVOID lpParameter );
static void SaveTransferReturned(LPVOID lpParam, SonyRemoteStorage::Status s, int error_code);
static ConsoleSaveFile* SonyCrossSaveConvert();
static void CancelSaveTransferCallback(LPVOID lpParam);
public:
static bool isSaveTransferRunning() { return m_bSaveTransferRunning; }
private:
#endif
#ifdef SONY_REMOTE_STORAGE_UPLOAD
enum eSaveUploadState
{
eSaveUpload_Idle,
eSaveUpload_UploadingFileData,
eSaveUpload_FileDataUploaded,
eSaveUpload_Cancelled,
eSaveUpload_Error,
esaveUpload_Finished
};
eSaveUploadState m_eSaveUploadState;
bool m_saveTransferUploadCancelled;
void LaunchSaveUpload();
static int UploadSonyCrossSaveThreadProc( LPVOID lpParameter );
static void SaveUploadReturned(LPVOID lpParam, SonyRemoteStorage::Status s, int error_code);
static void CancelSaveUploadCallback(LPVOID lpParam);
static int SaveTransferDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int CrossSaveUploadFinishedCallback(void *pParam,int iPad,C4JStorage::EMessageResult result);
#endif
#if defined _XBOX_ONE || defined __ORBIS__
static int CopySaveDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int CopySaveThreadProc( LPVOID lpParameter );
static int CopySaveDataReturned( LPVOID lpParameter, bool success, C4JStorage::ESaveGameState state );
static bool CopySaveDataProgress(LPVOID lpParam, int percent);
static void CancelCopySaveCallback(LPVOID lpParam);
static int CopySaveErrorDialogFinishedCallback(void *pParam,int iPad,C4JStorage::EMessageResult result);
#endif
// RmlUi document
private:
Rml::ElementDocument* m_document;
@@ -362,4 +208,4 @@ private:
#pragma pop_macro("GetFirstChild")
#pragma pop_macro("GetNextSibling")
#pragma pop_macro("byte")
#pragma pop_macro("byte")