Merge remote-tracking branch 'origin/main' into networking

This commit is contained in:
2026-09-06 09:33:19 -04:00
1476 changed files with 260663 additions and 269030 deletions
+131 -18
View File
@@ -1,4 +1,5 @@
#include "stdafx.h"
#include "Windows64_Minecraft.h"
#include "..\Common\Consoles_App.h"
#include "..\User.h"
#include "..\..\Minecraft.Client\Minecraft.h"
@@ -24,26 +25,131 @@ void CConsoleMinecraftApp::SetRichPresenceContext(int iPad, int contextId)
void CConsoleMinecraftApp::StoreLaunchData()
{
}
void CConsoleMinecraftApp::ExitGame()
{
extern HWND g_hWnd;
PostMessage(g_hWnd, WM_CLOSE, 0, 0);
app.DebugPrintf("CConsoleMinecraftApp::ExitGame\n");
//str1k3r - since ExitGame is always ran by the user, it should always be 0
PostQuitMessage(0);
}
void CConsoleMinecraftApp::FatalLoadError()
{
//str1k3r - very much inspired by the PS3 FatalLoadError :3
wchar_t *aStrings[2];
app.DebugPrintf("CConsoleMinecraftApp::FatalLoadError\n");
switch (XGetLanguage())
{
case XC_LANGUAGE_GERMAN:
aStrings[0] = L"Ladefehler";
aStrings[1] = L"Minecraft: Cafeberry Edition konnte nicht geladen werden und kann daher nicht fortgesetzt werden.";
break;
case XC_LANGUAGE_SPANISH:
aStrings[0] = L"Error al cargar";
aStrings[1] = L"Se ha producido un error al cargar Minecraft: Cafeberry Edition y no es posible continuar.";
break;
case XC_LANGUAGE_FRENCH:
aStrings[0] = L"Échec du chargement";
aStrings[1] = L"Le chargement de Minecraft: Cafeberry Edition a échoué : impossible de continuer.";
break;
case XC_LANGUAGE_ITALIAN:
aStrings[0] = L"Errore caricamento";
aStrings[1] = L"Caricamento Minecraft: Cafeberry Edition non riuscito, impossibile continuare.";
break;
case XC_LANGUAGE_JAPANESE:
aStrings[0] = L"ロード エラー";
aStrings[1] = L"Minecraft Cafeberry 版のロードに失敗しました。続行できません";
break;
case XC_LANGUAGE_KOREAN:
aStrings[0] = L"불러오기 오류";
aStrings[1] = L"Minecraft: Cafeberry Edition 을 불러오는 중에 오류가 발생하여 계속할 수 없습니다.";
break;
case XC_LANGUAGE_PORTUGUESE:
aStrings[0] = L"Erro de Carregamento";
aStrings[1] = L"Não foi possível carregar Minecraft: Cafeberry Edition e não é possível continuar.";
break;
case XC_LANGUAGE_RUSSIAN:
aStrings[0] = L"Ошибка при загрузке";
aStrings[1] = L"Не удалось загрузить игру Minecraft: Cafeberry Edition. Продолжить загрузку невозможно.";
break;
case XC_LANGUAGE_TCHINESE:
aStrings[0] = L"載入錯誤";
aStrings[1] = L"無法載入「Minecraft: Cafeberry Edition」,因此無法繼續。";
break;
case XC_LANGUAGE_DUTCH:
aStrings[0] = L"Fout tijdens het laden";
aStrings[1] = L"Minecraft: Cafeberry Edition kan niet worden geladen.";
break;
case XC_LANGUAGE_FINISH:
aStrings[0] = L"Latausvirhe";
aStrings[1] = L"Minecraft: Cafeberry Edition -pelin lataaminen ei onnistunut, eikä sitä voi jatkaa.";
break;
case XC_LANGUAGE_SWEDISH:
aStrings[0] = L"Laddningsfel";
aStrings[1] = L"Minecraft: Cafeberry Edition kunde inte laddas och kan inte fortsätta.";
break;
case XC_LANGUAGE_DANISH:
aStrings[0] = L"Indlæsningsfejl";
aStrings[1] = L"Minecraft: Cafeberry Edition kunne ikke blive indlæst og kan derfor ikke fortsætte.";
break;
case XC_LANGUAGE_BNORWEGIAN:
aStrings[0] = L"Innlastingsfeil";
aStrings[1] = L"Feil under innlasting av Minecraft: Cafeberry Edition. Kan ikke fortsette.";
break;
case XC_LANGUAGE_POLISH:
aStrings[0] = L"Błąd wczytywania";
aStrings[1] = L"Wystąpił błąd podczas wczytywania Minecraft: Edycja Cafeberry. Dalsze działanie jest niemożliwe.";
break;
case XC_LANGUAGE_TURKISH:
aStrings[0] = L"Yükleme Hatası";
aStrings[1] = L"Minecraft: Cafeberry Edition yüklenemedi ve devam edemiyor.";
break;
case XC_LOCALE_LATIN_AMERICA:
aStrings[0] = L"Error al cargar";
aStrings[1] = L"Se produjo un error al cargar Minecraft: Cafeberry Edition y no es posible continuar.";
break;
default:
aStrings[0] = L"Loading Error";
aStrings[1] = L"Minecraft: Cafeberry Edition has failed to load, and cannot continue.";
break;
}
//str1k3r - yes, i made them all say femboy edition (piebot said no :c)
int result = MessageBoxW(
NULL,
aStrings[1],
aStrings[0],
MB_OK
);
if (result == IDOK) {
PostQuitMessage(1); //str1k3r - since this is a fatal load error, exit with a nonzero exitcode
}
}
void CConsoleMinecraftApp::CaptureSaveThumbnail()
{
}
void CConsoleMinecraftApp::GetSaveThumbnail(PBYTE *pbData,DWORD *pdwSize)
{
}
void CConsoleMinecraftApp::ReleaseSaveThumbnail()
{
RenderManager.CaptureThumbnail(&m_ThumbnailBuffer);
}
void CConsoleMinecraftApp::GetScreenshot(int iPad,PBYTE *pbData,DWORD *pdwSize)
void CConsoleMinecraftApp::GetSaveThumbnail(PBYTE *pbData,DWORD *pdwSize)
{
if (m_ThumbnailBuffer.Allocated())
{
if (pbData)
{
*pbData = new BYTE[m_ThumbnailBuffer.GetBufferSize()];
*pdwSize = m_ThumbnailBuffer.GetBufferSize();
memcpy(*pbData, m_ThumbnailBuffer.GetBufferPointer(), *pdwSize);
}
m_ThumbnailBuffer.Release();
}
}
void CConsoleMinecraftApp::ReleaseSaveThumbnail()
{
}
@@ -116,21 +222,28 @@ void CConsoleMinecraftApp::TemporaryCreateGameStart()
thread->Run();
}
int CConsoleMinecraftApp::GetLocalTMSFileIndex(WCHAR *wchTMSFile,bool bFilenameIncludesExtension,eFileExtensionType eEXT)
void CConsoleMinecraftApp::GetScreenshot(int iPad,PBYTE *pbData,DWORD *pdwSize)
{
return -1;
}
int CConsoleMinecraftApp::LoadLocalTMSFile(WCHAR *wchTMSFile)
std::wstring CConsoleMinecraftApp::UTF8ToWide(const char* utf8)
{
return -1;
int size = MultiByteToWideChar(CP_UTF8, 0, utf8, -1, nullptr, 0);
std::wstring wstr(size, 0);
MultiByteToWideChar(CP_UTF8, 0, utf8, -1, &wstr[0], size);
wstr.resize(size - 1);
return wstr;
}
int CConsoleMinecraftApp::LoadLocalTMSFile(WCHAR *wchTMSFile, eFileExtensionType eExt)
void CConsoleMinecraftApp::CopyWideArgToAnsi(LPCWSTR source, char* dest, size_t destSize)
{
return -1;
}
if (destSize == 0)
return;
void CConsoleMinecraftApp::FreeLocalTMSFiles(eTMSFileType eType)
{
dest[0] = 0;
if (source == nullptr)
return;
WideCharToMultiByte(CP_ACP, 0, source, -1, dest, static_cast<int>(destSize), nullptr, nullptr);
dest[destSize - 1] = 0;
}