fix: player list count, leaderboard stubs

This commit is contained in:
2026-07-14 12:16:55 -07:00
parent 43b9d829c8
commit 0eea592b86
10 changed files with 34 additions and 16 deletions
@@ -9,7 +9,9 @@ const wstring LeaderboardManager::filterNames[eNumFilterModes] =
L"Friends", L"MyScore", L"TopRank"
};
#if !defined(_WINDOWS64) && !defined(_DURANGO) && !defined(__ORBIS__) && !defined(__PS3__) && !defined(__PSVITA__) && !defined(_XBOX)
LeaderboardManager *LeaderboardManager::m_instance = NULL;
#endif
void LeaderboardManager::DeleteInstance()
{
@@ -165,6 +165,6 @@ private:
void NotifyPlayerJoined( IQNetPlayer *pQNetPlayer );
#ifndef _XBOX
void FakeLocalPlayerJoined() { NotifyPlayerJoined(m_pIQNet->GetLocalPlayerByUserIndex(0)); }
void FakeLocalPlayerJoined() { AddLocalPlayerByUserIndex(0); }
#endif
};
@@ -93,7 +93,9 @@ void UIScene_InGameInfoMenu::updateTooltips()
if(CGameNetworkManager::usingAdhocMode()) keyX = -1;
#endif
INetworkPlayer *selectedPlayer = g_NetworkManager.GetPlayerBySmallId(m_players[m_playerList.getCurrentSelection()]->m_smallId);
INetworkPlayer *selectedPlayer = NULL;
if(m_playerList.getCurrentSelection() < m_players.size())
selectedPlayer = g_NetworkManager.GetPlayerBySmallId(m_players[m_playerList.getCurrentSelection()]->m_smallId);
int keyA = -1;
Minecraft *pMinecraft = Minecraft::GetInstance();
@@ -335,7 +337,9 @@ void UIScene_InGameInfoMenu::handlePress(F64 controlId, F64 childId)
break;
case eControl_GamePlayers:
int currentSelection = (int)childId;
INetworkPlayer *selectedPlayer = g_NetworkManager.GetPlayerBySmallId(m_players[currentSelection]->m_smallId);
INetworkPlayer *selectedPlayer = NULL;
if(currentSelection < m_players.size())
selectedPlayer = g_NetworkManager.GetPlayerBySmallId(m_players[currentSelection]->m_smallId);
Minecraft *pMinecraft = Minecraft::GetInstance();
shared_ptr<MultiplayerLocalPlayer> localPlayer = pMinecraft->localplayers[m_iPad];
@@ -387,6 +391,8 @@ void UIScene_InGameInfoMenu::handleFocusChange(F64 controlId, F64 childId)
void UIScene_InGameInfoMenu::OnPlayerChanged(void *callbackParam, INetworkPlayer *pPlayer, bool leaving)
{
if(pPlayer == NULL) return;
app.DebugPrintf("<UIScene_InGameInfoMenu::OnPlayerChanged> Player \"%ls\" %s (smallId: %d)\n", pPlayer->GetOnlineName(), leaving ? "leaving" : "joining", pPlayer->GetSmallId());
UIScene_InGameInfoMenu *scene = (UIScene_InGameInfoMenu *)callbackParam;