mirror of
https://github.com/GabsPuNs/Project-Zenith-Main.git
synced 2026-06-06 01:54:51 +00:00
Update UIScene_InGamePlayerOptionsMenu
Thanks Hinder
This commit is contained in:
@@ -1,10 +1,8 @@
|
||||
#include "stdafx.h"
|
||||
#include "UI.h"
|
||||
#include "UIScene_InGamePlayerOptionsMenu.h"
|
||||
#include "..\..\Minecraft.h"
|
||||
|
||||
#include "..\..\MultiPlayerLocalPlayer.h"
|
||||
#include "..\..\ClientConnection.h"
|
||||
#include "..\..\..\Minecraft.World\net.minecraft.network.packet.h"
|
||||
|
||||
#define CHECKBOXES_TIMER_ID 0
|
||||
#define CHECKBOXES_TIMER_TIME 100
|
||||
@@ -24,9 +22,7 @@ UIScene_InGamePlayerOptionsMenu::UIScene_InGamePlayerOptionsMenu(int iPad, void
|
||||
INetworkPlayer *editingPlayer = g_NetworkManager.GetPlayerBySmallId(m_networkSmallId);
|
||||
|
||||
if(editingPlayer != nullptr)
|
||||
{
|
||||
m_labelGamertag.init(editingPlayer->GetDisplayName());
|
||||
}
|
||||
|
||||
bool trustPlayers = app.GetGameHostOption(eGameHostOption_TrustPlayers) != 0;
|
||||
bool cheats = app.GetGameHostOption(eGameHostOption_CheatsEnabled) != 0;
|
||||
@@ -34,73 +30,77 @@ UIScene_InGamePlayerOptionsMenu::UIScene_InGamePlayerOptionsMenu(int iPad, void
|
||||
|
||||
if( m_editingSelf || trustPlayers || editingPlayer->IsHost())
|
||||
{
|
||||
/*
|
||||
removeControl( &m_checkboxes[eControl_BuildAndMine], true );
|
||||
removeControl( &m_checkboxes[eControl_UseDoorsAndSwitches], true );
|
||||
removeControl( &m_checkboxes[eControl_UseContainers], true );
|
||||
removeControl( &m_checkboxes[eControl_AttackPlayers], true );
|
||||
removeControl( &m_checkboxes[eControl_AttackAnimals], true );
|
||||
*/
|
||||
}
|
||||
else
|
||||
{
|
||||
bool checked = (Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CannotMine)==0 && Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CannotBuild)==0);
|
||||
m_checkboxes[eControl_BuildAndMine].init( app.GetString(IDS_CAN_BUILD_AND_MINE), eControl_BuildAndMine, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_BUILD_AND_MINE), eControl_BuildAndMine, checked);
|
||||
|
||||
checked = (Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanUseDoorsAndSwitches)!=0);
|
||||
m_checkboxes[eControl_UseDoorsAndSwitches].init( app.GetString(IDS_CAN_USE_DOORS_AND_SWITCHES), eControl_UseDoorsAndSwitches, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_USE_DOORS_AND_SWITCHES), eControl_UseDoorsAndSwitches, checked);
|
||||
|
||||
checked = (Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanUseContainers)!=0);
|
||||
m_checkboxes[eControl_UseContainers].init( app.GetString(IDS_CAN_OPEN_CONTAINERS), eControl_UseContainers, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_OPEN_CONTAINERS), eControl_UseContainers, checked);
|
||||
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CannotAttackPlayers)==0;
|
||||
m_checkboxes[eControl_AttackPlayers].init( app.GetString(IDS_CAN_ATTACK_PLAYERS), eControl_AttackPlayers, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_ATTACK_PLAYERS), eControl_AttackPlayers, checked);
|
||||
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CannotAttackAnimals)==0;
|
||||
m_checkboxes[eControl_AttackAnimals].init( app.GetString(IDS_CAN_ATTACK_ANIMALS), eControl_AttackAnimals, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_ATTACK_ANIMALS), eControl_AttackAnimals, checked);
|
||||
}
|
||||
|
||||
if(m_editingSelf)
|
||||
{
|
||||
#ifndef _DEBUG // (defined(_CONTENT_PACKAGE) || defined(_FINAL_BUILD) && !defined(_DEBUG_MENUS_ENABLED))
|
||||
removeControl( &m_checkboxes[eControl_Op], true );
|
||||
//removeControl( &m_checkboxes[eControl_Op], true );
|
||||
#else
|
||||
m_checkboxes[eControl_Op].init(L"DEBUG: Creative",eControl_Op,Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode));
|
||||
m_playerOptionsList.AddNewCheckbox(L"DEBUG: Creative",eControl_Op,Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode));
|
||||
#endif
|
||||
|
||||
removeControl( &m_buttonKick, true );
|
||||
removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
//removeControl( &m_buttonKick, true );
|
||||
//removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
|
||||
if(cheats)
|
||||
{
|
||||
bool canBeInvisible = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleInvisible) != 0;
|
||||
m_checkboxes[eControl_HostInvisible].SetEnable(canBeInvisible);
|
||||
//m_checkboxes[eControl_HostInvisible].SetEnable(canBeInvisible);
|
||||
bool checked = canBeInvisible && (Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_Invisible)!=0 && Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_Invulnerable)!=0);
|
||||
m_checkboxes[eControl_HostInvisible].init( app.GetString(IDS_INVISIBLE), eControl_HostInvisible, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_INVISIBLE), eControl_HostInvisible, checked);
|
||||
|
||||
bool inCreativeMode = Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode) != 0;
|
||||
if(inCreativeMode)
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
}
|
||||
else
|
||||
{
|
||||
bool canFly = Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CanToggleFly);
|
||||
bool canChangeHunger = Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CanToggleClassicHunger);
|
||||
|
||||
m_checkboxes[eControl_HostFly].SetEnable(canFly);
|
||||
//m_checkboxes[eControl_HostFly].SetEnable(canFly);
|
||||
checked = canFly && Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanFly)!=0;
|
||||
m_checkboxes[eControl_HostFly].init( app.GetString(IDS_CAN_FLY), eControl_HostFly, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_FLY), eControl_HostFly, checked);
|
||||
|
||||
m_checkboxes[eControl_HostHunger].SetEnable(canChangeHunger);
|
||||
//m_checkboxes[eControl_HostHunger].SetEnable(canChangeHunger);
|
||||
checked = canChangeHunger && Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_ClassicHunger)!=0;
|
||||
m_checkboxes[eControl_HostHunger].init( app.GetString(IDS_DISABLE_EXHAUSTION), eControl_HostHunger, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_DISABLE_EXHAUSTION), eControl_HostHunger, checked);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
removeControl( &m_checkboxes[eControl_HostInvisible], true );
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
*/
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -108,83 +108,53 @@ UIScene_InGamePlayerOptionsMenu::UIScene_InGamePlayerOptionsMenu(int iPad, void
|
||||
if(localPlayer->IsHost())
|
||||
{
|
||||
// Only host can make people moderators, or enable teleporting for them
|
||||
m_checkboxes[eControl_Op].init( app.GetString(IDS_MODERATOR), eControl_Op, Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_Op)!=0);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_MODERATOR), eControl_Op, Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_Op)!=0);
|
||||
}
|
||||
else
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_Op], true );
|
||||
}
|
||||
|
||||
/*if(localPlayer->IsHost() && cheats )
|
||||
{
|
||||
m_checkboxes[eControl_HostInvisible].SetEnable(true);
|
||||
bool checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleInvisible)!=0;
|
||||
m_checkboxes[eControl_HostInvisible].init( app.GetString(IDS_CAN_INVISIBLE), eControl_HostInvisible, checked);
|
||||
|
||||
m_checkboxes[eControl_HostFly].SetEnable(true);
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleFly)!=0;
|
||||
m_checkboxes[eControl_HostFly].init( app.GetString(IDS_CAN_FLY), eControl_HostFly, checked);
|
||||
|
||||
m_checkboxes[eControl_HostHunger].SetEnable(true);
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleClassicHunger)!=0;
|
||||
m_checkboxes[eControl_HostHunger].init( app.GetString(IDS_CAN_DISABLE_EXHAUSTION), eControl_HostHunger, checked);
|
||||
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanTeleport)!=0;
|
||||
m_checkboxes[eControl_CheatTeleport].init(app.GetString(IDS_ENABLE_TELEPORT),eControl_CheatTeleport,checked);
|
||||
}
|
||||
else
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_HostInvisible], true );
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
}*/
|
||||
//removeControl( &m_checkboxes[eControl_Op], true );
|
||||
|
||||
if(localPlayer->IsHost() && cheats )
|
||||
{
|
||||
m_checkboxes[eControl_HostInvisible].SetEnable(true);
|
||||
//m_checkboxes[eControl_HostInvisible].SetEnable(true);
|
||||
bool checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleInvisible)!=0;
|
||||
m_checkboxes[eControl_HostInvisible].init( app.GetString(IDS_CAN_INVISIBLE), eControl_HostInvisible, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_INVISIBLE), eControl_HostInvisible, checked);
|
||||
|
||||
|
||||
bool inCreativeMode = Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode) != 0;
|
||||
if(inCreativeMode)
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_checkboxes[eControl_HostFly].SetEnable(true);
|
||||
//m_checkboxes[eControl_HostFly].SetEnable(true);
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleFly)!=0;
|
||||
m_checkboxes[eControl_HostFly].init( app.GetString(IDS_CAN_FLY), eControl_HostFly, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_FLY), eControl_HostFly, checked);
|
||||
|
||||
m_checkboxes[eControl_HostHunger].SetEnable(true);
|
||||
//m_checkboxes[eControl_HostHunger].SetEnable(true);
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleClassicHunger)!=0;
|
||||
m_checkboxes[eControl_HostHunger].init( app.GetString(IDS_CAN_DISABLE_EXHAUSTION), eControl_HostHunger, checked);
|
||||
m_playerOptionsList.AddNewCheckbox( app.GetString(IDS_CAN_DISABLE_EXHAUSTION), eControl_HostHunger, checked);
|
||||
}
|
||||
|
||||
checked = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanTeleport)!=0;
|
||||
m_checkboxes[eControl_CheatTeleport].init(app.GetString(IDS_ENABLE_TELEPORT),eControl_CheatTeleport,checked);
|
||||
m_playerOptionsList.AddNewCheckbox(app.GetString(IDS_ENABLE_TELEPORT),eControl_CheatTeleport,checked);
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
removeControl( &m_checkboxes[eControl_HostInvisible], true );
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
// Can only kick people if they are not local, and not local to the host
|
||||
if(editingPlayer->IsLocal() != TRUE && editingPlayer->IsSameSystem(g_NetworkManager.GetHostPlayer()) != TRUE)
|
||||
{
|
||||
m_buttonKick.init( app.GetString(IDS_KICK_PLAYER), eControl_Kick);
|
||||
}
|
||||
else
|
||||
{
|
||||
removeControl( &m_buttonKick, true );
|
||||
}
|
||||
if (editingPlayer && editingPlayer->IsLocal() != true && editingPlayer->IsSameSystem(g_NetworkManager.GetHostPlayer()) != true)
|
||||
m_playerOptionsList.AddNewButton(app.GetString(IDS_KICK_PLAYER), eControl_Kick);
|
||||
//else
|
||||
//removeControl( &m_buttonKick, true );
|
||||
}
|
||||
|
||||
short colourIndex = app.GetPlayerColour( m_networkSmallId );
|
||||
@@ -201,7 +171,7 @@ UIScene_InGamePlayerOptionsMenu::UIScene_InGamePlayerOptionsMenu(int iPad, void
|
||||
}
|
||||
#endif
|
||||
|
||||
m_bModeratorState = m_checkboxes[eControl_Op].IsChecked();
|
||||
//m_bModeratorState = m_checkboxes[eControl_Op].IsChecked();
|
||||
|
||||
resetCheatCheckboxes();
|
||||
|
||||
@@ -244,44 +214,46 @@ void UIScene_InGamePlayerOptionsMenu::handleReload()
|
||||
|
||||
if( m_editingSelf || trustPlayers || editingPlayer->IsHost())
|
||||
{
|
||||
/*
|
||||
removeControl( &m_checkboxes[eControl_BuildAndMine], true );
|
||||
removeControl( &m_checkboxes[eControl_UseDoorsAndSwitches], true );
|
||||
removeControl( &m_checkboxes[eControl_UseContainers], true );
|
||||
removeControl( &m_checkboxes[eControl_AttackPlayers], true );
|
||||
removeControl( &m_checkboxes[eControl_AttackAnimals], true );
|
||||
*/
|
||||
}
|
||||
|
||||
if(m_editingSelf)
|
||||
{
|
||||
#ifndef _DEBUG //(defined(_CONTENT_PACKAGE) || defined(_FINAL_BUILD) && !defined(_DEBUG_MENUS_ENABLED))
|
||||
removeControl( &m_checkboxes[eControl_Op], true );
|
||||
//removeControl( &m_checkboxes[eControl_Op], true );
|
||||
#endif
|
||||
|
||||
removeControl( &m_buttonKick, true );
|
||||
removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
//removeControl( &m_buttonKick, true );
|
||||
//removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
|
||||
if(cheats)
|
||||
{
|
||||
bool inCreativeMode = Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode) != 0;
|
||||
if(inCreativeMode)
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
removeControl( &m_checkboxes[eControl_HostInvisible], true );
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
*/
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!localPlayer->IsHost())
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_Op], true );
|
||||
}
|
||||
//removeControl( &m_checkboxes[eControl_Op], true );
|
||||
|
||||
if(localPlayer->IsHost() && cheats )
|
||||
{
|
||||
@@ -289,24 +261,24 @@ void UIScene_InGamePlayerOptionsMenu::handleReload()
|
||||
bool inCreativeMode = Player::getPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode) != 0;
|
||||
if(inCreativeMode)
|
||||
{
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
//removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
removeControl( &m_checkboxes[eControl_HostInvisible], true );
|
||||
removeControl( &m_checkboxes[eControl_HostFly], true );
|
||||
removeControl( &m_checkboxes[eControl_HostHunger], true );
|
||||
removeControl( &m_checkboxes[eControl_CheatTeleport], true );
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
// Can only kick people if they are not local, and not local to the host
|
||||
if(editingPlayer->IsLocal() == TRUE || editingPlayer->IsSameSystem(g_NetworkManager.GetHostPlayer()) == TRUE)
|
||||
{
|
||||
removeControl( &m_buttonKick, true );
|
||||
}
|
||||
//if(editingPlayer->IsLocal() == TRUE || editingPlayer->IsSameSystem(g_NetworkManager.GetHostPlayer()) == TRUE)
|
||||
//removeControl( &m_buttonKick, true );
|
||||
}
|
||||
|
||||
short colourIndex = app.GetPlayerColour( m_networkSmallId );
|
||||
@@ -335,8 +307,6 @@ void UIScene_InGamePlayerOptionsMenu::handleDestroy()
|
||||
|
||||
void UIScene_InGamePlayerOptionsMenu::handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool &handled)
|
||||
{
|
||||
//app.DebugPrintf("UIScene_DebugOverlay handling input for pad %d, key %d, down- %s, pressed- %s, released- %s\n", iPad, key, down?"TRUE":"FALSE", pressed?"TRUE":"FALSE", released?"TRUE":"FALSE");
|
||||
|
||||
ui.AnimateKeyPress(iPad, key, repeat, pressed, released);
|
||||
switch(key)
|
||||
{
|
||||
@@ -349,10 +319,11 @@ void UIScene_InGamePlayerOptionsMenu::handleInput(int iPad, int key, bool repeat
|
||||
{
|
||||
#ifndef _DEBUG // (defined(_CONTENT_PACKAGE) || defined(_FINAL_BUILD) && !defined(_DEBUG_MENUS_ENABLED))
|
||||
#else
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode,m_checkboxes[eControl_Op].IsChecked());
|
||||
//Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CreativeMode,m_checkboxes[eControl_Op].IsChecked());
|
||||
#endif
|
||||
if(cheats)
|
||||
{
|
||||
/*
|
||||
bool canBeInvisible = Player::getPlayerGamePrivilege(m_playerPrivileges, Player::ePlayerGamePrivilege_CanToggleInvisible) != 0;
|
||||
if(canBeInvisible) Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_Invisible,m_checkboxes[eControl_HostInvisible].IsChecked());
|
||||
if(canBeInvisible) Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_Invulnerable,m_checkboxes[eControl_HostInvisible].IsChecked());
|
||||
@@ -366,6 +337,7 @@ void UIScene_InGamePlayerOptionsMenu::handleInput(int iPad, int key, bool repeat
|
||||
if(canFly) Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CanFly,m_checkboxes[eControl_HostFly].IsChecked());
|
||||
if(canChangeHunger) Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_ClassicHunger,m_checkboxes[eControl_HostHunger].IsChecked());
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -373,18 +345,21 @@ void UIScene_InGamePlayerOptionsMenu::handleInput(int iPad, int key, bool repeat
|
||||
INetworkPlayer *editingPlayer = g_NetworkManager.GetPlayerBySmallId(m_networkSmallId);
|
||||
if(!trustPlayers && (editingPlayer != nullptr && !editingPlayer->IsHost() ) )
|
||||
{
|
||||
/*
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CannotMine,!m_checkboxes[eControl_BuildAndMine].IsChecked());
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CannotBuild,!m_checkboxes[eControl_BuildAndMine].IsChecked());
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CannotAttackPlayers,!m_checkboxes[eControl_AttackPlayers].IsChecked());
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CannotAttackAnimals, !m_checkboxes[eControl_AttackAnimals].IsChecked());
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CanUseDoorsAndSwitches, m_checkboxes[eControl_UseDoorsAndSwitches].IsChecked());
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CanUseContainers, m_checkboxes[eControl_UseContainers].IsChecked());
|
||||
*/
|
||||
}
|
||||
|
||||
INetworkPlayer *localPlayer = g_NetworkManager.GetLocalPlayerByUserIndex( m_iPad );
|
||||
|
||||
if(localPlayer->IsHost())
|
||||
{
|
||||
/*
|
||||
if(cheats)
|
||||
{
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_CanToggleInvisible,m_checkboxes[eControl_HostInvisible].IsChecked());
|
||||
@@ -394,6 +369,7 @@ void UIScene_InGamePlayerOptionsMenu::handleInput(int iPad, int key, bool repeat
|
||||
}
|
||||
|
||||
Player::setPlayerGamePrivilege(m_playerPrivileges,Player::ePlayerGamePrivilege_Op,m_checkboxes[eControl_Op].IsChecked());
|
||||
*/
|
||||
}
|
||||
}
|
||||
unsigned int originalPrivileges = app.GetPlayerPrivileges(m_networkSmallId);
|
||||
@@ -403,9 +379,7 @@ void UIScene_InGamePlayerOptionsMenu::handleInput(int iPad, int key, bool repeat
|
||||
Minecraft *pMinecraft = Minecraft::GetInstance();
|
||||
shared_ptr<MultiplayerLocalPlayer> player = pMinecraft->localplayers[m_iPad];
|
||||
if(player->connection)
|
||||
{
|
||||
player->connection->send(std::make_shared<PlayerInfoPacket>(m_networkSmallId, -1, m_playerPrivileges));
|
||||
}
|
||||
}
|
||||
navigateBack();
|
||||
|
||||
@@ -453,9 +427,7 @@ int UIScene_InGamePlayerOptionsMenu::KickPlayerReturned(void *pParam,int iPad,C4
|
||||
Minecraft *pMinecraft = Minecraft::GetInstance();
|
||||
shared_ptr<MultiplayerLocalPlayer> localPlayer = pMinecraft->localplayers[iPad];
|
||||
if(localPlayer->connection)
|
||||
{
|
||||
localPlayer->connection->send(std::make_shared<KickPlayerPacket>(smallId));
|
||||
}
|
||||
|
||||
// Fix for #61494 - [CRASH]: TU7: Code: Multiplayer: Title may crash while kicking a player from an online game.
|
||||
// We cannot do a navigate back here is this actually occurs on a thread other than the main thread. On rare occasions this can clash
|
||||
@@ -482,6 +454,7 @@ void UIScene_InGamePlayerOptionsMenu::OnPlayerChanged(void *callbackParam, INetw
|
||||
|
||||
void UIScene_InGamePlayerOptionsMenu::resetCheatCheckboxes()
|
||||
{
|
||||
/*
|
||||
bool isModerator = m_checkboxes[eControl_Op].IsChecked();
|
||||
//bool cheatsEnabled = app.GetGameHostOption(eGameHostOption_CheatsEnabled) != 0;
|
||||
|
||||
@@ -492,6 +465,7 @@ void UIScene_InGamePlayerOptionsMenu::resetCheatCheckboxes()
|
||||
m_checkboxes[eControl_HostHunger].SetEnable(isModerator);
|
||||
m_checkboxes[eControl_CheatTeleport].SetEnable(isModerator);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
void UIScene_InGamePlayerOptionsMenu::handleCheckboxToggled(F64 controlId, bool selected)
|
||||
@@ -511,12 +485,14 @@ void UIScene_InGamePlayerOptionsMenu::handleTimerComplete(int id)
|
||||
{
|
||||
case CHECKBOXES_TIMER_ID:
|
||||
{
|
||||
/*
|
||||
bool bIsModerator = m_checkboxes[eControl_Op].IsChecked();
|
||||
if(m_bModeratorState!=bIsModerator)
|
||||
{
|
||||
m_bModeratorState=bIsModerator;
|
||||
resetCheatCheckboxes();
|
||||
}
|
||||
*/
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user