refactor: route IPlatformGame and Leaderboard call sites through platform/

This commit is contained in:
MatthewBeshay 2026-04-09 19:28:57 +10:00
parent fbfccdeac6
commit 9c502ce8fc
15 changed files with 36 additions and 23 deletions

View file

@ -1,7 +1,7 @@
[wrap-git]
url = https://github.com/simdutf/simdutf.git
depth = 1
revision = v8.2.0
revision = fd476229424b40ae71a58dd5a205795c3d76b5f1
patch_directory = simdutf
[provide]

View file

@ -1,4 +1,5 @@
#include "app/common/Audio/SoundEngine.h"
#include "platform/game/game.h"
#include "app/common/DLC/DLCManager.h"
#include "app/common/Game.h"
#include "app/common/GameRules/GameRuleManager.h"
@ -454,13 +455,13 @@ void Game::HandleXuiActions(void) {
for (int j = 0; j < XUSER_MAX_COUNT; j++) {
if (pMinecraft->localplayers[j]) {
if (g_NetworkManager.IsLocalGame()) {
app.SetRichPresenceContext(
PlatformGame.SetRichPresenceContext(
j, CONTEXT_GAME_STATE_BLANK);
PlatformProfile.SetCurrentGameActivity(
j, CONTEXT_PRESENCE_MULTIPLAYEROFFLINE,
false);
} else {
app.SetRichPresenceContext(
PlatformGame.SetRichPresenceContext(
j, CONTEXT_GAME_STATE_BLANK);
PlatformProfile.SetCurrentGameActivity(
j, CONTEXT_PRESENCE_MULTIPLAYER, false);
@ -468,7 +469,7 @@ void Game::HandleXuiActions(void) {
}
}
} else {
app.SetRichPresenceContext(i, CONTEXT_GAME_STATE_BLANK);
PlatformGame.SetRichPresenceContext(i, CONTEXT_GAME_STATE_BLANK);
if (g_NetworkManager.IsLocalGame()) {
PlatformProfile.SetCurrentGameActivity(
i, CONTEXT_PRESENCE_MULTIPLAYER_1POFFLINE,

View file

@ -1,4 +1,5 @@
#include "GameNetworkManager.h"
#include "platform/game/game.h"
#include <assert.h>
@ -349,7 +350,7 @@ bool CGameNetworkManager::StartNetworkGame(Minecraft* minecraft,
createdConnections.push_back(connection);
int primaryPad = PlatformProfile.GetPrimaryPad();
app.SetRichPresenceContext(primaryPad, CONTEXT_GAME_STATE_BLANK);
PlatformGame.SetRichPresenceContext(primaryPad, CONTEXT_GAME_STATE_BLANK);
if (GetPlayerCount() >
1) // Are we offline or online, and how many players are there
{
@ -451,7 +452,7 @@ bool CGameNetworkManager::StartNetworkGame(Minecraft* minecraft,
if (g_NetworkManager.IsLeavingGame() || !IsInSession()) break;
if (PlatformProfile.IsSignedIn(idx) && !connection->isClosed()) {
app.SetRichPresenceContext(idx, CONTEXT_GAME_STATE_BLANK);
PlatformGame.SetRichPresenceContext(idx, CONTEXT_GAME_STATE_BLANK);
if (IsLocalGame())
PlatformProfile.SetCurrentGameActivity(
idx, CONTEXT_PRESENCE_MULTIPLAYEROFFLINE, false);
@ -1221,7 +1222,7 @@ void CGameNetworkManager::PlayerJoining(INetworkPlayer* pNetworkPlayer) {
g_NetworkManager.GetLocalPlayerByUserIndex(iPad);
if (pNetworkPlayer == nullptr) continue;
app.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_BLANK);
PlatformGame.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_BLANK);
if (multiplayer) {
if (localgame)
PlatformProfile.SetCurrentGameActivity(

View file

@ -1,5 +1,6 @@
#include "UIScene_MainMenu.h"
#include "platform/game/game.h"
#include <chrono>
#include <cmath>
@ -769,7 +770,7 @@ void UIScene_MainMenu::RunPlayGame(int iPad) {
// clear the remembered signed in users so their profiles get read again
app.ClearSignInChangeUsersMask();
app.ReleaseSaveThumbnail();
PlatformGame.ReleaseSaveThumbnail();
if (PlatformProfile.IsGuest(iPad)) {
unsigned int uiIDA[1];

View file

@ -1,5 +1,6 @@
#include "UIScene_AnvilMenu.h"
#include "platform/game/game.h"
#include <assert.h>
#include <wchar.h>
@ -92,7 +93,7 @@ UIScene_AnvilMenu::UIScene_AnvilMenu(int iPad, void* _initData,
setIgnoreInput(false);
app.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_ANVIL);
PlatformGame.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_ANVIL);
}
std::string UIScene_AnvilMenu::getMoviePath() {

View file

@ -1,4 +1,5 @@
#include "UIScene_BeaconMenu.h"
#include "platform/game/game.h"
#include <assert.h>
@ -61,7 +62,7 @@ UIScene_BeaconMenu::UIScene_BeaconMenu(int iPad, void* _initData,
m_slotListActivatorIcons.addSlots(m_menu->getSize(), 4);
// app.SetRichPresenceContext(m_iPad,CONTEXT_GAME_STATE_BEACON);
// PlatformGame.SetRichPresenceContext(m_iPad,CONTEXT_GAME_STATE_BEACON);
delete initData;
}

View file

@ -1,4 +1,5 @@
#include "UIScene_BrewingStandMenu.h"
#include "platform/game/game.h"
#include <assert.h>
@ -61,7 +62,7 @@ UIScene_BrewingStandMenu::UIScene_BrewingStandMenu(int iPad, void* _initData,
if (initData) delete initData;
app.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_BREWING);
PlatformGame.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_BREWING);
}
std::string UIScene_BrewingStandMenu::getMoviePath() {

View file

@ -1,5 +1,6 @@
#include "UIScene_EnchantingMenu.h"
#include "platform/game/game.h"
#include <assert.h>
@ -55,7 +56,7 @@ UIScene_EnchantingMenu::UIScene_EnchantingMenu(int iPad, void* _initData,
m_slotListIngredient.addSlots(EnchantmentMenu::INGREDIENT_SLOT, 1);
app.SetRichPresenceContext(m_iPad, CONTEXT_GAME_STATE_ENCHANTING);
PlatformGame.SetRichPresenceContext(m_iPad, CONTEXT_GAME_STATE_ENCHANTING);
delete initData;
}

View file

@ -1,5 +1,6 @@
#include "UIScene_FurnaceMenu.h"
#include "platform/game/game.h"
#include <assert.h>
@ -53,7 +54,7 @@ UIScene_FurnaceMenu::UIScene_FurnaceMenu(int iPad, void* _initData,
m_slotListIngredient.addSlots(FurnaceMenu::INGREDIENT_SLOT, 1);
m_slotListResult.addSlots(FurnaceMenu::RESULT_SLOT, 1);
app.SetRichPresenceContext(m_iPad, CONTEXT_GAME_STATE_FORGING);
PlatformGame.SetRichPresenceContext(m_iPad, CONTEXT_GAME_STATE_FORGING);
delete initData;
}

View file

@ -1,4 +1,5 @@
#include "UIScene_HorseInventoryMenu.h"
#include "platform/game/game.h"
#include <assert.h>
@ -77,7 +78,7 @@ UIScene_HorseInventoryMenu::UIScene_HorseInventoryMenu(int iPad,
setIgnoreInput(false);
// app.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_HORSE);
// PlatformGame.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_HORSE);
}
std::string UIScene_HorseInventoryMenu::getMoviePath() {

View file

@ -1,5 +1,6 @@
#include "UIScene_TradingMenu.h"
#include "platform/game/game.h"
#include <memory>
#include <utility>
@ -83,7 +84,7 @@ UIScene_TradingMenu::UIScene_TradingMenu(int iPad, void* _initData,
ui.OverrideSFX(m_iPad, ACTION_MENU_UP, true);
ui.OverrideSFX(m_iPad, ACTION_MENU_DOWN, true);
app.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_TRADING);
PlatformGame.SetRichPresenceContext(iPad, CONTEXT_GAME_STATE_TRADING);
}
std::string UIScene_TradingMenu::getMoviePath() {

View file

@ -1,5 +1,6 @@
#include "UIScene_CraftingMenu.h"
#include "platform/game/game.h"
#include "app/common/Tutorial/Tutorial.h"
#include "app/common/Tutorial/TutorialEnum.h"
@ -118,7 +119,7 @@ UIScene_CraftingMenu::UIScene_CraftingMenu(int iPad, void* _initData,
#endif
app.SetRichPresenceContext(m_iPad, CONTEXT_GAME_STATE_CRAFTING);
PlatformGame.SetRichPresenceContext(m_iPad, CONTEXT_GAME_STATE_CRAFTING);
setGroupText(GetGroupNameText(m_pGroupA[m_iGroupIndex]));
// Update the tutorial state

View file

@ -1,4 +1,5 @@
#include "LinuxGame.h"
#include "platform/game/game.h"
#include <assert.h>
@ -51,7 +52,7 @@ void LinuxGame::TemporaryCreateGameStart() {
// From CScene_Main::RunPlayGame
Minecraft* pMinecraft = Minecraft::GetInstance();
app.ReleaseSaveThumbnail();
PlatformGame.ReleaseSaveThumbnail();
PlatformProfile.SetLockedProfile(0);
pMinecraft->user->name = "Windows";
app.ApplyGameSettingsChanged(0);

View file

@ -1,5 +1,6 @@

#include "WindowsGame.h"
#include "platform/game/game.h"
#include "app/common/Game.h"
#include "minecraft/client/Minecraft.h"
#include "minecraft/client/User.h"
@ -42,7 +43,7 @@ void WindowsGame::TemporaryCreateGameStart() {
// From CScene_Main::RunPlayGame
Minecraft* pMinecraft = Minecraft::GetInstance();
app.ReleaseSaveThumbnail();
PlatformGame.ReleaseSaveThumbnail();
PlatformProfile.SetLockedProfile(0);
pMinecraft->user->name = "Windows";
app.ApplyGameSettingsChanged(0);

View file

@ -10,8 +10,8 @@
#include <vector>
#include "app/common/App_structs.h"
#include "app/common/Leaderboards/LeaderboardManager.h"
#include "app/linux/LinuxGame.h"
#include "platform/leaderboard/leaderboard.h"
#include "minecraft/stats/Achievement.h"
#include "minecraft/stats/Achievements.h"
#include "minecraft/stats/GenericStats.h"
@ -248,9 +248,9 @@ void StatsCounter::save(int player, bool force) {
}
void StatsCounter::flushLeaderboards() {
if (LeaderboardManager::Instance()->OpenSession()) {
if (PlatformLeaderboard.OpenSession()) {
writeStats();
LeaderboardManager::Instance()->FlushStats();
PlatformLeaderboard.FlushStats();
} else {
Log::info(
"Failed to open a session in order to write to leaderboard\n");
@ -264,9 +264,9 @@ void StatsCounter::flushLeaderboards() {
}
void StatsCounter::saveLeaderboards() {
if (LeaderboardManager::Instance()->OpenSession()) {
if (PlatformLeaderboard.OpenSession()) {
writeStats();
LeaderboardManager::Instance()->CloseSession();
PlatformLeaderboard.CloseSession();
} else {
Log::info(
"Failed to open a session in order to write to leaderboard\n");