mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-05-25 03:12:53 +00:00
Merge pull request #297 from realffqq/dev
(java ui) remap creative inventory to C and ensure serverside unpausing in all scenarios
This commit is contained in:
commit
4c30ef1e62
|
|
@ -3683,10 +3683,7 @@ void Minecraft::tick(bool bFirst, bool bUpdateTextures) {
|
|||
Minecraft::GetInstance()->player);
|
||||
ui.PlayUISFX(eSFX_Press);
|
||||
#ifdef ENABLE_JAVA_GUIS
|
||||
if (gameMode->hasInfiniteItems())
|
||||
setScreen(new CreativeInventoryScreen(player));
|
||||
else
|
||||
setScreen(new InventoryScreen(player));
|
||||
setScreen(new InventoryScreen(player));
|
||||
#else
|
||||
app.LoadInventoryMenu(iPad, player);
|
||||
#endif
|
||||
|
|
@ -3706,6 +3703,10 @@ void Minecraft::tick(bool bFirst, bool bUpdateTextures) {
|
|||
// Creative mode
|
||||
|
||||
ui.PlayUISFX(eSFX_Press);
|
||||
#ifdef ENABLE_JAVA_GUIS
|
||||
setScreen(new CreativeInventoryScreen(player));
|
||||
}
|
||||
#else
|
||||
app.LoadCreativeMenu(iPad, player);
|
||||
}
|
||||
// 4J-PB - Microsoft request that we use the 3x3 crafting if someone
|
||||
|
|
@ -3725,6 +3726,7 @@ void Minecraft::tick(bool bFirst, bool bUpdateTextures) {
|
|||
ui.PlayUISFX(eSFX_Press);
|
||||
app.LoadCrafting2x2Menu(iPad, player);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
if ((player->ullButtonsPressed & (1LL << MINECRAFT_ACTION_PAUSEMENU))
|
||||
|
|
|
|||
|
|
@ -29,6 +29,12 @@ void Screen::keyPressed(wchar_t eventCharacter, int eventKey) {
|
|||
if (eventKey == Keyboard::KEY_ESCAPE) {
|
||||
minecraft->setScreen(NULL);
|
||||
// minecraft->grabMouse(); // 4J - removed
|
||||
// 4jcraft: moved here from PauseScreen to ensure that serverside
|
||||
// unpausing is done in all scenarios
|
||||
if (g_NetworkManager.IsLocalGame() &&
|
||||
g_NetworkManager.GetPlayerCount() == 1)
|
||||
app.SetXuiServerAction(ProfileManager.GetPrimaryPad(),
|
||||
eXuiServerAction_PauseServer, (void*)FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -54,15 +54,6 @@ void PauseScreen::init() {
|
|||
*/
|
||||
}
|
||||
|
||||
void PauseScreen::keyPressed(wchar_t eventCharacter, int eventKey) {
|
||||
if (eventKey == Keyboard::KEY_ESCAPE && g_NetworkManager.IsLocalGame() &&
|
||||
g_NetworkManager.GetPlayerCount() == 1)
|
||||
app.SetXuiServerAction(ProfileManager.GetPrimaryPad(),
|
||||
eXuiServerAction_PauseServer, (void*)FALSE);
|
||||
|
||||
Screen::keyPressed(eventCharacter, eventKey);
|
||||
}
|
||||
|
||||
void PauseScreen::exitWorld(Minecraft* minecraft, bool save) {
|
||||
// 4jcraft: made our own static method for use in the java gui (other
|
||||
// places such as the deathscreen need this)
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@ private:
|
|||
public:
|
||||
PauseScreen(); // 4J added
|
||||
virtual void init();
|
||||
virtual void keyPressed(wchar_t eventCharacter, int eventKey);
|
||||
static void exitWorld(Minecraft* minecraft, bool save);
|
||||
|
||||
protected:
|
||||
|
|
|
|||
Loading…
Reference in a new issue