Compare commits
9
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
43fb49b3de | ||
|
|
b67d9d2094 | ||
|
|
83a62db82a | ||
|
|
42b9349755 | ||
|
|
aca9560079 | ||
|
|
d06e2e5eba | ||
|
|
ada85f871e | ||
|
|
05e8ed3c66 | ||
|
|
930a104e50 |
@@ -402,7 +402,6 @@ void Chunk::rebuild()
|
|||||||
}
|
}
|
||||||
|
|
||||||
Tile *tile = Tile::tiles[tileId];
|
Tile *tile = Tile::tiles[tileId];
|
||||||
if (!tile) continue;
|
|
||||||
if (currentLayer == 0 && tile->isEntityTile())
|
if (currentLayer == 0 && tile->isEntityTile())
|
||||||
{
|
{
|
||||||
shared_ptr<TileEntity> et = region->getTileEntity(x, y, z);
|
shared_ptr<TileEntity> et = region->getTileEntity(x, y, z);
|
||||||
@@ -740,9 +739,9 @@ void Chunk::rebuild_SPU()
|
|||||||
{
|
{
|
||||||
// 4J - get tile from those copied into our local array in earlier optimisation
|
// 4J - get tile from those copied into our local array in earlier optimisation
|
||||||
unsigned char tileId = pOutData->getTile(x,y,z);
|
unsigned char tileId = pOutData->getTile(x,y,z);
|
||||||
if (tileId > 0 && tileId != 0xff)
|
if (tileId > 0)
|
||||||
{
|
{
|
||||||
if (currentLayer == 0 && Tile::tiles[tileId] && Tile::tiles[tileId]->isEntityTile())
|
if (currentLayer == 0 && Tile::tiles[tileId]->isEntityTile())
|
||||||
{
|
{
|
||||||
shared_ptr<TileEntity> et = region.getTileEntity(x, y, z);
|
shared_ptr<TileEntity> et = region.getTileEntity(x, y, z);
|
||||||
if (TileEntityRenderDispatcher::instance->hasRenderer(et))
|
if (TileEntityRenderDispatcher::instance->hasRenderer(et))
|
||||||
@@ -755,7 +754,6 @@ void Chunk::rebuild_SPU()
|
|||||||
{
|
{
|
||||||
|
|
||||||
Tile *tile = Tile::tiles[tileId];
|
Tile *tile = Tile::tiles[tileId];
|
||||||
if (!tile) continue;
|
|
||||||
int renderLayer = tile->getRenderLayer();
|
int renderLayer = tile->getRenderLayer();
|
||||||
|
|
||||||
if (renderLayer != currentLayer)
|
if (renderLayer != currentLayer)
|
||||||
|
|||||||
@@ -776,7 +776,6 @@ void ClientConnection::handleAddPlayer(shared_ptr<AddPlayerPacket> packet)
|
|||||||
player->yRotp = packet->yRot;
|
player->yRotp = packet->yRot;
|
||||||
player->yHeadRot = packet->yHeadRot * 360 / 256.0f;
|
player->yHeadRot = packet->yHeadRot * 360 / 256.0f;
|
||||||
player->setXuid(packet->xuid);
|
player->setXuid(packet->xuid);
|
||||||
player->setOnlineXuid(packet->OnlineXuid);
|
|
||||||
|
|
||||||
#ifdef _DURANGO
|
#ifdef _DURANGO
|
||||||
// On Durango request player display name from network manager
|
// On Durango request player display name from network manager
|
||||||
@@ -789,11 +788,11 @@ void ClientConnection::handleAddPlayer(shared_ptr<AddPlayerPacket> packet)
|
|||||||
|
|
||||||
#if defined _WINDOWS64 || defined DISABLE_PSN || defined _DISABLE_XBLIVE
|
#if defined _WINDOWS64 || defined DISABLE_PSN || defined _DISABLE_XBLIVE
|
||||||
{
|
{
|
||||||
PlayerUID netXuid = packet->OnlineXuid;
|
PlayerUID pktXuid = player->getXuid();
|
||||||
const PlayerUID WIN64_XUID_BASE = (PlayerUID)0xe000d45248242f2e;
|
const PlayerUID WIN64_XUID_BASE = (PlayerUID)0xe000d45248242f2e;
|
||||||
if (netXuid >= WIN64_XUID_BASE && netXuid < WIN64_XUID_BASE + MINECRAFT_NET_MAX_PLAYERS)
|
if (pktXuid >= WIN64_XUID_BASE && pktXuid < WIN64_XUID_BASE + MINECRAFT_NET_MAX_PLAYERS)
|
||||||
{
|
{
|
||||||
BYTE smallId = (BYTE)(netXuid - WIN64_XUID_BASE);
|
BYTE smallId = (BYTE)(pktXuid - WIN64_XUID_BASE);
|
||||||
INetworkPlayer *np = g_NetworkManager.GetPlayerBySmallId(smallId);
|
INetworkPlayer *np = g_NetworkManager.GetPlayerBySmallId(smallId);
|
||||||
if (np != NULL)
|
if (np != NULL)
|
||||||
{
|
{
|
||||||
@@ -955,6 +954,39 @@ void ClientConnection::handleMoveEntitySmall(shared_ptr<MoveEntityPacketSmall> p
|
|||||||
|
|
||||||
void ClientConnection::handleRemoveEntity(shared_ptr<RemoveEntitiesPacket> packet)
|
void ClientConnection::handleRemoveEntity(shared_ptr<RemoveEntitiesPacket> packet)
|
||||||
{
|
{
|
||||||
|
#if defined _WINDOWS64 || defined DISABLE_PSN || defined _DISABLE_XBLIVE
|
||||||
|
if (!g_NetworkManager.IsHost())
|
||||||
|
{
|
||||||
|
for (int i = 0; i < packet->ids.length; i++)
|
||||||
|
{
|
||||||
|
shared_ptr<Entity> entity = getEntity(packet->ids[i]);
|
||||||
|
if (entity != NULL && entity->GetType() == eTYPE_PLAYER)
|
||||||
|
{
|
||||||
|
shared_ptr<Player> player = dynamic_pointer_cast<Player>(entity);
|
||||||
|
if (player != NULL)
|
||||||
|
{
|
||||||
|
PlayerUID xuid = player->getXuid();
|
||||||
|
INetworkPlayer *np = g_NetworkManager.GetPlayerByXuid(xuid);
|
||||||
|
if (np != NULL)
|
||||||
|
{
|
||||||
|
NetworkPlayerXbox *npx = (NetworkPlayerXbox *)np;
|
||||||
|
IQNetPlayer *qp = npx->GetQNetPlayer();
|
||||||
|
if (qp != NULL)
|
||||||
|
{
|
||||||
|
extern CPlatformNetworkManagerStub *g_pPlatformNetworkManager;
|
||||||
|
g_pPlatformNetworkManager->NotifyPlayerLeaving(qp);
|
||||||
|
qp->m_smallId = 0;
|
||||||
|
qp->m_isRemote = false;
|
||||||
|
qp->m_isHostPlayer = false;
|
||||||
|
qp->m_gamertag[0] = 0;
|
||||||
|
qp->SetCustomDataValue(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
for (int i = 0; i < packet->ids.length; i++)
|
for (int i = 0; i < packet->ids.length; i++)
|
||||||
{
|
{
|
||||||
level->removeEntity(packet->ids[i]);
|
level->removeEntity(packet->ids[i]);
|
||||||
@@ -1036,7 +1068,6 @@ void ClientConnection::handleChunkVisibility(shared_ptr<ChunkVisibilityPacket> p
|
|||||||
void ClientConnection::handleChunkTilesUpdate(shared_ptr<ChunkTilesUpdatePacket> packet)
|
void ClientConnection::handleChunkTilesUpdate(shared_ptr<ChunkTilesUpdatePacket> packet)
|
||||||
{
|
{
|
||||||
// 4J - changed to encode level in packet
|
// 4J - changed to encode level in packet
|
||||||
if (packet->levelIdx >= minecraft->levels.length) return;
|
|
||||||
MultiPlayerLevel *dimensionLevel = (MultiPlayerLevel *)minecraft->levels[packet->levelIdx];
|
MultiPlayerLevel *dimensionLevel = (MultiPlayerLevel *)minecraft->levels[packet->levelIdx];
|
||||||
if( dimensionLevel )
|
if( dimensionLevel )
|
||||||
{
|
{
|
||||||
@@ -1106,7 +1137,6 @@ void ClientConnection::handleChunkTilesUpdate(shared_ptr<ChunkTilesUpdatePacket>
|
|||||||
void ClientConnection::handleBlockRegionUpdate(shared_ptr<BlockRegionUpdatePacket> packet)
|
void ClientConnection::handleBlockRegionUpdate(shared_ptr<BlockRegionUpdatePacket> packet)
|
||||||
{
|
{
|
||||||
// 4J - changed to encode level in packet
|
// 4J - changed to encode level in packet
|
||||||
if (packet->levelIdx >= minecraft->levels.length) return;
|
|
||||||
MultiPlayerLevel *dimensionLevel = (MultiPlayerLevel *)minecraft->levels[packet->levelIdx];
|
MultiPlayerLevel *dimensionLevel = (MultiPlayerLevel *)minecraft->levels[packet->levelIdx];
|
||||||
if( dimensionLevel )
|
if( dimensionLevel )
|
||||||
{
|
{
|
||||||
@@ -1164,8 +1194,6 @@ void ClientConnection::handleTileUpdate(shared_ptr<TileUpdatePacket> packet)
|
|||||||
destroyTilePacket = true;
|
destroyTilePacket = true;
|
||||||
}
|
}
|
||||||
// 4J - changed to encode level in packet
|
// 4J - changed to encode level in packet
|
||||||
if (packet->levelIdx >= minecraft->levels.length) return;
|
|
||||||
|
|
||||||
MultiPlayerLevel *dimensionLevel = (MultiPlayerLevel *)minecraft->levels[packet->levelIdx];
|
MultiPlayerLevel *dimensionLevel = (MultiPlayerLevel *)minecraft->levels[packet->levelIdx];
|
||||||
if( dimensionLevel )
|
if( dimensionLevel )
|
||||||
{
|
{
|
||||||
@@ -1805,7 +1833,6 @@ void ClientConnection::handleEntityActionAtPosition(shared_ptr<EntityActionAtPos
|
|||||||
|
|
||||||
void ClientConnection::handlePreLogin(shared_ptr<PreLoginPacket> packet)
|
void ClientConnection::handlePreLogin(shared_ptr<PreLoginPacket> packet)
|
||||||
{
|
{
|
||||||
app.DebugPrintf("ClientConnection::handlePreLogin ENTER (user %d)\n", m_userIndex);
|
|
||||||
// printf("Client: handlePreLogin\n");
|
// printf("Client: handlePreLogin\n");
|
||||||
#if 1
|
#if 1
|
||||||
// 4J - Check that we can play with all the players already in the game who have Friends-Only UGC set
|
// 4J - Check that we can play with all the players already in the game who have Friends-Only UGC set
|
||||||
@@ -1828,7 +1855,6 @@ void ClientConnection::handlePreLogin(shared_ptr<PreLoginPacket> packet)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef _XBOX
|
#ifdef _XBOX
|
||||||
#if !defined(_DISABLE_XBLIVE)
|
|
||||||
if(!g_NetworkManager.IsHost() && !app.GetGameHostOption(eGameHostOption_FriendsOfFriends))
|
if(!g_NetworkManager.IsHost() && !app.GetGameHostOption(eGameHostOption_FriendsOfFriends))
|
||||||
{
|
{
|
||||||
if(m_userIndex == ProfileManager.GetPrimaryPad() )
|
if(m_userIndex == ProfileManager.GetPrimaryPad() )
|
||||||
@@ -1972,16 +1998,6 @@ void ClientConnection::handlePreLogin(shared_ptr<PreLoginPacket> packet)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
// Offline/system-link games have no Xbox Live friend list, so grant all
|
|
||||||
// pre-login permissions (the Xbox Live-only checks above would otherwise
|
|
||||||
// fail and reject the client's own pre-login before Login is ever sent).
|
|
||||||
canPlay = TRUE;
|
|
||||||
canPlayLocal = TRUE;
|
|
||||||
isAtLeastOneFriend = TRUE;
|
|
||||||
isFriendsWithHost = TRUE;
|
|
||||||
cantPlayContentRestricted = FALSE;
|
|
||||||
#endif // _DISABLE_XBLIVE
|
|
||||||
#else
|
#else
|
||||||
// TODO - handle this kind of things for non-360 platforms
|
// TODO - handle this kind of things for non-360 platforms
|
||||||
canPlay = TRUE;
|
canPlay = TRUE;
|
||||||
@@ -2271,8 +2287,7 @@ void ClientConnection::handlePreLogin(shared_ptr<PreLoginPacket> packet)
|
|||||||
}
|
}
|
||||||
BOOL allAllowed, friendsAllowed;
|
BOOL allAllowed, friendsAllowed;
|
||||||
ProfileManager.AllowedPlayerCreatedContent(m_userIndex,true,&allAllowed,&friendsAllowed);
|
ProfileManager.AllowedPlayerCreatedContent(m_userIndex,true,&allAllowed,&friendsAllowed);
|
||||||
app.DebugPrintf("ClientConnection::handlePreLogin SENDING LoginPacket (user %d)\n", m_userIndex);
|
send( shared_ptr<LoginPacket>( new LoginPacket(minecraft->user->name, SharedConstants::NETWORK_PROTOCOL_VERSION, offlineXUID, onlineXUID, (allAllowed!=TRUE && friendsAllowed==TRUE),
|
||||||
send( shared_ptr<LoginPacket>( new LoginPacket(minecraft->user->name, SharedConstants::NETWORK_PROTOCOL_VERSION, offlineXUID, onlineXUID, (allAllowed!=TRUE && friendsAllowed==TRUE),
|
|
||||||
packet->m_ugcPlayersVersion, app.GetPlayerSkinId(m_userIndex), app.GetPlayerCapeId(m_userIndex), ProfileManager.IsGuest( m_userIndex ))));
|
packet->m_ugcPlayersVersion, app.GetPlayerSkinId(m_userIndex), app.GetPlayerCapeId(m_userIndex), ProfileManager.IsGuest( m_userIndex ))));
|
||||||
|
|
||||||
if(!g_NetworkManager.IsHost() )
|
if(!g_NetworkManager.IsHost() )
|
||||||
@@ -2322,7 +2337,6 @@ void ClientConnection::handleAddMob(shared_ptr<AddMobPacket> packet)
|
|||||||
float xRot = packet->xRot * 360 / 256.0f;
|
float xRot = packet->xRot * 360 / 256.0f;
|
||||||
|
|
||||||
shared_ptr<LivingEntity> mob = dynamic_pointer_cast<LivingEntity>(EntityIO::newById(packet->type, level));
|
shared_ptr<LivingEntity> mob = dynamic_pointer_cast<LivingEntity>(EntityIO::newById(packet->type, level));
|
||||||
if (mob == NULL) return;
|
|
||||||
mob->xp = packet->x;
|
mob->xp = packet->x;
|
||||||
mob->yp = packet->y;
|
mob->yp = packet->y;
|
||||||
mob->zp = packet->z;
|
mob->zp = packet->z;
|
||||||
@@ -3566,12 +3580,10 @@ void ClientConnection::handleCustomPayload(shared_ptr<CustomPayloadPacket> custo
|
|||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
UIScene *scene = ui.GetTopScene(m_userIndex, eUILayer_Scene);
|
UIScene *scene = ui.GetTopScene(m_userIndex, eUILayer_Scene);
|
||||||
UIScene_TradingMenu *screen = dynamic_cast<UIScene_TradingMenu *>(scene);
|
UIScene_TradingMenu *screen = (UIScene_TradingMenu *)scene;
|
||||||
if (screen != NULL)
|
trader = screen->getMerchant();
|
||||||
trader = screen->getMerchant();
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (trader == NULL) return;
|
|
||||||
MerchantRecipeList *recipeList = MerchantRecipeList::createFromStream(&input);
|
MerchantRecipeList *recipeList = MerchantRecipeList::createFromStream(&input);
|
||||||
trader->overrideOffers(recipeList);
|
trader->overrideOffers(recipeList);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4889,13 +4889,11 @@ void CMinecraftApp::SignInChangeCallback(LPVOID pParam,bool bPrimaryPlayerChange
|
|||||||
// 4J Stu - On PS4 we can also cause to exit players if they are signed out here, but we shouldn't do that if
|
// 4J Stu - On PS4 we can also cause to exit players if they are signed out here, but we shouldn't do that if
|
||||||
// we are going to switch to an offline game as it will likely crash due to incompatible parallel processes
|
// we are going to switch to an offline game as it will likely crash due to incompatible parallel processes
|
||||||
bool switchToOffline = false;
|
bool switchToOffline = false;
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
// If it's an online game, and the primary profile is no longer signed into LIVE then we act as if disconnected
|
// If it's an online game, and the primary profile is no longer signed into LIVE then we act as if disconnected
|
||||||
if( !ProfileManager.IsSignedInLive( ProfileManager.GetLockedProfile() ) && !g_NetworkManager.IsLocalGame() )
|
if( !ProfileManager.IsSignedInLive( ProfileManager.GetLockedProfile() ) && !g_NetworkManager.IsLocalGame() )
|
||||||
{
|
{
|
||||||
switchToOffline = true;
|
switchToOffline = true;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
//printf("Old: %x, New: %x, Changed: %x\n", m_ulLastSignInData, ulSignInData, changedPlayers);
|
//printf("Old: %x, New: %x, Changed: %x\n", m_ulLastSignInData, ulSignInData, changedPlayers);
|
||||||
for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
|
for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
|
||||||
@@ -4960,7 +4958,6 @@ void CMinecraftApp::SignInChangeCallback(LPVOID pParam,bool bPrimaryPlayerChange
|
|||||||
|
|
||||||
g_NetworkManager.HandleSignInChange();
|
g_NetworkManager.HandleSignInChange();
|
||||||
}
|
}
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
// Some menus require the player to be signed in to live, so if this callback happens and the primary player is
|
// Some menus require the player to be signed in to live, so if this callback happens and the primary player is
|
||||||
// no longer signed in then nav back
|
// no longer signed in then nav back
|
||||||
else if ( pApp->GetLiveLinkRequired() && !ProfileManager.IsSignedInLive( ProfileManager.GetLockedProfile() ) )
|
else if ( pApp->GetLiveLinkRequired() && !ProfileManager.IsSignedInLive( ProfileManager.GetLockedProfile() ) )
|
||||||
@@ -4972,7 +4969,6 @@ void CMinecraftApp::SignInChangeCallback(LPVOID pParam,bool bPrimaryPlayerChange
|
|||||||
pApp->SetAction(iPrimaryPlayer,eAppAction_EthernetDisconnected);
|
pApp->SetAction(iPrimaryPlayer,eAppAction_EthernetDisconnected);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ( defined __PS3__ || defined __ORBIS__ || defined _DURANGO || defined __PSVITA__ )
|
#if ( defined __PS3__ || defined __ORBIS__ || defined _DURANGO || defined __PSVITA__ )
|
||||||
// 4J-JEV: Need to kick of loading of profile data for sub-sign in players.
|
// 4J-JEV: Need to kick of loading of profile data for sub-sign in players.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
base64.cpp and base64.h
|
base64.cpp and base64.h
|
||||||
|
|
||||||
Copyright (C) 2004-2008 René Nyffenegger
|
Copyright (C) 2004-2008 René Nyffenegger
|
||||||
|
|
||||||
This source code is provided 'as-is', without any express or implied
|
This source code is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the author be held liable for any damages
|
warranty. In no event will the author be held liable for any damages
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
3. This notice may not be removed or altered from any source distribution.
|
3. This notice may not be removed or altered from any source distribution.
|
||||||
|
|
||||||
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
|
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ static inline bool is_base64(unsigned char c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 4J ADDED,
|
// 4J ADDED,
|
||||||
std::string base64_encode(const std::string& str)
|
std::string base64_encode(std::string str)
|
||||||
{
|
{
|
||||||
return base64_encode( reinterpret_cast<const unsigned char*>(str.c_str()), str.length() );
|
return base64_encode( reinterpret_cast<const unsigned char*>(str.c_str()), str.length() );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,6 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
std::string base64_encode(const std::string& str);
|
std::string base64_encode(std::string str);
|
||||||
std::string base64_encode(unsigned char const* , unsigned int len);
|
std::string base64_encode(unsigned char const* , unsigned int len);
|
||||||
std::string base64_decode(std::string const& s);
|
std::string base64_decode(std::string const& s);
|
||||||
@@ -100,14 +100,12 @@ void CGameNetworkManager::DoWork()
|
|||||||
{
|
{
|
||||||
case XN_LIVE_LINK_STATE_CHANGED:
|
case XN_LIVE_LINK_STATE_CHANGED:
|
||||||
{
|
{
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
int iPrimaryPlayer = g_NetworkManager.GetPrimaryPad();
|
int iPrimaryPlayer = g_NetworkManager.GetPrimaryPad();
|
||||||
bool bConnected = (pNotification->uiParam!=0)?true:false;
|
bool bConnected = (pNotification->uiParam!=0)?true:false;
|
||||||
if((g_NetworkManager.GetLockedProfile()!=-1) && iPrimaryPlayer!=-1 && bConnected == false && g_NetworkManager.IsInSession() )
|
if((g_NetworkManager.GetLockedProfile()!=-1) && iPrimaryPlayer!=-1 && bConnected == false && g_NetworkManager.IsInSession() )
|
||||||
{
|
{
|
||||||
app.SetAction(iPrimaryPlayer,eAppAction_EthernetDisconnected);
|
app.SetAction(iPrimaryPlayer,eAppAction_EthernetDisconnected);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case XN_LIVE_INVITE_ACCEPTED:
|
case XN_LIVE_INVITE_ACCEPTED:
|
||||||
@@ -784,11 +782,7 @@ int CGameNetworkManager::JoinFromInvite_SignInReturned(void *pParam,bool bContin
|
|||||||
|
|
||||||
app.DebugPrintf("JoinFromInvite_SignInReturned, iPad %d\n",iPad);
|
app.DebugPrintf("JoinFromInvite_SignInReturned, iPad %d\n",iPad);
|
||||||
// It's possible that the player has not signed in - they can back out
|
// It's possible that the player has not signed in - they can back out
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if(ProfileManager.IsSignedIn(iPad) && ProfileManager.IsSignedInLive(iPad) )
|
if(ProfileManager.IsSignedIn(iPad) && ProfileManager.IsSignedInLive(iPad) )
|
||||||
#else
|
|
||||||
if(ProfileManager.IsSignedIn(iPad))
|
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
app.DebugPrintf("JoinFromInvite_SignInReturned, passed sign-in tests\n");
|
app.DebugPrintf("JoinFromInvite_SignInReturned, passed sign-in tests\n");
|
||||||
int localUsersMask = 0;
|
int localUsersMask = 0;
|
||||||
@@ -800,9 +794,7 @@ int CGameNetworkManager::JoinFromInvite_SignInReturned(void *pParam,bool bContin
|
|||||||
if(ProfileManager.IsSignedIn(index) )
|
if(ProfileManager.IsSignedIn(index) )
|
||||||
{
|
{
|
||||||
++joiningUsers;
|
++joiningUsers;
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
||||||
#endif
|
|
||||||
localUsersMask |= GetLocalPlayerMask( index );
|
localUsersMask |= GetLocalPlayerMask( index );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -898,12 +890,6 @@ bool CGameNetworkManager::IsNetworkThreadRunning()
|
|||||||
|
|
||||||
int CGameNetworkManager::RunNetworkGameThreadProc( void* lpParameter )
|
int CGameNetworkManager::RunNetworkGameThreadProc( void* lpParameter )
|
||||||
{
|
{
|
||||||
if( g_NetworkManager.m_bNetworkThreadRunning )
|
|
||||||
{
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
g_NetworkManager.m_bNetworkThreadRunning = true;
|
|
||||||
|
|
||||||
// Share AABB & Vec3 pools with default (main thread) - should be ok as long as we don't tick the main thread whilst this thread is running
|
// Share AABB & Vec3 pools with default (main thread) - should be ok as long as we don't tick the main thread whilst this thread is running
|
||||||
AABB::UseDefaultThreadStorage();
|
AABB::UseDefaultThreadStorage();
|
||||||
Vec3::UseDefaultThreadStorage();
|
Vec3::UseDefaultThreadStorage();
|
||||||
@@ -911,6 +897,7 @@ int CGameNetworkManager::RunNetworkGameThreadProc( void* lpParameter )
|
|||||||
Tile::CreateNewThreadStorage();
|
Tile::CreateNewThreadStorage();
|
||||||
IntCache::CreateNewThreadStorage();
|
IntCache::CreateNewThreadStorage();
|
||||||
|
|
||||||
|
g_NetworkManager.m_bNetworkThreadRunning = true;
|
||||||
bool success = g_NetworkManager._RunNetworkGame(lpParameter);
|
bool success = g_NetworkManager._RunNetworkGame(lpParameter);
|
||||||
g_NetworkManager.m_bNetworkThreadRunning = false;
|
g_NetworkManager.m_bNetworkThreadRunning = false;
|
||||||
if( !success)
|
if( !success)
|
||||||
@@ -918,7 +905,7 @@ int CGameNetworkManager::RunNetworkGameThreadProc( void* lpParameter )
|
|||||||
TexturePack *tPack = Minecraft::GetInstance()->skins->getSelected();
|
TexturePack *tPack = Minecraft::GetInstance()->skins->getSelected();
|
||||||
while ( tPack->isLoadingData() || (Minecraft::GetInstance()->skins->needsUIUpdate() || ui.IsReloadingSkin()) )
|
while ( tPack->isLoadingData() || (Minecraft::GetInstance()->skins->needsUIUpdate() || ui.IsReloadingSkin()) )
|
||||||
{
|
{
|
||||||
Sleep(0);
|
Sleep(1);
|
||||||
}
|
}
|
||||||
ui.CleanUpSkinReload();
|
ui.CleanUpSkinReload();
|
||||||
if(app.GetDisconnectReason() == DisconnectPacket::eDisconnect_None)
|
if(app.GetDisconnectReason() == DisconnectPacket::eDisconnect_None)
|
||||||
@@ -955,7 +942,7 @@ int CGameNetworkManager::ServerThreadProc( void* lpParameter )
|
|||||||
{
|
{
|
||||||
while((Minecraft::GetInstance()->skins->needsUIUpdate() || ui.IsReloadingSkin()))
|
while((Minecraft::GetInstance()->skins->needsUIUpdate() || ui.IsReloadingSkin()))
|
||||||
{
|
{
|
||||||
Sleep(0);
|
Sleep(1);
|
||||||
}
|
}
|
||||||
param->levelGen->loadBaseSaveData();
|
param->levelGen->loadBaseSaveData();
|
||||||
}
|
}
|
||||||
@@ -997,7 +984,7 @@ int CGameNetworkManager::ExitAndJoinFromInviteThreadProc( void* lpParam )
|
|||||||
|
|
||||||
while( g_NetworkManager.IsInSession() )
|
while( g_NetworkManager.IsInSession() )
|
||||||
{
|
{
|
||||||
Sleep(0);
|
Sleep(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Xbox should always be online when receiving invites - on PS3 we need to check & ask the user to sign in
|
// Xbox should always be online when receiving invites - on PS3 we need to check & ask the user to sign in
|
||||||
@@ -1273,7 +1260,7 @@ int CGameNetworkManager::ChangeSessionTypeThreadProc( void* lpParam )
|
|||||||
// wait for the current session to end
|
// wait for the current session to end
|
||||||
while( g_NetworkManager.IsInSession() )
|
while( g_NetworkManager.IsInSession() )
|
||||||
{
|
{
|
||||||
Sleep(0);
|
Sleep(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reset this flag as the we don't need to know that we only lost the room only from this point onwards, the behaviour is exactly the same
|
// Reset this flag as the we don't need to know that we only lost the room only from this point onwards, the behaviour is exactly the same
|
||||||
@@ -1678,7 +1665,6 @@ void CGameNetworkManager::GameInviteReceived( int userIndex, const INVITE_INFO *
|
|||||||
{
|
{
|
||||||
if (ProfileManager.IsSignedIn(i) && (i == ProfileManager.GetPrimaryPad() || isLocalMultiplayerAvailable))
|
if (ProfileManager.IsSignedIn(i) && (i == ProfileManager.GetPrimaryPad() || isLocalMultiplayerAvailable))
|
||||||
{
|
{
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if (isSignedInLive && !ProfileManager.IsSignedInLive(i))
|
if (isSignedInLive && !ProfileManager.IsSignedInLive(i))
|
||||||
{
|
{
|
||||||
// Record the first non signed in live pad
|
// Record the first non signed in live pad
|
||||||
@@ -1686,9 +1672,6 @@ void CGameNetworkManager::GameInviteReceived( int userIndex, const INVITE_INFO *
|
|||||||
}
|
}
|
||||||
|
|
||||||
isSignedInLive = isSignedInLive && ProfileManager.IsSignedInLive(i);
|
isSignedInLive = isSignedInLive && ProfileManager.IsSignedInLive(i);
|
||||||
#else
|
|
||||||
isSignedInLive = true;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1760,9 +1743,7 @@ void CGameNetworkManager::GameInviteReceived( int userIndex, const INVITE_INFO *
|
|||||||
if(index==userIndex || pMinecraft->localplayers[index]!=NULL )
|
if(index==userIndex || pMinecraft->localplayers[index]!=NULL )
|
||||||
{
|
{
|
||||||
++joiningUsers;
|
++joiningUsers;
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
||||||
#endif
|
|
||||||
localUsersMask |= GetLocalPlayerMask( index );
|
localUsersMask |= GetLocalPlayerMask( index );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1917,7 +1898,6 @@ void CGameNetworkManager::HandleInviteWhenInMenus( int userIndex, const INVITE_I
|
|||||||
if(!app.IsLocalMultiplayerAvailable())
|
if(!app.IsLocalMultiplayerAvailable())
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
bool noPrivileges=!ProfileManager.AllowedToPlayMultiplayer(userIndex);
|
bool noPrivileges=!ProfileManager.AllowedToPlayMultiplayer(userIndex);
|
||||||
|
|
||||||
if(noPrivileges)
|
if(noPrivileges)
|
||||||
@@ -1928,7 +1908,6 @@ void CGameNetworkManager::HandleInviteWhenInMenus( int userIndex, const INVITE_I
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#endif
|
|
||||||
ProfileManager.SetLockedProfile(userIndex);
|
ProfileManager.SetLockedProfile(userIndex);
|
||||||
ProfileManager.SetPrimaryPad(userIndex);
|
ProfileManager.SetPrimaryPad(userIndex);
|
||||||
|
|
||||||
@@ -1951,9 +1930,7 @@ void CGameNetworkManager::HandleInviteWhenInMenus( int userIndex, const INVITE_I
|
|||||||
{
|
{
|
||||||
app.DebugPrintf( "Failed joining game from invite\n" );
|
app.DebugPrintf( "Failed joining game from invite\n" );
|
||||||
}
|
}
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
|
|
||||||
#include "NetworkSocketLayer.h"
|
#include "NetworkSocketLayer.h"
|
||||||
#include "..\..\Common\Network\PlatformNetworkManager.h"
|
#include "..\..\Common\Network\PlatformNetworkManager.h"
|
||||||
@@ -20,8 +20,7 @@ void terminate_networking() {};
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined __PSVITA__
|
#if defined __PSVITA__
|
||||||
// every sceNet sample names its sockets - NULL is not a documented value here
|
int socket(int family, int type, int protocol) { return sceNetSocket(NULL, family, type, protocol); };
|
||||||
int socket(int family, int type, int protocol) { return sceNetSocket("minecraft", family, type, protocol); };
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
C4JThread* NetworkSocketLayer::s_acceptThread = NULL;
|
C4JThread* NetworkSocketLayer::s_acceptThread = NULL;
|
||||||
@@ -39,7 +38,7 @@ BYTE NetworkSocketLayer::s_nextSmallId = 1;
|
|||||||
CRITICAL_SECTION NetworkSocketLayer::s_sendLock;
|
CRITICAL_SECTION NetworkSocketLayer::s_sendLock;
|
||||||
CRITICAL_SECTION NetworkSocketLayer::s_connectionsLock;
|
CRITICAL_SECTION NetworkSocketLayer::s_connectionsLock;
|
||||||
|
|
||||||
RemoteConnection NetworkSocketLayer::s_connections[NETWORK_LAN_MAX_CLIENTS + 1];
|
std::vector<RemoteConnection> NetworkSocketLayer::s_connections;
|
||||||
|
|
||||||
C4JThread* NetworkSocketLayer::s_advertiseThread = NULL;
|
C4JThread* NetworkSocketLayer::s_advertiseThread = NULL;
|
||||||
volatile bool NetworkSocketLayer::s_advertising = false;
|
volatile bool NetworkSocketLayer::s_advertising = false;
|
||||||
@@ -55,24 +54,23 @@ std::vector<LANSession> NetworkSocketLayer::s_discoveredSessions;
|
|||||||
CRITICAL_SECTION NetworkSocketLayer::s_disconnectLock;
|
CRITICAL_SECTION NetworkSocketLayer::s_disconnectLock;
|
||||||
std::vector<BYTE> NetworkSocketLayer::s_disconnectedSmallIds;
|
std::vector<BYTE> NetworkSocketLayer::s_disconnectedSmallIds;
|
||||||
|
|
||||||
CRITICAL_SECTION NetworkSocketLayer::s_pendingJoinLock;
|
|
||||||
std::vector<BYTE> NetworkSocketLayer::s_pendingJoinSmallIds;
|
|
||||||
|
|
||||||
CRITICAL_SECTION NetworkSocketLayer::s_freeSmallIdLock;
|
CRITICAL_SECTION NetworkSocketLayer::s_freeSmallIdLock;
|
||||||
std::vector<BYTE> NetworkSocketLayer::s_freeSmallIds;
|
std::vector<BYTE> NetworkSocketLayer::s_freeSmallIds;
|
||||||
|
|
||||||
// only goes true on a successful Initialize(), and a failed one gets retried
|
// only goes true on a successful Initialize(), and a failed one gets retried
|
||||||
static bool s_locksCreated = false;
|
static bool s_locksCreated = false;
|
||||||
#if defined _WINDOWS64
|
|
||||||
bool g_MultiplayerHost = true;
|
|
||||||
bool g_MultiplayerJoin = false;
|
|
||||||
#else
|
|
||||||
bool g_MultiplayerHost = false;
|
|
||||||
bool g_MultiplayerJoin = true;
|
|
||||||
#endif
|
|
||||||
int g_MultiplayerPort = NETWORK_LAN_DEFAULT_PORT;
|
|
||||||
char g_MultiplayerIP[256] = "192.168.0.69";
|
|
||||||
|
|
||||||
|
bool g_MultiplayerHost = false;
|
||||||
|
#if defined __ORBIS__
|
||||||
|
// Orbis has direct lan networking so it can bypass psn account checks
|
||||||
|
bool g_MultiplayerJoin = true;
|
||||||
|
int g_MultiplayerPort = NETWORK_LAN_DEFAULT_PORT;
|
||||||
|
char g_MultiplayerIP[256] = "";
|
||||||
|
#else
|
||||||
|
bool g_MultiplayerJoin = false;
|
||||||
|
int g_MultiplayerPort = NETWORK_LAN_DEFAULT_PORT;
|
||||||
|
char g_MultiplayerIP[256] = "127.0.0.1";
|
||||||
|
#endif
|
||||||
|
|
||||||
bool NetworkSocketLayer::Initialize()
|
bool NetworkSocketLayer::Initialize()
|
||||||
{
|
{
|
||||||
@@ -86,17 +84,7 @@ bool NetworkSocketLayer::Initialize()
|
|||||||
InitializeCriticalSection(&s_advertiseLock);
|
InitializeCriticalSection(&s_advertiseLock);
|
||||||
InitializeCriticalSection(&s_discoveryLock);
|
InitializeCriticalSection(&s_discoveryLock);
|
||||||
InitializeCriticalSection(&s_disconnectLock);
|
InitializeCriticalSection(&s_disconnectLock);
|
||||||
InitializeCriticalSection(&s_pendingJoinLock);
|
|
||||||
InitializeCriticalSection(&s_freeSmallIdLock);
|
InitializeCriticalSection(&s_freeSmallIdLock);
|
||||||
|
|
||||||
for (int i = 0; i < NETWORK_LAN_MAX_CLIENTS + 1; i++)
|
|
||||||
{
|
|
||||||
s_connections[i].tcpSocket = INVALID_SOCKET;
|
|
||||||
s_connections[i].smallId = 0;
|
|
||||||
s_connections[i].recvThread = NULL;
|
|
||||||
s_connections[i].active = false;
|
|
||||||
InitializeCriticalSection(&s_connections[i].sendLock);
|
|
||||||
}
|
|
||||||
s_locksCreated = true;
|
s_locksCreated = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -180,7 +168,7 @@ void NetworkSocketLayer::Shutdown()
|
|||||||
|
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
|
|
||||||
for (int i = 0; i < NETWORK_LAN_MAX_CLIENTS + 1; i++)
|
for (size_t i = 0; i < s_connections.size(); i++)
|
||||||
{
|
{
|
||||||
s_connections[i].active = false;
|
s_connections[i].active = false;
|
||||||
#if defined _WINDOWS64 || defined _XBOX
|
#if defined _WINDOWS64 || defined _XBOX
|
||||||
@@ -190,16 +178,9 @@ void NetworkSocketLayer::Shutdown()
|
|||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
closesocket(s_connections[i].tcpSocket);
|
closesocket(s_connections[i].tcpSocket);
|
||||||
s_connections[i].tcpSocket = INVALID_SOCKET;
|
|
||||||
}
|
}
|
||||||
if (s_connections[i].recvThread != NULL)
|
|
||||||
{
|
|
||||||
s_connections[i].recvThread->WaitForCompletion(2000);
|
|
||||||
delete s_connections[i].recvThread;
|
|
||||||
s_connections[i].recvThread = NULL;
|
|
||||||
}
|
|
||||||
DeleteCriticalSection(&s_connections[i].sendLock);
|
|
||||||
}
|
}
|
||||||
|
s_connections.clear();
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
|
|
||||||
if (s_acceptThread != NULL)
|
if (s_acceptThread != NULL)
|
||||||
@@ -224,8 +205,6 @@ void NetworkSocketLayer::Shutdown()
|
|||||||
DeleteCriticalSection(&s_discoveryLock);
|
DeleteCriticalSection(&s_discoveryLock);
|
||||||
DeleteCriticalSection(&s_disconnectLock);
|
DeleteCriticalSection(&s_disconnectLock);
|
||||||
s_disconnectedSmallIds.clear();
|
s_disconnectedSmallIds.clear();
|
||||||
DeleteCriticalSection(&s_pendingJoinLock);
|
|
||||||
s_pendingJoinSmallIds.clear();
|
|
||||||
DeleteCriticalSection(&s_freeSmallIdLock);
|
DeleteCriticalSection(&s_freeSmallIdLock);
|
||||||
s_freeSmallIds.clear();
|
s_freeSmallIds.clear();
|
||||||
s_locksCreated = false;
|
s_locksCreated = false;
|
||||||
@@ -241,14 +220,6 @@ bool NetworkSocketLayer::HostGame(int port)
|
|||||||
s_isHost = true;
|
s_isHost = true;
|
||||||
s_localSmallId = 0;
|
s_localSmallId = 0;
|
||||||
s_hostSmallId = 0;
|
s_hostSmallId = 0;
|
||||||
s_connected = false;
|
|
||||||
s_active = false;
|
|
||||||
|
|
||||||
if (s_hostConnectionSocket != INVALID_SOCKET)
|
|
||||||
{
|
|
||||||
closesocket(s_hostConnectionSocket);
|
|
||||||
s_hostConnectionSocket = INVALID_SOCKET;
|
|
||||||
}
|
|
||||||
s_nextSmallId = 1;
|
s_nextSmallId = 1;
|
||||||
s_hostGamePort = port;
|
s_hostGamePort = port;
|
||||||
|
|
||||||
@@ -300,9 +271,6 @@ bool NetworkSocketLayer::HostGame(int port)
|
|||||||
SceNetSockaddrIn addr = {};
|
SceNetSockaddrIn addr = {};
|
||||||
#else
|
#else
|
||||||
struct sockaddr_in addr = {};
|
struct sockaddr_in addr = {};
|
||||||
#endif
|
|
||||||
#ifdef __PSVITA__
|
|
||||||
addr.sin_len = sizeof(addr);
|
|
||||||
#endif
|
#endif
|
||||||
addr.sin_family = AF_INET;
|
addr.sin_family = AF_INET;
|
||||||
addr.sin_addr.s_addr = htonl(INADDR_ANY);
|
addr.sin_addr.s_addr = htonl(INADDR_ANY);
|
||||||
@@ -516,41 +484,31 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
s_hostConnectionSocket = INVALID_SOCKET;
|
s_hostConnectionSocket = INVALID_SOCKET;
|
||||||
}
|
}
|
||||||
|
|
||||||
int iResult = 0;
|
XNDNS *pDns = NULL;
|
||||||
|
int iResult = XNetDnsLookup(ip, NULL, &pDns);
|
||||||
|
if (iResult != 0 || pDns == NULL)
|
||||||
|
{
|
||||||
|
app.DebugPrintf("XNetDnsLookup failed for %s - %d\n", ip, iResult);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (pDns->iStatus == WSAEINPROGRESS)
|
||||||
|
{
|
||||||
|
Sleep(10);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pDns->iStatus != 0 || pDns->cina == 0)
|
||||||
|
{
|
||||||
|
app.DebugPrintf("pDns->iStatus failed for %s - %d\n", ip, iResult);
|
||||||
|
XNetDnsRelease(pDns);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
struct sockaddr_in addr = {};
|
struct sockaddr_in addr = {};
|
||||||
addr.sin_family = AF_INET;
|
addr.sin_family = AF_INET;
|
||||||
addr.sin_port = htons((WORD)port);
|
addr.sin_port = htons((WORD)port);
|
||||||
|
addr.sin_addr = pDns->aina[0];
|
||||||
unsigned long ipAddr = inet_addr(ip);
|
XNetDnsRelease(pDns);
|
||||||
if (ipAddr != INADDR_NONE)
|
|
||||||
{
|
|
||||||
addr.sin_addr.s_addr = ipAddr;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
XNDNS *pDns = NULL;
|
|
||||||
iResult = XNetDnsLookup(ip, NULL, &pDns);
|
|
||||||
if (iResult != 0 || pDns == NULL)
|
|
||||||
{
|
|
||||||
app.DebugPrintf("XNetDnsLookup failed for %s - %d\n", ip, iResult);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
while (pDns->iStatus == WSAEINPROGRESS)
|
|
||||||
{
|
|
||||||
Sleep(10);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pDns->iStatus != 0 || pDns->cina == 0)
|
|
||||||
{
|
|
||||||
app.DebugPrintf("pDns->iStatus failed for %s - %d\n", ip, iResult);
|
|
||||||
XNetDnsRelease(pDns);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
addr.sin_addr = pDns->aina[0];
|
|
||||||
XNetDnsRelease(pDns);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool connected = false;
|
bool connected = false;
|
||||||
BYTE assignedSmallId = 0;
|
BYTE assignedSmallId = 0;
|
||||||
@@ -637,7 +595,7 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
struct sockaddr_in addr = {};
|
struct sockaddr_in addr = {};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__ORBIS__) || defined(__PSVITA__)
|
#if defined(__ORBIS__)
|
||||||
addr.sin_len = sizeof(addr);
|
addr.sin_len = sizeof(addr);
|
||||||
#endif
|
#endif
|
||||||
addr.sin_family = AF_INET;
|
addr.sin_family = AF_INET;
|
||||||
@@ -650,7 +608,7 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
app.DebugPrintf("inet_addr failed for %s:%d\n", ip, port);
|
app.DebugPrintf("inet_addr failed for %s:%d\n", ip, port);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
#elif defined(__ORBIS__) || defined(__PSVITA__)
|
#elif defined(__ORBIS__)
|
||||||
if (sceNetInetPton(SCE_NET_AF_INET, ip, &addr.sin_addr.s_addr) <= 0)
|
if (sceNetInetPton(SCE_NET_AF_INET, ip, &addr.sin_addr.s_addr) <= 0)
|
||||||
{
|
{
|
||||||
app.DebugPrintf("inet_addr failed for %s:%d\n", ip, port);
|
app.DebugPrintf("inet_addr failed for %s:%d\n", ip, port);
|
||||||
@@ -697,15 +655,7 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
tv.tv_sec = connectTimeoutMs / 1000;
|
tv.tv_sec = connectTimeoutMs / 1000;
|
||||||
tv.tv_usec = (connectTimeoutMs % 1000) * 1000;
|
tv.tv_usec = (connectTimeoutMs % 1000) * 1000;
|
||||||
#else
|
#else
|
||||||
// like sceNetSocket, this takes a name and NULL is not a documented value
|
SceNetId eid = sceNetEpollCreate(NULL, 0);
|
||||||
SceNetId eid = sceNetEpollCreate("minecraft-connect", 0);
|
|
||||||
if (eid < 0)
|
|
||||||
{
|
|
||||||
app.DebugPrintf("sceNetEpollCreate failed: 0x%08x\n", eid);
|
|
||||||
closesocket(s_hostConnectionSocket);
|
|
||||||
s_hostConnectionSocket = INVALID_SOCKET;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
SceNetEpollEvent ev = {};
|
SceNetEpollEvent ev = {};
|
||||||
ev.events = SCE_NET_EPOLLOUT;
|
ev.events = SCE_NET_EPOLLOUT;
|
||||||
ev.data.fd = s_hostConnectionSocket;
|
ev.data.fd = s_hostConnectionSocket;
|
||||||
@@ -725,10 +675,6 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
(outEvents[0].events & (SCE_NET_EPOLLERR | SCE_NET_EPOLLHUP)))
|
(outEvents[0].events & (SCE_NET_EPOLLERR | SCE_NET_EPOLLHUP)))
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
#ifdef __PSVITA__
|
|
||||||
app.DebugPrintf("epoll wait=%d events=0x%x errno=0x%08x\n",
|
|
||||||
selectResult, selectResult > 0 ? outEvents[0].events : 0, sys_net_errno);
|
|
||||||
#endif
|
|
||||||
app.DebugPrintf("connect() to %s:%d timed out or failed (attempt %d/%d)\n", ip, port, attempt + 1, maxAttempts);
|
app.DebugPrintf("connect() to %s:%d timed out or failed (attempt %d/%d)\n", ip, port, attempt + 1, maxAttempts);
|
||||||
closesocket(s_hostConnectionSocket);
|
closesocket(s_hostConnectionSocket);
|
||||||
s_hostConnectionSocket = INVALID_SOCKET;
|
s_hostConnectionSocket = INVALID_SOCKET;
|
||||||
@@ -762,12 +708,7 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
setsockopt(s_hostConnectionSocket, SOL_SOCKET, SCE_NET_SO_NBIO, &blocking, sizeof(blocking));
|
setsockopt(s_hostConnectionSocket, SOL_SOCKET, SCE_NET_SO_NBIO, &blocking, sizeof(blocking));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __PSVITA__
|
|
||||||
// sceNet takes microseconds
|
|
||||||
int recvTimeout = 3000 * 1000;
|
|
||||||
#else
|
|
||||||
DWORD recvTimeout = 3000;
|
DWORD recvTimeout = 3000;
|
||||||
#endif
|
|
||||||
setsockopt(s_hostConnectionSocket, SOL_SOCKET, SO_RCVTIMEO, (const char *)&recvTimeout, sizeof(recvTimeout));
|
setsockopt(s_hostConnectionSocket, SOL_SOCKET, SO_RCVTIMEO, (const char *)&recvTimeout, sizeof(recvTimeout));
|
||||||
/*
|
/*
|
||||||
iResult = connect(s_hostConnectionSocket, (struct sockaddr*)&addr, sizeof(addr));
|
iResult = connect(s_hostConnectionSocket, (struct sockaddr*)&addr, sizeof(addr));
|
||||||
@@ -816,9 +757,9 @@ bool NetworkSocketLayer::JoinGame(const char *ip, int port)
|
|||||||
bool NetworkSocketLayer::SendOnSocket(SOCKET sock, const void *data, int dataSize)
|
bool NetworkSocketLayer::SendOnSocket(SOCKET sock, const void *data, int dataSize)
|
||||||
{
|
{
|
||||||
#if defined _WINDOWS64 || defined _XBOX
|
#if defined _WINDOWS64 || defined _XBOX
|
||||||
if (sock == INVALID_SOCKET || dataSize <= 0 || dataSize > NETWORK_LAN_MAX_PACKET_SIZE) return false;
|
if (sock == INVALID_SOCKET || dataSize <= 0) return false;
|
||||||
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
||||||
if (sock < 0 || dataSize <= 0 || dataSize > NETWORK_LAN_MAX_PACKET_SIZE) return false;
|
if (sock < 0 || dataSize <= 0) return false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
EnterCriticalSection(&s_sendLock);
|
EnterCriticalSection(&s_sendLock);
|
||||||
@@ -839,7 +780,10 @@ bool NetworkSocketLayer::SendOnSocket(SOCKET sock, const void *data, int dataSiz
|
|||||||
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
||||||
if (sent < 0 || sent == 0)
|
if (sent < 0 || sent == 0)
|
||||||
#endif
|
#endif
|
||||||
|
{
|
||||||
|
LeaveCriticalSection(&s_sendLock);
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
totalSent += sent;
|
totalSent += sent;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -853,10 +797,14 @@ bool NetworkSocketLayer::SendOnSocket(SOCKET sock, const void *data, int dataSiz
|
|||||||
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
||||||
if (sent < 0 || sent == 0)
|
if (sent < 0 || sent == 0)
|
||||||
#endif
|
#endif
|
||||||
|
{
|
||||||
|
LeaveCriticalSection(&s_sendLock);
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
totalSent += sent;
|
totalSent += sent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LeaveCriticalSection(&s_sendLock);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -866,38 +814,31 @@ bool NetworkSocketLayer::SendToSmallId(BYTE targetSmallId, const void *data, int
|
|||||||
|
|
||||||
if (s_isHost)
|
if (s_isHost)
|
||||||
{
|
{
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
SOCKET sock = GetSocketForSmallId(targetSmallId);
|
||||||
if (targetSmallId >= NETWORK_LAN_MAX_CLIENTS + 1 || !s_connections[targetSmallId].active)
|
#if defined _WINDOWS64 || defined _XBOX
|
||||||
{
|
if (sock == INVALID_SOCKET) return false;
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
#elif defined __PS3__ || defined __ORBIS__ || defined __PSVITA__
|
||||||
return false;
|
if (sock < 0) return false;
|
||||||
}
|
#endif
|
||||||
SOCKET sock = s_connections[targetSmallId].tcpSocket;
|
return SendOnSocket(sock, data, dataSize);
|
||||||
CRITICAL_SECTION *pLock = &s_connections[targetSmallId].sendLock;
|
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
|
||||||
|
|
||||||
EnterCriticalSection(pLock);
|
|
||||||
bool result = SendOnSocket(sock, data, dataSize);
|
|
||||||
LeaveCriticalSection(pLock);
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
EnterCriticalSection(&s_sendLock);
|
return SendOnSocket(s_hostConnectionSocket, data, dataSize);
|
||||||
bool result = SendOnSocket(s_hostConnectionSocket, data, dataSize);
|
|
||||||
LeaveCriticalSection(&s_sendLock);
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SOCKET NetworkSocketLayer::GetSocketForSmallId(BYTE smallId)
|
SOCKET NetworkSocketLayer::GetSocketForSmallId(BYTE smallId)
|
||||||
{
|
{
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
if (smallId < NETWORK_LAN_MAX_CLIENTS + 1 && s_connections[smallId].active)
|
for (size_t i = 0; i < s_connections.size(); i++)
|
||||||
{
|
{
|
||||||
SOCKET sock = s_connections[smallId].tcpSocket;
|
if (s_connections[i].smallId == smallId && s_connections[i].active)
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
{
|
||||||
return sock;
|
SOCKET sock = s_connections[i].tcpSocket;
|
||||||
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
|
return sock;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
#if defined _WINDOWS64 || defined _XBOX
|
#if defined _WINDOWS64 || defined _XBOX
|
||||||
@@ -924,13 +865,7 @@ void NetworkSocketLayer::HandleDataReceived(BYTE fromSmallId, BYTE toSmallId, un
|
|||||||
INetworkPlayer *pPlayerFrom = g_NetworkManager.GetPlayerBySmallId(fromSmallId);
|
INetworkPlayer *pPlayerFrom = g_NetworkManager.GetPlayerBySmallId(fromSmallId);
|
||||||
INetworkPlayer *pPlayerTo = g_NetworkManager.GetPlayerBySmallId(toSmallId);
|
INetworkPlayer *pPlayerTo = g_NetworkManager.GetPlayerBySmallId(toSmallId);
|
||||||
|
|
||||||
if (pPlayerFrom == NULL || pPlayerTo == NULL)
|
if (pPlayerFrom == NULL || pPlayerTo == NULL) return;
|
||||||
{
|
|
||||||
// dropping here is silent and looks identical to the peer never sending
|
|
||||||
app.DebugPrintf("LAN: DROPPED %u bytes - from smallId=%d(%s) to smallId=%d(%s)\n",
|
|
||||||
dataSize, fromSmallId, pPlayerFrom ? "ok" : "NULL", toSmallId, pPlayerTo ? "ok" : "NULL");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (s_isHost)
|
if (s_isHost)
|
||||||
{
|
{
|
||||||
@@ -975,7 +910,7 @@ int NetworkSocketLayer::AcceptThreadProc(LPVOID param)
|
|||||||
setsockopt(clientSocket, IPPROTO_TCP, TCP_NODELAY, (const char *)&noDelay, sizeof(noDelay));
|
setsockopt(clientSocket, IPPROTO_TCP, TCP_NODELAY, (const char *)&noDelay, sizeof(noDelay));
|
||||||
|
|
||||||
extern QNET_STATE _iQNetStubState;
|
extern QNET_STATE _iQNetStubState;
|
||||||
if (_iQNetStubState != QNET_STATE_GAME_PLAY && _iQNetStubState != QNET_STATE_SESSION_STARTING)
|
if (_iQNetStubState != QNET_STATE_GAME_PLAY)
|
||||||
{
|
{
|
||||||
app.DebugPrintf("Win64 LAN: Rejecting connection, game not ready\n");
|
app.DebugPrintf("Win64 LAN: Rejecting connection, game not ready\n");
|
||||||
closesocket(clientSocket);
|
closesocket(clientSocket);
|
||||||
@@ -1011,19 +946,15 @@ int NetworkSocketLayer::AcceptThreadProc(LPVOID param)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
RemoteConnection &conn = s_connections[assignedSmallId];
|
RemoteConnection conn;
|
||||||
|
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
|
||||||
|
|
||||||
if (conn.recvThread != NULL)
|
|
||||||
{
|
|
||||||
conn.recvThread->WaitForCompletion(2000);
|
|
||||||
delete conn.recvThread;
|
|
||||||
conn.recvThread = NULL;
|
|
||||||
}
|
|
||||||
conn.tcpSocket = clientSocket;
|
conn.tcpSocket = clientSocket;
|
||||||
conn.smallId = assignedSmallId;
|
conn.smallId = assignedSmallId;
|
||||||
conn.active = true;
|
conn.active = true;
|
||||||
|
conn.recvThread = NULL;
|
||||||
|
|
||||||
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
|
s_connections.push_back(conn);
|
||||||
|
int connIdx = (int)s_connections.size() - 1;
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
|
|
||||||
app.DebugPrintf("Win64 LAN: Client connected, assigned smallId=%d\n", assignedSmallId);
|
app.DebugPrintf("Win64 LAN: Client connected, assigned smallId=%d\n", assignedSmallId);
|
||||||
@@ -1033,17 +964,17 @@ int NetworkSocketLayer::AcceptThreadProc(LPVOID param)
|
|||||||
extern void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost, bool isLocal);
|
extern void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost, bool isLocal);
|
||||||
Win64_SetupRemoteQNetPlayer(qnetPlayer, assignedSmallId, false, false);
|
Win64_SetupRemoteQNetPlayer(qnetPlayer, assignedSmallId, false, false);
|
||||||
|
|
||||||
EnterCriticalSection(&s_pendingJoinLock);
|
extern CPlatformNetworkManagerStub *g_pPlatformNetworkManager;
|
||||||
s_pendingJoinSmallIds.push_back(assignedSmallId);
|
g_pPlatformNetworkManager->NotifyPlayerJoined(qnetPlayer);
|
||||||
LeaveCriticalSection(&s_pendingJoinLock);
|
|
||||||
|
|
||||||
DWORD *threadParam = new DWORD;
|
DWORD *threadParam = new DWORD;
|
||||||
*threadParam = assignedSmallId;
|
*threadParam = connIdx;
|
||||||
C4JThread* hThread = new C4JThread(RecvThreadProc, threadParam, "RecvThreadProc");
|
C4JThread* hThread = new C4JThread(RecvThreadProc, threadParam, "RecvThreadProc");
|
||||||
hThread->Run();
|
hThread->Run();
|
||||||
|
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
s_connections[assignedSmallId].recvThread = hThread;
|
if (connIdx < (int)s_connections.size())
|
||||||
|
s_connections[connIdx].recvThread = hThread;
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -1051,16 +982,17 @@ int NetworkSocketLayer::AcceptThreadProc(LPVOID param)
|
|||||||
|
|
||||||
int NetworkSocketLayer::RecvThreadProc(LPVOID param)
|
int NetworkSocketLayer::RecvThreadProc(LPVOID param)
|
||||||
{
|
{
|
||||||
BYTE clientSmallId = (BYTE)*(DWORD *)param;
|
DWORD connIdx = *(DWORD *)param;
|
||||||
delete (DWORD *)param;
|
delete (DWORD *)param;
|
||||||
|
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
if (clientSmallId >= NETWORK_LAN_MAX_CLIENTS + 1 || !s_connections[clientSmallId].active)
|
if (connIdx >= (DWORD)s_connections.size())
|
||||||
{
|
{
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
SOCKET sock = s_connections[clientSmallId].tcpSocket;
|
SOCKET sock = s_connections[connIdx].tcpSocket;
|
||||||
|
BYTE clientSmallId = s_connections[connIdx].smallId;
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
|
|
||||||
std::vector<BYTE> recvBuf;
|
std::vector<BYTE> recvBuf;
|
||||||
@@ -1081,7 +1013,7 @@ int NetworkSocketLayer::RecvThreadProc(LPVOID param)
|
|||||||
((uint32_t)header[2] << 8) |
|
((uint32_t)header[2] << 8) |
|
||||||
((uint32_t)header[3]);
|
((uint32_t)header[3]);
|
||||||
|
|
||||||
if (packetSize <= 0 || (unsigned int)packetSize > NETWORK_LAN_MAX_PACKET_SIZE)
|
if (packetSize <= 0 || packetSize > NETWORK_LAN_MAX_PACKET_SIZE)
|
||||||
{
|
{
|
||||||
app.DebugPrintf("LAN: Invalid packet size %d from client smallId=%d (max=%d)\n",
|
app.DebugPrintf("LAN: Invalid packet size %d from client smallId=%d (max=%d)\n",
|
||||||
packetSize,
|
packetSize,
|
||||||
@@ -1106,11 +1038,18 @@ int NetworkSocketLayer::RecvThreadProc(LPVOID param)
|
|||||||
}
|
}
|
||||||
|
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
s_connections[clientSmallId].active = false;
|
for (size_t i = 0; i < s_connections.size(); i++)
|
||||||
if (s_connections[clientSmallId].tcpSocket != INVALID_SOCKET)
|
|
||||||
{
|
{
|
||||||
closesocket(s_connections[clientSmallId].tcpSocket);
|
if (s_connections[i].smallId == clientSmallId)
|
||||||
s_connections[clientSmallId].tcpSocket = INVALID_SOCKET;
|
{
|
||||||
|
s_connections[i].active = false;
|
||||||
|
if (s_connections[i].tcpSocket != INVALID_SOCKET)
|
||||||
|
{
|
||||||
|
closesocket(s_connections[i].tcpSocket);
|
||||||
|
s_connections[i].tcpSocket = INVALID_SOCKET;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
|
|
||||||
@@ -1142,34 +1081,18 @@ void NetworkSocketLayer::PushFreeSmallId(BYTE smallId)
|
|||||||
LeaveCriticalSection(&s_freeSmallIdLock);
|
LeaveCriticalSection(&s_freeSmallIdLock);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool NetworkSocketLayer::PopPendingJoinSmallId(BYTE *outSmallId)
|
|
||||||
{
|
|
||||||
bool found = false;
|
|
||||||
EnterCriticalSection(&s_pendingJoinLock);
|
|
||||||
if (!s_pendingJoinSmallIds.empty())
|
|
||||||
{
|
|
||||||
*outSmallId = s_pendingJoinSmallIds.back();
|
|
||||||
s_pendingJoinSmallIds.pop_back();
|
|
||||||
found = true;
|
|
||||||
}
|
|
||||||
LeaveCriticalSection(&s_pendingJoinLock);
|
|
||||||
return found;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool NetworkSocketLayer::IsSmallIdConnected(BYTE smallId)
|
|
||||||
{
|
|
||||||
if (smallId >= NETWORK_LAN_MAX_CLIENTS + 1) return false;
|
|
||||||
return s_connections[smallId].active;
|
|
||||||
}
|
|
||||||
|
|
||||||
void NetworkSocketLayer::CloseConnectionBySmallId(BYTE smallId)
|
void NetworkSocketLayer::CloseConnectionBySmallId(BYTE smallId)
|
||||||
{
|
{
|
||||||
EnterCriticalSection(&s_connectionsLock);
|
EnterCriticalSection(&s_connectionsLock);
|
||||||
if (smallId < NETWORK_LAN_MAX_CLIENTS + 1 && s_connections[smallId].active && s_connections[smallId].tcpSocket != INVALID_SOCKET)
|
for (size_t i = 0; i < s_connections.size(); i++)
|
||||||
{
|
{
|
||||||
closesocket(s_connections[smallId].tcpSocket);
|
if (s_connections[i].smallId == smallId && s_connections[i].active && s_connections[i].tcpSocket != INVALID_SOCKET)
|
||||||
s_connections[smallId].tcpSocket = INVALID_SOCKET;
|
{
|
||||||
app.DebugPrintf("Win64 LAN: Force-closed TCP connection for smallId=%d\n", smallId);
|
closesocket(s_connections[i].tcpSocket);
|
||||||
|
s_connections[i].tcpSocket = INVALID_SOCKET;
|
||||||
|
app.DebugPrintf("Win64 LAN: Force-closed TCP connection for smallId=%d\n", smallId);
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
LeaveCriticalSection(&s_connectionsLock);
|
LeaveCriticalSection(&s_connectionsLock);
|
||||||
}
|
}
|
||||||
@@ -1192,9 +1115,9 @@ int NetworkSocketLayer::ClientRecvThreadProc(LPVOID param)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
int packetSize = ((uint32_t)header[0] << 24) | ((uint32_t)header[1] << 16) | ((uint32_t)header[2] << 8) | (uint32_t)header[3];
|
int packetSize = (header[0] << 24) | (header[1] << 16) | (header[2] << 8) | header[3];
|
||||||
|
|
||||||
if (packetSize <= 0 || (unsigned int)packetSize > NETWORK_LAN_MAX_PACKET_SIZE)
|
if (packetSize <= 0 || packetSize > NETWORK_LAN_MAX_PACKET_SIZE)
|
||||||
{
|
{
|
||||||
app.DebugPrintf("LAN: Invalid packet size %d from host\n", packetSize);
|
app.DebugPrintf("LAN: Invalid packet size %d from host\n", packetSize);
|
||||||
break;
|
break;
|
||||||
@@ -1203,6 +1126,7 @@ int NetworkSocketLayer::ClientRecvThreadProc(LPVOID param)
|
|||||||
if ((int)recvBuf.size() < packetSize)
|
if ((int)recvBuf.size() < packetSize)
|
||||||
{
|
{
|
||||||
recvBuf.resize(packetSize);
|
recvBuf.resize(packetSize);
|
||||||
|
app.DebugPrintf("LAN: Resized client recv buffer to %d bytes\n", packetSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!RecvExact(s_hostConnectionSocket, &recvBuf[0], packetSize))
|
if (!RecvExact(s_hostConnectionSocket, &recvBuf[0], packetSize))
|
||||||
@@ -1211,14 +1135,6 @@ int NetworkSocketLayer::ClientRecvThreadProc(LPVOID param)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int s_recvLogged = 0;
|
|
||||||
if (s_recvLogged < 20)
|
|
||||||
{
|
|
||||||
app.DebugPrintf("LAN: recv %d bytes from host (host=%d local=%d)\n",
|
|
||||||
packetSize, s_hostSmallId, s_localSmallId);
|
|
||||||
s_recvLogged++;
|
|
||||||
}
|
|
||||||
|
|
||||||
HandleDataReceived(s_hostSmallId, s_localSmallId, &recvBuf[0], packetSize);
|
HandleDataReceived(s_hostSmallId, s_localSmallId, &recvBuf[0], packetSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1309,10 +1225,9 @@ void NetworkSocketLayer::UpdateAdvertisePlayerNames(BYTE count, const char playe
|
|||||||
EnterCriticalSection(&s_advertiseLock);
|
EnterCriticalSection(&s_advertiseLock);
|
||||||
memset(s_advertiseData.playerNames, 0, sizeof(s_advertiseData.playerNames));
|
memset(s_advertiseData.playerNames, 0, sizeof(s_advertiseData.playerNames));
|
||||||
s_advertiseData.playerCount = count;
|
s_advertiseData.playerCount = count;
|
||||||
for (int i = 0; i < count && i < NETWORK_LAN_BROADCAST_PLAYERS; i++)
|
for (int i = 0; i < count && i < 8; i++)
|
||||||
{
|
{
|
||||||
memcpy(s_advertiseData.playerNames[i], playerNames[i],
|
memcpy(s_advertiseData.playerNames[i], playerNames[i], XUSER_NAME_SIZE);
|
||||||
NETWORK_LAN_PLAYER_NAME_SIZE < (int)XUSER_NAME_SIZE ? NETWORK_LAN_PLAYER_NAME_SIZE : (int)XUSER_NAME_SIZE);
|
|
||||||
}
|
}
|
||||||
LeaveCriticalSection(&s_advertiseLock);
|
LeaveCriticalSection(&s_advertiseLock);
|
||||||
}
|
}
|
||||||
@@ -1332,9 +1247,6 @@ int NetworkSocketLayer::AdvertiseThreadProc(LPVOID param)
|
|||||||
struct sockaddr_in broadcastAddr;
|
struct sockaddr_in broadcastAddr;
|
||||||
#endif
|
#endif
|
||||||
memset(&broadcastAddr, 0, sizeof(broadcastAddr));
|
memset(&broadcastAddr, 0, sizeof(broadcastAddr));
|
||||||
#ifdef __PSVITA__
|
|
||||||
broadcastAddr.sin_len = sizeof(broadcastAddr);
|
|
||||||
#endif
|
|
||||||
broadcastAddr.sin_family = AF_INET;
|
broadcastAddr.sin_family = AF_INET;
|
||||||
broadcastAddr.sin_port = htons(NETWORK_LAN_DISCOVERY_PORT);
|
broadcastAddr.sin_port = htons(NETWORK_LAN_DISCOVERY_PORT);
|
||||||
broadcastAddr.sin_addr.s_addr = INADDR_BROADCAST;
|
broadcastAddr.sin_addr.s_addr = INADDR_BROADCAST;
|
||||||
@@ -1354,38 +1266,6 @@ int NetworkSocketLayer::AdvertiseThreadProc(LPVOID param)
|
|||||||
#ifdef __PSVITA__
|
#ifdef __PSVITA__
|
||||||
int sent = sendto(s_advertiseSock, (const char *)&data, sizeof(data), 0,
|
int sent = sendto(s_advertiseSock, (const char *)&data, sizeof(data), 0,
|
||||||
(const sockaddr *)&broadcastAddr, sizeof(broadcastAddr));
|
(const sockaddr *)&broadcastAddr, sizeof(broadcastAddr));
|
||||||
#elif defined _WINDOWS64
|
|
||||||
//Broadcast on all interfaces.
|
|
||||||
INTERFACE_INFO ifaces[32];
|
|
||||||
DWORD ifaceBytes = 0;
|
|
||||||
int numIfaces = 0;
|
|
||||||
int sent = SOCKET_ERROR;
|
|
||||||
if (WSAIoctl(s_advertiseSock, SIO_GET_INTERFACE_LIST, NULL, 0,
|
|
||||||
ifaces, sizeof(ifaces), &ifaceBytes, NULL, NULL) != SOCKET_ERROR)
|
|
||||||
{
|
|
||||||
numIfaces = (int)(ifaceBytes / sizeof(INTERFACE_INFO));
|
|
||||||
}
|
|
||||||
for (int i = 0; i < numIfaces; i++)
|
|
||||||
{
|
|
||||||
if (!(ifaces[i].iiFlags & IFF_UP)) continue;
|
|
||||||
if (ifaces[i].iiFlags & IFF_LOOPBACK) continue;
|
|
||||||
if (!(ifaces[i].iiFlags & IFF_BROADCAST)) continue;
|
|
||||||
|
|
||||||
u_long ifIp = ifaces[i].iiAddress.AddressIn.sin_addr.s_addr;
|
|
||||||
u_long ifMask = ifaces[i].iiNetmask.AddressIn.sin_addr.s_addr;
|
|
||||||
broadcastAddr.sin_addr.s_addr = (ifIp & ifMask) | ~ifMask;
|
|
||||||
|
|
||||||
int r = sendto(s_advertiseSock, (const char *)&data, sizeof(data), 0,
|
|
||||||
(struct sockaddr *)&broadcastAddr, sizeof(broadcastAddr));
|
|
||||||
if (r != SOCKET_ERROR) sent = r;
|
|
||||||
}
|
|
||||||
if (sent == SOCKET_ERROR)
|
|
||||||
{
|
|
||||||
// no interface worked
|
|
||||||
broadcastAddr.sin_addr.s_addr = INADDR_BROADCAST;
|
|
||||||
sent = sendto(s_advertiseSock, (const char *)&data, sizeof(data), 0,
|
|
||||||
(struct sockaddr *)&broadcastAddr, sizeof(broadcastAddr));
|
|
||||||
}
|
|
||||||
#else
|
#else
|
||||||
int sent = sendto(s_advertiseSock, (const char *)&data, sizeof(data), 0,
|
int sent = sendto(s_advertiseSock, (const char *)&data, sizeof(data), 0,
|
||||||
(struct sockaddr *)&broadcastAddr, sizeof(broadcastAddr));
|
(struct sockaddr *)&broadcastAddr, sizeof(broadcastAddr));
|
||||||
@@ -1440,10 +1320,6 @@ bool NetworkSocketLayer::StartDiscovery()
|
|||||||
struct sockaddr_in bindAddr;
|
struct sockaddr_in bindAddr;
|
||||||
#endif
|
#endif
|
||||||
memset(&bindAddr, 0, sizeof(bindAddr));
|
memset(&bindAddr, 0, sizeof(bindAddr));
|
||||||
#ifdef __PSVITA__
|
|
||||||
// sceNet rejects a sockaddr whose sin_len is unset
|
|
||||||
bindAddr.sin_len = sizeof(bindAddr);
|
|
||||||
#endif
|
|
||||||
bindAddr.sin_family = AF_INET;
|
bindAddr.sin_family = AF_INET;
|
||||||
bindAddr.sin_port = htons(NETWORK_LAN_DISCOVERY_PORT);
|
bindAddr.sin_port = htons(NETWORK_LAN_DISCOVERY_PORT);
|
||||||
bindAddr.sin_addr.s_addr = INADDR_ANY;
|
bindAddr.sin_addr.s_addr = INADDR_ANY;
|
||||||
@@ -1478,10 +1354,6 @@ bool NetworkSocketLayer::StartDiscovery()
|
|||||||
timeout.tv_sec = 0;
|
timeout.tv_sec = 0;
|
||||||
timeout.tv_usec = 500000;
|
timeout.tv_usec = 500000;
|
||||||
setsockopt(s_discoverySock, SOL_SOCKET, SO_RCVTIMEO, (const char *)&timeout, sizeof(timeout));
|
setsockopt(s_discoverySock, SOL_SOCKET, SO_RCVTIMEO, (const char *)&timeout, sizeof(timeout));
|
||||||
#elif defined __PSVITA__
|
|
||||||
// sceNet wants microseconds in an int here
|
|
||||||
int timeout = 500000;
|
|
||||||
setsockopt(s_discoverySock, SOL_SOCKET, SO_RCVTIMEO, (const char *)&timeout, sizeof(timeout));
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
s_discovering = true;
|
s_discovering = true;
|
||||||
@@ -1535,8 +1407,8 @@ std::vector<LANSession> NetworkSocketLayer::GetDiscoveredSessions()
|
|||||||
|
|
||||||
int NetworkSocketLayer::DiscoveryThreadProc(LPVOID param)
|
int NetworkSocketLayer::DiscoveryThreadProc(LPVOID param)
|
||||||
{
|
{
|
||||||
|
app.DebugPrintf("Discovery thread started\n");
|
||||||
char recvBuf[1024];
|
char recvBuf[1024];
|
||||||
const size_t MAX_DISCOVERED_SESSIONS = 64;
|
|
||||||
|
|
||||||
while (s_discovering)
|
while (s_discovering)
|
||||||
{
|
{
|
||||||
@@ -1585,11 +1457,6 @@ int NetworkSocketLayer::DiscoveryThreadProc(LPVOID param)
|
|||||||
if (broadcast->magic != NETWORK_LAN_BROADCAST_MAGIC)
|
if (broadcast->magic != NETWORK_LAN_BROADCAST_MAGIC)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
broadcast->hostName[31] = L'\0';
|
|
||||||
|
|
||||||
for (int pn = 0; pn < NETWORK_LAN_BROADCAST_PLAYERS; pn++)
|
|
||||||
broadcast->playerNames[pn][XUSER_NAME_SIZE - 1] = '\0';
|
|
||||||
|
|
||||||
char senderIP[64];
|
char senderIP[64];
|
||||||
#if defined _XBOX
|
#if defined _XBOX
|
||||||
unsigned char *ipBytes = (unsigned char *)&senderAddr.sin_addr;
|
unsigned char *ipBytes = (unsigned char *)&senderAddr.sin_addr;
|
||||||
@@ -1632,12 +1499,6 @@ int NetworkSocketLayer::DiscoveryThreadProc(LPVOID param)
|
|||||||
|
|
||||||
if (!found)
|
if (!found)
|
||||||
{
|
{
|
||||||
if (s_discoveredSessions.size() >= MAX_DISCOVERED_SESSIONS)
|
|
||||||
{
|
|
||||||
LeaveCriticalSection(&s_discoveryLock);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
LANSession session;
|
LANSession session;
|
||||||
memset(&session, 0, sizeof(session));
|
memset(&session, 0, sizeof(session));
|
||||||
strncpy(session.hostIP, senderIP, sizeof(session.hostIP) - 1);
|
strncpy(session.hostIP, senderIP, sizeof(session.hostIP) - 1);
|
||||||
|
|||||||
@@ -35,10 +35,9 @@
|
|||||||
#define NETWORK_LAN_DEFAULT_PORT 25565
|
#define NETWORK_LAN_DEFAULT_PORT 25565
|
||||||
#define NETWORK_LAN_MAX_CLIENTS 7
|
#define NETWORK_LAN_MAX_CLIENTS 7
|
||||||
#define NETWORK_LAN_RECV_BUFFER_SIZE 65536
|
#define NETWORK_LAN_RECV_BUFFER_SIZE 65536
|
||||||
#define NETWORK_LAN_MAX_PACKET_SIZE (3 * 1024 * 1024)
|
#define NETWORK_LAN_MAX_PACKET_SIZE (4 * 1024 * 1024)
|
||||||
#define NETWORK_LAN_DISCOVERY_PORT 25566
|
#define NETWORK_LAN_DISCOVERY_PORT 25566
|
||||||
#define NETWORK_LAN_BROADCAST_MAGIC 0x4D434C4E
|
#define NETWORK_LAN_BROADCAST_MAGIC 0x4D434C4E
|
||||||
#define NETWORK_LAN_BROADCAST_PLAYERS 8
|
|
||||||
|
|
||||||
#ifdef __PS3__
|
#ifdef __PS3__
|
||||||
typedef int SOCKET;
|
typedef int SOCKET;
|
||||||
@@ -101,8 +100,6 @@ typedef SceNetSocklen_t socklen_t;
|
|||||||
|
|
||||||
class Socket;
|
class Socket;
|
||||||
|
|
||||||
#define NETWORK_LAN_PLAYER_NAME_SIZE 32
|
|
||||||
|
|
||||||
#pragma pack(push, 1)
|
#pragma pack(push, 1)
|
||||||
struct LANBroadcast
|
struct LANBroadcast
|
||||||
{
|
{
|
||||||
@@ -116,7 +113,7 @@ struct LANBroadcast
|
|||||||
DWORD texturePackParentId;
|
DWORD texturePackParentId;
|
||||||
BYTE subTexturePackId;
|
BYTE subTexturePackId;
|
||||||
BYTE isJoinable;
|
BYTE isJoinable;
|
||||||
char playerNames[NETWORK_LAN_BROADCAST_PLAYERS][NETWORK_LAN_PLAYER_NAME_SIZE];
|
char playerNames[8][XUSER_NAME_SIZE];
|
||||||
};
|
};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
|
|
||||||
@@ -133,7 +130,7 @@ struct LANSession
|
|||||||
unsigned char subTexturePackId;
|
unsigned char subTexturePackId;
|
||||||
bool isJoinable;
|
bool isJoinable;
|
||||||
DWORD lastSeenTick;
|
DWORD lastSeenTick;
|
||||||
char playerNames[NETWORK_LAN_BROADCAST_PLAYERS][NETWORK_LAN_PLAYER_NAME_SIZE];
|
char playerNames[8][XUSER_NAME_SIZE];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct RemoteConnection
|
struct RemoteConnection
|
||||||
@@ -142,7 +139,6 @@ struct RemoteConnection
|
|||||||
BYTE smallId;
|
BYTE smallId;
|
||||||
C4JThread* recvThread;
|
C4JThread* recvThread;
|
||||||
volatile bool active;
|
volatile bool active;
|
||||||
CRITICAL_SECTION sendLock;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class NetworkSocketLayer
|
class NetworkSocketLayer
|
||||||
@@ -172,10 +168,6 @@ public:
|
|||||||
static void PushFreeSmallId(BYTE smallId);
|
static void PushFreeSmallId(BYTE smallId);
|
||||||
static void CloseConnectionBySmallId(BYTE smallId);
|
static void CloseConnectionBySmallId(BYTE smallId);
|
||||||
|
|
||||||
static bool PopPendingJoinSmallId(BYTE *outSmallId);
|
|
||||||
|
|
||||||
static bool IsSmallIdConnected(BYTE smallId);
|
|
||||||
|
|
||||||
static bool StartAdvertising(int gamePort, const wchar_t *hostName, unsigned int gameSettings, unsigned int texPackId, unsigned char subTexId, unsigned short netVer);
|
static bool StartAdvertising(int gamePort, const wchar_t *hostName, unsigned int gameSettings, unsigned int texPackId, unsigned char subTexId, unsigned short netVer);
|
||||||
static void StopAdvertising();
|
static void StopAdvertising();
|
||||||
static void UpdateAdvertisePlayerCount(BYTE count);
|
static void UpdateAdvertisePlayerCount(BYTE count);
|
||||||
@@ -212,7 +204,7 @@ private:
|
|||||||
static CRITICAL_SECTION s_sendLock;
|
static CRITICAL_SECTION s_sendLock;
|
||||||
static CRITICAL_SECTION s_connectionsLock;
|
static CRITICAL_SECTION s_connectionsLock;
|
||||||
|
|
||||||
static RemoteConnection s_connections[NETWORK_LAN_MAX_CLIENTS + 1];
|
static std::vector<RemoteConnection> s_connections;
|
||||||
|
|
||||||
static SOCKET s_advertiseSock;
|
static SOCKET s_advertiseSock;
|
||||||
static C4JThread* s_advertiseThread;
|
static C4JThread* s_advertiseThread;
|
||||||
@@ -230,9 +222,6 @@ private:
|
|||||||
static CRITICAL_SECTION s_disconnectLock;
|
static CRITICAL_SECTION s_disconnectLock;
|
||||||
static std::vector<BYTE> s_disconnectedSmallIds;
|
static std::vector<BYTE> s_disconnectedSmallIds;
|
||||||
|
|
||||||
static CRITICAL_SECTION s_pendingJoinLock;
|
|
||||||
static std::vector<BYTE> s_pendingJoinSmallIds;
|
|
||||||
|
|
||||||
static CRITICAL_SECTION s_freeSmallIdLock;
|
static CRITICAL_SECTION s_freeSmallIdLock;
|
||||||
static std::vector<BYTE> s_freeSmallIds;
|
static std::vector<BYTE> s_freeSmallIds;
|
||||||
};
|
};
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,172 +1,171 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
using namespace std;
|
using namespace std;
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include "..\..\..\Minecraft.World\C4JThread.h"
|
#include "..\..\..\Minecraft.World\C4JThread.h"
|
||||||
#include "NetworkPlayerInterface.h"
|
#include "NetworkPlayerInterface.h"
|
||||||
#include "PlatformNetworkManagerInterface.h"
|
#include "PlatformNetworkManagerInterface.h"
|
||||||
#include "SessionInfo.h"
|
#include "SessionInfo.h"
|
||||||
|
|
||||||
class CPlatformNetworkManagerStub : public CPlatformNetworkManager
|
class CPlatformNetworkManagerStub : public CPlatformNetworkManager
|
||||||
{
|
{
|
||||||
friend class CGameNetworkManager;
|
friend class CGameNetworkManager;
|
||||||
public:
|
public:
|
||||||
virtual bool Initialise(CGameNetworkManager *pGameNetworkManager, int flagIndexSize);
|
virtual bool Initialise(CGameNetworkManager *pGameNetworkManager, int flagIndexSize);
|
||||||
virtual void Terminate();
|
virtual void Terminate();
|
||||||
virtual int GetJoiningReadyPercentage();
|
virtual int GetJoiningReadyPercentage();
|
||||||
virtual int CorrectErrorIDS(int IDS);
|
virtual int CorrectErrorIDS(int IDS);
|
||||||
|
|
||||||
virtual void DoWork();
|
virtual void DoWork();
|
||||||
virtual int GetPlayerCount();
|
virtual int GetPlayerCount();
|
||||||
virtual int GetOnlinePlayerCount();
|
virtual int GetOnlinePlayerCount();
|
||||||
virtual int GetLocalPlayerMask(int playerIndex);
|
virtual int GetLocalPlayerMask(int playerIndex);
|
||||||
virtual bool AddLocalPlayerByUserIndex( int userIndex );
|
virtual bool AddLocalPlayerByUserIndex( int userIndex );
|
||||||
virtual bool RemoveLocalPlayerByUserIndex( int userIndex );
|
virtual bool RemoveLocalPlayerByUserIndex( int userIndex );
|
||||||
virtual INetworkPlayer *GetLocalPlayerByUserIndex( int userIndex );
|
virtual INetworkPlayer *GetLocalPlayerByUserIndex( int userIndex );
|
||||||
virtual INetworkPlayer *GetPlayerByIndex(int playerIndex);
|
virtual INetworkPlayer *GetPlayerByIndex(int playerIndex);
|
||||||
virtual INetworkPlayer * GetPlayerByXuid(PlayerUID xuid);
|
virtual INetworkPlayer * GetPlayerByXuid(PlayerUID xuid);
|
||||||
virtual INetworkPlayer * GetPlayerBySmallId(unsigned char smallId);
|
virtual INetworkPlayer * GetPlayerBySmallId(unsigned char smallId);
|
||||||
virtual bool ShouldMessageForFullSession();
|
virtual bool ShouldMessageForFullSession();
|
||||||
|
|
||||||
virtual INetworkPlayer *GetHostPlayer();
|
virtual INetworkPlayer *GetHostPlayer();
|
||||||
virtual bool IsHost();
|
virtual bool IsHost();
|
||||||
virtual bool JoinGameFromInviteInfo( int userIndex, int userMask, const INVITE_INFO *pInviteInfo);
|
virtual bool JoinGameFromInviteInfo( int userIndex, int userMask, const INVITE_INFO *pInviteInfo);
|
||||||
virtual bool LeaveGame(bool bMigrateHost);
|
virtual bool LeaveGame(bool bMigrateHost);
|
||||||
|
|
||||||
virtual bool IsInSession();
|
virtual bool IsInSession();
|
||||||
virtual bool IsInGameplay();
|
virtual bool IsInGameplay();
|
||||||
virtual bool IsReadyToPlayOrIdle();
|
virtual bool IsReadyToPlayOrIdle();
|
||||||
virtual bool IsInStatsEnabledSession();
|
virtual bool IsInStatsEnabledSession();
|
||||||
virtual bool SessionHasSpace(unsigned int spaceRequired = 1);
|
virtual bool SessionHasSpace(unsigned int spaceRequired = 1);
|
||||||
virtual void SendInviteGUI(int quadrant);
|
virtual void SendInviteGUI(int quadrant);
|
||||||
virtual bool IsAddingPlayer();
|
virtual bool IsAddingPlayer();
|
||||||
|
|
||||||
virtual void HostGame(int localUsersMask, bool bOnlineGame, bool bIsPrivate, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
|
virtual void HostGame(int localUsersMask, bool bOnlineGame, bool bIsPrivate, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
|
||||||
virtual int JoinGame(FriendSessionInfo *searchResult, int localUsersMask, int primaryUserIndex );
|
virtual int JoinGame(FriendSessionInfo *searchResult, int localUsersMask, int primaryUserIndex );
|
||||||
virtual bool SetLocalGame(bool isLocal);
|
virtual bool SetLocalGame(bool isLocal);
|
||||||
virtual bool IsLocalGame() { return m_bIsOfflineGame; }
|
virtual bool IsLocalGame() { return m_bIsOfflineGame; }
|
||||||
virtual void SetPrivateGame(bool isPrivate);
|
virtual void SetPrivateGame(bool isPrivate);
|
||||||
virtual bool IsPrivateGame() { return m_bIsPrivateGame; }
|
virtual bool IsPrivateGame() { return m_bIsPrivateGame; }
|
||||||
virtual bool IsLeavingGame() { return m_bLeavingGame; }
|
virtual bool IsLeavingGame() { return m_bLeavingGame; }
|
||||||
virtual void ResetLeavingGame() { m_bLeavingGame = false; }
|
virtual void ResetLeavingGame() { m_bLeavingGame = false; }
|
||||||
|
|
||||||
virtual void RegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
|
virtual void RegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
|
||||||
virtual void UnRegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
|
virtual void UnRegisterPlayerChangedCallback(int iPad, void (*callback)(void *callbackParam, INetworkPlayer *pPlayer, bool leaving), void *callbackParam);
|
||||||
|
|
||||||
virtual void HandleSignInChange();
|
virtual void HandleSignInChange();
|
||||||
|
|
||||||
virtual void SetGamePlayState();
|
virtual bool _RunNetworkGame();
|
||||||
virtual bool _RunNetworkGame();
|
|
||||||
|
private:
|
||||||
private:
|
bool isSystemPrimaryPlayer(IQNetPlayer *pQNetPlayer);
|
||||||
bool isSystemPrimaryPlayer(IQNetPlayer *pQNetPlayer);
|
virtual bool _LeaveGame(bool bMigrateHost, bool bLeaveRoom);
|
||||||
virtual bool _LeaveGame(bool bMigrateHost, bool bLeaveRoom);
|
virtual void _HostGame(int dwUsersMask, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
|
||||||
virtual void _HostGame(int dwUsersMask, unsigned char publicSlots = MINECRAFT_NET_MAX_PLAYERS, unsigned char privateSlots = 0);
|
virtual bool _StartGame();
|
||||||
virtual bool _StartGame();
|
|
||||||
|
IQNet * m_pIQNet; // pointer to QNet interface
|
||||||
IQNet * m_pIQNet; // pointer to QNet interface
|
|
||||||
|
HANDLE m_notificationListener;
|
||||||
HANDLE m_notificationListener;
|
|
||||||
|
vector<IQNetPlayer *> m_machineQNetPrimaryPlayers; // collection of players that we deem to be the main one for that system
|
||||||
vector<IQNetPlayer *> m_machineQNetPrimaryPlayers; // collection of players that we deem to be the main one for that system
|
|
||||||
|
bool m_bLeavingGame;
|
||||||
bool m_bLeavingGame;
|
bool m_bLeaveGameOnTick;
|
||||||
bool m_bLeaveGameOnTick;
|
bool m_migrateHostOnLeave;
|
||||||
bool m_migrateHostOnLeave;
|
bool m_bHostChanged;
|
||||||
bool m_bHostChanged;
|
|
||||||
|
bool m_bIsOfflineGame;
|
||||||
bool m_bIsOfflineGame;
|
bool m_bIsPrivateGame;
|
||||||
bool m_bIsPrivateGame;
|
int m_flagIndexSize;
|
||||||
int m_flagIndexSize;
|
|
||||||
|
// This is only maintained by the host, and is not valid on client machines
|
||||||
// This is only maintained by the host, and is not valid on client machines
|
GameSessionData m_hostGameSessionData;
|
||||||
GameSessionData m_hostGameSessionData;
|
CGameNetworkManager *m_pGameNetworkManager;
|
||||||
CGameNetworkManager *m_pGameNetworkManager;
|
public:
|
||||||
public:
|
virtual void UpdateAndSetGameSessionData(INetworkPlayer *pNetworkPlayerLeaving = NULL);
|
||||||
virtual void UpdateAndSetGameSessionData(INetworkPlayer *pNetworkPlayerLeaving = NULL);
|
|
||||||
|
private:
|
||||||
private:
|
// TODO 4J Stu - Do we need to be able to have more than one of these?
|
||||||
// TODO 4J Stu - Do we need to be able to have more than one of these?
|
void (*playerChangedCallback[XUSER_MAX_COUNT])(void *callbackParam, INetworkPlayer *pPlayer, bool leaving);
|
||||||
void (*playerChangedCallback[XUSER_MAX_COUNT])(void *callbackParam, INetworkPlayer *pPlayer, bool leaving);
|
void *playerChangedCallbackParam[XUSER_MAX_COUNT];
|
||||||
void *playerChangedCallbackParam[XUSER_MAX_COUNT];
|
|
||||||
|
static int RemovePlayerOnSocketClosedThreadProc( void* lpParam );
|
||||||
static int RemovePlayerOnSocketClosedThreadProc( void* lpParam );
|
virtual bool RemoveLocalPlayer( INetworkPlayer *pNetworkPlayer );
|
||||||
virtual bool RemoveLocalPlayer( INetworkPlayer *pNetworkPlayer );
|
|
||||||
|
// Things for handling per-system flags
|
||||||
// Things for handling per-system flags
|
class PlayerFlags
|
||||||
class PlayerFlags
|
{
|
||||||
{
|
public:
|
||||||
public:
|
INetworkPlayer *m_pNetworkPlayer;
|
||||||
INetworkPlayer *m_pNetworkPlayer;
|
unsigned char *flags;
|
||||||
unsigned char *flags;
|
unsigned int count;
|
||||||
unsigned int count;
|
PlayerFlags(INetworkPlayer *pNetworkPlayer, unsigned int count);
|
||||||
PlayerFlags(INetworkPlayer *pNetworkPlayer, unsigned int count);
|
~PlayerFlags();
|
||||||
~PlayerFlags();
|
};
|
||||||
};
|
vector<PlayerFlags *> m_playerFlags;
|
||||||
vector<PlayerFlags *> m_playerFlags;
|
void SystemFlagAddPlayer(INetworkPlayer *pNetworkPlayer);
|
||||||
void SystemFlagAddPlayer(INetworkPlayer *pNetworkPlayer);
|
void SystemFlagRemovePlayer(INetworkPlayer *pNetworkPlayer);
|
||||||
void SystemFlagRemovePlayer(INetworkPlayer *pNetworkPlayer);
|
void SystemFlagReset();
|
||||||
void SystemFlagReset();
|
public:
|
||||||
public:
|
virtual void SystemFlagSet(INetworkPlayer *pNetworkPlayer, int index);
|
||||||
virtual void SystemFlagSet(INetworkPlayer *pNetworkPlayer, int index);
|
virtual bool SystemFlagGet(INetworkPlayer *pNetworkPlayer, int index);
|
||||||
virtual bool SystemFlagGet(INetworkPlayer *pNetworkPlayer, int index);
|
|
||||||
|
// For telemetry
|
||||||
// For telemetry
|
private:
|
||||||
private:
|
float m_lastPlayerEventTimeStart;
|
||||||
float m_lastPlayerEventTimeStart;
|
|
||||||
|
public:
|
||||||
public:
|
wstring GatherStats();
|
||||||
wstring GatherStats();
|
wstring GatherRTTStats();
|
||||||
wstring GatherRTTStats();
|
|
||||||
|
private:
|
||||||
private:
|
vector<FriendSessionInfo *> friendsSessions[XUSER_MAX_COUNT];
|
||||||
vector<FriendSessionInfo *> friendsSessions[XUSER_MAX_COUNT];
|
int m_searchResultsCount[XUSER_MAX_COUNT];
|
||||||
int m_searchResultsCount[XUSER_MAX_COUNT];
|
int m_lastSearchStartTime[XUSER_MAX_COUNT];
|
||||||
int m_lastSearchStartTime[XUSER_MAX_COUNT];
|
|
||||||
|
// The results that will be filled in with the current search
|
||||||
// The results that will be filled in with the current search
|
XSESSION_SEARCHRESULT_HEADER *m_pSearchResults[XUSER_MAX_COUNT];
|
||||||
XSESSION_SEARCHRESULT_HEADER *m_pSearchResults[XUSER_MAX_COUNT];
|
XNQOS *m_pQoSResult[XUSER_MAX_COUNT];
|
||||||
XNQOS *m_pQoSResult[XUSER_MAX_COUNT];
|
|
||||||
|
// The results from the previous search, which are currently displayed in the game
|
||||||
// The results from the previous search, which are currently displayed in the game
|
XSESSION_SEARCHRESULT_HEADER *m_pCurrentSearchResults[XUSER_MAX_COUNT];
|
||||||
XSESSION_SEARCHRESULT_HEADER *m_pCurrentSearchResults[XUSER_MAX_COUNT];
|
XNQOS *m_pCurrentQoSResult[XUSER_MAX_COUNT];
|
||||||
XNQOS *m_pCurrentQoSResult[XUSER_MAX_COUNT];
|
int m_currentSearchResultsCount[XUSER_MAX_COUNT];
|
||||||
int m_currentSearchResultsCount[XUSER_MAX_COUNT];
|
|
||||||
|
int m_lastSearchPad;
|
||||||
int m_lastSearchPad;
|
bool m_bSearchResultsReady;
|
||||||
bool m_bSearchResultsReady;
|
bool m_bSearchPending;
|
||||||
bool m_bSearchPending;
|
LPVOID m_pSearchParam;
|
||||||
LPVOID m_pSearchParam;
|
void (*m_SessionsUpdatedCallback)(LPVOID pParam);
|
||||||
void (*m_SessionsUpdatedCallback)(LPVOID pParam);
|
|
||||||
|
C4JThread* m_SearchingThread;
|
||||||
C4JThread* m_SearchingThread;
|
|
||||||
|
void TickSearch();
|
||||||
void TickSearch();
|
void SearchForGames();
|
||||||
void SearchForGames();
|
static int SearchForGamesThreadProc( void* lpParameter );
|
||||||
static int SearchForGamesThreadProc( void* lpParameter );
|
|
||||||
|
void SetSearchResultsReady(int resultCount = 0);
|
||||||
void SetSearchResultsReady(int resultCount = 0);
|
|
||||||
|
vector<INetworkPlayer *>currentNetworkPlayers;
|
||||||
vector<INetworkPlayer *>currentNetworkPlayers;
|
INetworkPlayer *addNetworkPlayer(IQNetPlayer *pQNetPlayer);
|
||||||
INetworkPlayer *addNetworkPlayer(IQNetPlayer *pQNetPlayer);
|
void removeNetworkPlayer(IQNetPlayer *pQNetPlayer);
|
||||||
void removeNetworkPlayer(IQNetPlayer *pQNetPlayer);
|
static INetworkPlayer *getNetworkPlayer(IQNetPlayer *pQNetPlayer);
|
||||||
static INetworkPlayer *getNetworkPlayer(IQNetPlayer *pQNetPlayer);
|
|
||||||
|
virtual void SetSessionTexturePackParentId( int id );
|
||||||
virtual void SetSessionTexturePackParentId( int id );
|
virtual void SetSessionSubTexturePackId( int id );
|
||||||
virtual void SetSessionSubTexturePackId( int id );
|
virtual void Notify(int ID, ULONG_PTR Param);
|
||||||
virtual void Notify(int ID, ULONG_PTR Param);
|
|
||||||
|
public:
|
||||||
public:
|
virtual vector<FriendSessionInfo *> *GetSessionList(int iPad, int localPlayers, bool partyOnly);
|
||||||
virtual vector<FriendSessionInfo *> *GetSessionList(int iPad, int localPlayers, bool partyOnly);
|
virtual bool GetGameSessionInfo(int iPad, SessionID sessionId,FriendSessionInfo *foundSession);
|
||||||
virtual bool GetGameSessionInfo(int iPad, SessionID sessionId,FriendSessionInfo *foundSession);
|
virtual void SetSessionsUpdatedCallback( void (*SessionsUpdatedCallback)(LPVOID pParam), LPVOID pSearchParam );
|
||||||
virtual void SetSessionsUpdatedCallback( void (*SessionsUpdatedCallback)(LPVOID pParam), LPVOID pSearchParam );
|
virtual void GetFullFriendSessionInfo( FriendSessionInfo *foundSession, void (* FriendSessionUpdatedFn)(bool success, void *pParam), void *pParam );
|
||||||
virtual void GetFullFriendSessionInfo( FriendSessionInfo *foundSession, void (* FriendSessionUpdatedFn)(bool success, void *pParam), void *pParam );
|
virtual void ForceFriendsSessionRefresh();
|
||||||
virtual void ForceFriendsSessionRefresh();
|
|
||||||
|
public:
|
||||||
public:
|
void NotifyPlayerJoined( IQNetPlayer *pQNetPlayer );
|
||||||
void NotifyPlayerJoined( IQNetPlayer *pQNetPlayer );
|
void NotifyPlayerLeaving( IQNetPlayer *pQNetPlayer );
|
||||||
void NotifyPlayerLeaving( IQNetPlayer *pQNetPlayer );
|
|
||||||
|
#ifndef _XBOX
|
||||||
#ifndef _XBOX
|
void FakeLocalPlayerJoined() { NotifyPlayerJoined(m_pIQNet->GetLocalPlayerByUserIndex(0)); }
|
||||||
void FakeLocalPlayerJoined() { NotifyPlayerJoined(m_pIQNet->GetLocalPlayerByUserIndex(0)); }
|
#endif
|
||||||
#endif
|
};
|
||||||
};
|
|
||||||
|
|||||||
@@ -12,8 +12,7 @@ $directories = @(
|
|||||||
"PSVITA_GAME\Common\Media",
|
"PSVITA_GAME\Common\Media",
|
||||||
"PSVITA_GAME\Common\res",
|
"PSVITA_GAME\Common\res",
|
||||||
"PSVITA_GAME\PSVita\Sound",
|
"PSVITA_GAME\PSVita\Sound",
|
||||||
"PSVITA_GAME\PSVita\Tutorial",
|
"PSVITA_GAME\PSVita\Tutorial"
|
||||||
"PSVITA_GAME\savedata"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach ($dir in $directories) {
|
foreach ($dir in $directories) {
|
||||||
|
|||||||
@@ -959,19 +959,11 @@ void UIScene_CreateWorldMenu::checkStateAndStartGame()
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
//ProfileManager.RequestSignInUI(false, false, false, true, false,&CScene_MultiGameCreate::StartGame_SignInReturned, this,ProfileManager.GetPrimaryPad());
|
//ProfileManager.RequestSignInUI(false, false, false, true, false,&CScene_MultiGameCreate::StartGame_SignInReturned, this,ProfileManager.GetPrimaryPad());
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
SignInInfo info;
|
|
||||||
info.Func = &UIScene_CreateWorldMenu::StartGame_SignInReturned;
|
|
||||||
info.lpParam = this;
|
|
||||||
info.requireOnline = m_MoreOptionsParams.bOnlineGame;
|
|
||||||
UIScene_CreateWorldMenu::StartGame_SignInReturned(this, true, ProfileManager.GetPrimaryPad());
|
|
||||||
#else
|
|
||||||
SignInInfo info;
|
SignInInfo info;
|
||||||
info.Func = &UIScene_CreateWorldMenu::StartGame_SignInReturned;
|
info.Func = &UIScene_CreateWorldMenu::StartGame_SignInReturned;
|
||||||
info.lpParam = this;
|
info.lpParam = this;
|
||||||
info.requireOnline = m_MoreOptionsParams.bOnlineGame;
|
info.requireOnline = m_MoreOptionsParams.bOnlineGame;
|
||||||
ui.NavigateToScene(ProfileManager.GetPrimaryPad(),eUIScene_QuadrantSignin,&info);
|
ui.NavigateToScene(ProfileManager.GetPrimaryPad(),eUIScene_QuadrantSignin,&info);
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1350,16 +1342,12 @@ int UIScene_CreateWorldMenu::ConfirmCreateReturned(void *pParam,int iPad,C4JStor
|
|||||||
|
|
||||||
if(isClientSide && app.IsLocalMultiplayerAvailable())
|
if(isClientSide && app.IsLocalMultiplayerAvailable())
|
||||||
{
|
{
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
UIScene_CreateWorldMenu::StartGame_SignInReturned(pClass, true, ProfileManager.GetPrimaryPad());
|
|
||||||
#else
|
|
||||||
//ProfileManager.RequestSignInUI(false, false, false, true, false,&UIScene_CreateWorldMenu::StartGame_SignInReturned, pClass,ProfileManager.GetPrimaryPad());
|
//ProfileManager.RequestSignInUI(false, false, false, true, false,&UIScene_CreateWorldMenu::StartGame_SignInReturned, pClass,ProfileManager.GetPrimaryPad());
|
||||||
SignInInfo info;
|
SignInInfo info;
|
||||||
info.Func = &UIScene_CreateWorldMenu::StartGame_SignInReturned;
|
info.Func = &UIScene_CreateWorldMenu::StartGame_SignInReturned;
|
||||||
info.lpParam = pClass;
|
info.lpParam = pClass;
|
||||||
info.requireOnline = pClass->m_MoreOptionsParams.bOnlineGame;
|
info.requireOnline = pClass->m_MoreOptionsParams.bOnlineGame;
|
||||||
ui.NavigateToScene(ProfileManager.GetPrimaryPad(),eUIScene_QuadrantSignin,&info);
|
ui.NavigateToScene(ProfileManager.GetPrimaryPad(),eUIScene_QuadrantSignin,&info);
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
#include "..\..\MinecraftServer.h"
|
#include "..\..\MinecraftServer.h"
|
||||||
#include "..\..\..\Minecraft.World\net.minecraft.world.level.h"
|
#include "..\..\..\Minecraft.World\net.minecraft.world.level.h"
|
||||||
#include "..\..\..\Minecraft.World\net.minecraft.world.h"
|
#include "..\..\..\Minecraft.World\net.minecraft.world.h"
|
||||||
#include "..\..\Common\Network\NetworkSocketLayer.h"
|
#include "..\..\Common\Network\NetworkSocketLayer.h"
|
||||||
|
|
||||||
#define UPDATE_PLAYERS_TIMER_ID 0
|
#define UPDATE_PLAYERS_TIMER_ID 0
|
||||||
#define UPDATE_PLAYERS_TIMER_TIME 30000
|
#define UPDATE_PLAYERS_TIMER_TIME 30000
|
||||||
@@ -368,7 +368,7 @@ void UIScene_JoinMenu::checkPrivilegeCallback(LPVOID lpParam, bool hasPrivilege,
|
|||||||
|
|
||||||
void UIScene_JoinMenu::StartSharedLaunchFlow()
|
void UIScene_JoinMenu::StartSharedLaunchFlow()
|
||||||
{
|
{
|
||||||
const bool bManualJoin = (g_MultiplayerJoin == true);
|
const bool bManualJoin = (g_MultiplayerJoin == true);
|
||||||
if (bManualJoin)
|
if (bManualJoin)
|
||||||
{
|
{
|
||||||
JoinGame(this);
|
JoinGame(this);
|
||||||
@@ -431,7 +431,7 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
|
|||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const bool bManualJoin = (g_MultiplayerJoin == true);
|
const bool bManualJoin = (g_MultiplayerJoin == true);
|
||||||
|
|
||||||
DWORD dwSignedInUsers = 0;
|
DWORD dwSignedInUsers = 0;
|
||||||
bool noPrivileges = false;
|
bool noPrivileges = false;
|
||||||
@@ -600,21 +600,6 @@ void UIScene_JoinMenu::JoinGame(UIScene_JoinMenu* pClass)
|
|||||||
ui.NavigateToHomeMenu();
|
ui.NavigateToHomeMenu();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
LoadingInputParams *loadingParams = new LoadingInputParams();
|
|
||||||
loadingParams->func = &CGameNetworkManager::RunNetworkGameThreadProc;
|
|
||||||
loadingParams->lpParam = NULL;
|
|
||||||
|
|
||||||
UIFullscreenProgressCompletionData *completionData = new UIFullscreenProgressCompletionData();
|
|
||||||
completionData->bShowBackground = TRUE;
|
|
||||||
completionData->bShowLogo = TRUE;
|
|
||||||
completionData->type = e_ProgressCompletion_CloseAllPlayersUIScenes;
|
|
||||||
completionData->iPad = DEFAULT_XUI_MENU_USER;
|
|
||||||
loadingParams->completionData = completionData;
|
|
||||||
|
|
||||||
ui.NavigateToScene(ProfileManager.GetPrimaryPad(), eUIScene_FullscreenProgress, loadingParams);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -877,7 +877,6 @@ void UIScene_LoadMenu::StartSharedLaunchFlow()
|
|||||||
app.SetGameHostOption(eGameHostOption_DisableSaving, m_MoreOptionsParams.bDisableSaving?1:0);
|
app.SetGameHostOption(eGameHostOption_DisableSaving, m_MoreOptionsParams.bDisableSaving?1:0);
|
||||||
StorageManager.SetSaveDisabled(m_MoreOptionsParams.bDisableSaving);
|
StorageManager.SetSaveDisabled(m_MoreOptionsParams.bDisableSaving);
|
||||||
|
|
||||||
#ifdef _LARGE_WORLDS
|
|
||||||
int newWorldSize = 0;
|
int newWorldSize = 0;
|
||||||
int newHellScale = 0;
|
int newHellScale = 0;
|
||||||
switch(m_MoreOptionsParams.newWorldSize)
|
switch(m_MoreOptionsParams.newWorldSize)
|
||||||
@@ -910,7 +909,6 @@ void UIScene_LoadMenu::StartSharedLaunchFlow()
|
|||||||
app.SetGameNewWorldSize(newWorldSize, bUseMoat);
|
app.SetGameNewWorldSize(newWorldSize, bUseMoat);
|
||||||
app.SetGameNewHellScale(newHellScale);
|
app.SetGameNewHellScale(newHellScale);
|
||||||
app.SetGameHostOption(eGameHostOption_WorldSize, m_MoreOptionsParams.newWorldSize);
|
app.SetGameHostOption(eGameHostOption_WorldSize, m_MoreOptionsParams.newWorldSize);
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -1446,12 +1444,7 @@ int UIScene_LoadMenu::LoadDataComplete(void *pParam)
|
|||||||
#endif
|
#endif
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
DWORD dwLocalUsersMask = CGameNetworkManager::GetLocalPlayerMask(ProfileManager.GetPrimaryPad());
|
|
||||||
StartGameFromSave(pClass, dwLocalUsersMask);
|
|
||||||
#else
|
|
||||||
pClass->m_bRequestQuadrantSignin = true;
|
pClass->m_bRequestQuadrantSignin = true;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1597,7 +1597,7 @@ void UIScene_LoadOrJoinMenu::LoadLevelGen(LevelGenerationOptions *levelGen)
|
|||||||
bool isClientSide = false;
|
bool isClientSide = false;
|
||||||
bool isPrivate = false;
|
bool isPrivate = false;
|
||||||
// TODO int maxPlayers = MINECRAFT_NET_MAX_PLAYERS;
|
// TODO int maxPlayers = MINECRAFT_NET_MAX_PLAYERS;
|
||||||
int maxPlayers = MINECRAFT_NET_MAX_PLAYERS;
|
int maxPlayers = 8;
|
||||||
|
|
||||||
if( app.GetTutorialMode() )
|
if( app.GetTutorialMode() )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
#include "UIScene_MainMenu.h"
|
#include "UIScene_MainMenu.h"
|
||||||
#ifdef __ORBIS__
|
#ifdef __ORBIS__
|
||||||
#include <error_dialog.h>
|
#include <error_dialog.h>
|
||||||
#include "..\..\Common\Network\NetworkSocketLayer.h"
|
#include "..\..\Common\Network\NetworkSocketLayer.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Random *UIScene_MainMenu::random = new Random();
|
Random *UIScene_MainMenu::random = new Random();
|
||||||
@@ -319,7 +319,7 @@ void UIScene_MainMenu::handlePress(F64 controlId, F64 childId)
|
|||||||
//CD - Added for audio
|
//CD - Added for audio
|
||||||
ui.PlayUISFX(eSFX_Press);
|
ui.PlayUISFX(eSFX_Press);
|
||||||
|
|
||||||
if(g_MultiplayerJoin)
|
if(g_MultiplayerJoin)
|
||||||
{
|
{
|
||||||
// request only completes after the platform network timeout.
|
// request only completes after the platform network timeout.
|
||||||
// this needs to be done before hand or else the PS4 crashes ill need to look more into this
|
// this needs to be done before hand or else the PS4 crashes ill need to look more into this
|
||||||
@@ -386,10 +386,6 @@ void UIScene_MainMenu::handlePress(F64 controlId, F64 childId)
|
|||||||
ui.NavigateToScene(primaryPad,eUIScene_TrialExitUpsell);
|
ui.NavigateToScene(primaryPad,eUIScene_TrialExitUpsell);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#elif defined _WINDOWS64
|
|
||||||
case eControl_Exit:
|
|
||||||
app.ExitGame();
|
|
||||||
break;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef _DURANGO
|
#ifdef _DURANGO
|
||||||
@@ -1112,7 +1108,7 @@ void UIScene_MainMenu::RefreshChatAndContentRestrictionsReturned_PlayGame(void *
|
|||||||
int primaryPad = ProfileManager.GetPrimaryPad();
|
int primaryPad = ProfileManager.GetPrimaryPad();
|
||||||
|
|
||||||
UIScene_MainMenu* pClass = (UIScene_MainMenu*)pParam;
|
UIScene_MainMenu* pClass = (UIScene_MainMenu*)pParam;
|
||||||
const bool bManualJoin = (g_MultiplayerJoin == true);
|
const bool bManualJoin = (g_MultiplayerJoin == true);
|
||||||
if (bManualJoin)
|
if (bManualJoin)
|
||||||
{
|
{
|
||||||
CreateLoad_SignInReturned(pClass, true, primaryPad);
|
CreateLoad_SignInReturned(pClass, true, primaryPad);
|
||||||
|
|||||||
@@ -76,19 +76,7 @@ HRESULT CScene_LoadGameSettings::OnInit( XUIMessageInit* pInitData, BOOL& bHandl
|
|||||||
XuiControlSetText(m_ButtonLoad,app.GetString(IDS_LOAD));
|
XuiControlSetText(m_ButtonLoad,app.GetString(IDS_LOAD));
|
||||||
XuiControlSetText(m_pTexturePacksList->m_hObj,app.GetString(IDS_DLC_MENU_TEXTUREPACKS));
|
XuiControlSetText(m_pTexturePacksList->m_hObj,app.GetString(IDS_DLC_MENU_TEXTUREPACKS));
|
||||||
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
// 4J-PB - read the settings for the online flag. We'll only save this setting if the user changed it.
|
// 4J-PB - read the settings for the online flag. We'll only save this setting if the user changed it.
|
||||||
bool bGameSetting_Online=(app.GetGameSettings(m_iPad,eGameSetting_Online)!=0);
|
bool bGameSetting_Online=(app.GetGameSettings(m_iPad,eGameSetting_Online)!=0);
|
||||||
m_MoreOptionsParams.bOnlineSettingChangedBySystem=false;
|
m_MoreOptionsParams.bOnlineSettingChangedBySystem=false;
|
||||||
@@ -753,10 +741,7 @@ HRESULT CScene_LoadGameSettings::OnTimer( XUIMessageTimer *pTimer, BOOL& bHandle
|
|||||||
{
|
{
|
||||||
case GAME_CREATE_ONLINE_TIMER_ID:
|
case GAME_CREATE_ONLINE_TIMER_ID:
|
||||||
{
|
{
|
||||||
bool bMultiplayerAllowed = true;
|
bool bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if(bMultiplayerAllowed != m_bMultiplayerAllowed)
|
if(bMultiplayerAllowed != m_bMultiplayerAllowed)
|
||||||
{
|
{
|
||||||
@@ -1030,9 +1015,7 @@ int CScene_LoadGameSettings::StartGame_SignInReturned(void *pParam,bool bContinu
|
|||||||
{
|
{
|
||||||
if(ProfileManager.IsSignedIn(index) )
|
if(ProfileManager.IsSignedIn(index) )
|
||||||
{
|
{
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
||||||
#endif
|
|
||||||
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
|
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -67,19 +67,7 @@ HRESULT CScene_MultiGameCreate::OnInit( XUIMessageInit* pInitData, BOOL& bHandle
|
|||||||
m_iPad=params->iPad;
|
m_iPad=params->iPad;
|
||||||
delete params;
|
delete params;
|
||||||
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
// 4J-PB - read the settings for the online flag. We'll only save this setting if the user changed it.
|
// 4J-PB - read the settings for the online flag. We'll only save this setting if the user changed it.
|
||||||
bool bGameSetting_Online=(app.GetGameSettings(m_iPad,eGameSetting_Online)!=0);
|
bool bGameSetting_Online=(app.GetGameSettings(m_iPad,eGameSetting_Online)!=0);
|
||||||
m_MoreOptionsParams.bOnlineSettingChangedBySystem=false;
|
m_MoreOptionsParams.bOnlineSettingChangedBySystem=false;
|
||||||
@@ -675,10 +663,7 @@ HRESULT CScene_MultiGameCreate::OnTimer( XUIMessageTimer *pTimer, BOOL& bHandled
|
|||||||
|
|
||||||
case GAME_CREATE_ONLINE_TIMER_ID:
|
case GAME_CREATE_ONLINE_TIMER_ID:
|
||||||
{
|
{
|
||||||
bool bMultiplayerAllowed = true;
|
bool bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if(bMultiplayerAllowed != m_bMultiplayerAllowed)
|
if(bMultiplayerAllowed != m_bMultiplayerAllowed)
|
||||||
{
|
{
|
||||||
@@ -839,9 +824,7 @@ int CScene_MultiGameCreate::StartGame_SignInReturned(void *pParam,bool bContinue
|
|||||||
{
|
{
|
||||||
if(ProfileManager.IsSignedIn(index) )
|
if(ProfileManager.IsSignedIn(index) )
|
||||||
{
|
{
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
||||||
#endif
|
|
||||||
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
|
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -274,9 +274,7 @@ void CScene_MultiGameInfo::JoinGame(CScene_MultiGameInfo* pClass)
|
|||||||
if(ProfileManager.IsSignedIn(index) )
|
if(ProfileManager.IsSignedIn(index) )
|
||||||
{
|
{
|
||||||
++dwSignedInUsers;
|
++dwSignedInUsers;
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
if( !ProfileManager.AllowedToPlayMultiplayer(index) ) noPrivileges = true;
|
||||||
#endif
|
|
||||||
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
|
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -286,9 +284,7 @@ void CScene_MultiGameInfo::JoinGame(CScene_MultiGameInfo* pClass)
|
|||||||
if(ProfileManager.IsSignedIn(ProfileManager.GetPrimaryPad()) )
|
if(ProfileManager.IsSignedIn(ProfileManager.GetPrimaryPad()) )
|
||||||
{
|
{
|
||||||
++dwSignedInUsers;
|
++dwSignedInUsers;
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
if( !ProfileManager.AllowedToPlayMultiplayer(ProfileManager.GetPrimaryPad()) ) noPrivileges = true;
|
if( !ProfileManager.AllowedToPlayMultiplayer(ProfileManager.GetPrimaryPad()) ) noPrivileges = true;
|
||||||
#endif
|
|
||||||
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(ProfileManager.GetPrimaryPad());
|
dwLocalUsersMask |= CGameNetworkManager::GetLocalPlayerMask(ProfileManager.GetPrimaryPad());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -352,21 +348,6 @@ void CScene_MultiGameInfo::JoinGame(CScene_MultiGameInfo* pClass)
|
|||||||
app.NavigateToHomeMenu();
|
app.NavigateToHomeMenu();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
LoadingInputParams *loadingParams = new LoadingInputParams();
|
|
||||||
loadingParams->func = &CGameNetworkManager::RunNetworkGameThreadProc;
|
|
||||||
loadingParams->lpParam = NULL;
|
|
||||||
|
|
||||||
UIFullscreenProgressCompletionData *completionData = new UIFullscreenProgressCompletionData();
|
|
||||||
completionData->bShowBackground = TRUE;
|
|
||||||
completionData->bShowLogo = TRUE;
|
|
||||||
completionData->type = e_ProgressCompletion_CloseAllPlayersUIScenes;
|
|
||||||
completionData->iPad = DEFAULT_XUI_MENU_USER;
|
|
||||||
loadingParams->completionData = completionData;
|
|
||||||
|
|
||||||
app.NavigateToScene(ProfileManager.GetPrimaryPad(), eUIScene_FullscreenProgress, loadingParams);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -73,11 +73,7 @@ HRESULT CScene_MultiGameJoinLoad::OnInit( XUIMessageInit* pInitData, BOOL& bHand
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
m_initData= new JoinMenuInitData();
|
m_initData= new JoinMenuInitData();
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XPARTY_USER_LIST partyList;
|
XPARTY_USER_LIST partyList;
|
||||||
|
|
||||||
@@ -772,11 +768,7 @@ HRESULT CScene_MultiGameJoinLoad::OnNavReturn(HXUIOBJ hSceneFrom,BOOL& rfHandled
|
|||||||
// start the texture pack timer again
|
// start the texture pack timer again
|
||||||
XuiSetTimer(m_hObj,CHECKFORAVAILABLETEXTUREPACKS_TIMER_ID,CHECKFORAVAILABLETEXTUREPACKS_TIMER_TIME);
|
XuiSetTimer(m_hObj,CHECKFORAVAILABLETEXTUREPACKS_TIMER_ID,CHECKFORAVAILABLETEXTUREPACKS_TIMER_TIME);
|
||||||
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
m_bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
|
||||||
#else
|
|
||||||
m_bMultiplayerAllowed = true;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// re-enable button presses
|
// re-enable button presses
|
||||||
m_bIgnoreInput=false;
|
m_bIgnoreInput=false;
|
||||||
@@ -1651,10 +1643,7 @@ HRESULT CScene_MultiGameJoinLoad::OnTimer( XUIMessageTimer *pTimer, BOOL& bHandl
|
|||||||
m_bInParty=false;
|
m_bInParty=false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool bMultiplayerAllowed = true;
|
bool bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
bMultiplayerAllowed = ProfileManager.IsSignedInLive( m_iPad ) && ProfileManager.AllowedToPlayMultiplayer(m_iPad);
|
|
||||||
#endif
|
|
||||||
if(bMultiplayerAllowed != m_bMultiplayerAllowed)
|
if(bMultiplayerAllowed != m_bMultiplayerAllowed)
|
||||||
{
|
{
|
||||||
if( bMultiplayerAllowed )
|
if( bMultiplayerAllowed )
|
||||||
|
|||||||
@@ -145,11 +145,10 @@ void EnderDragonRenderer::render(shared_ptr<Entity> _mob, double x, double y, do
|
|||||||
int steps = 8;
|
int steps = 8;
|
||||||
for (int i = 0; i <= steps; i++)
|
for (int i = 0; i <= steps; i++)
|
||||||
{
|
{
|
||||||
int idx = i % steps;
|
double d=i % steps * PI * 2 / steps;
|
||||||
double d = idx * PI * 2 / steps;
|
float s = sin(i % steps * PI * 2 / steps) * 0.75f;
|
||||||
float s = sin(d) * 0.75f;
|
float c = cos(i % steps * PI * 2 / steps) * 0.75f;
|
||||||
float c = cos(d) * 0.75f;
|
float u = i % steps * 1.0f / steps;
|
||||||
float u = idx * 1.0f / steps;
|
|
||||||
//t->color(0x000000);
|
//t->color(0x000000);
|
||||||
t->vertexUV(s * 0.2f, c * 0.2f, 0, u, v1);
|
t->vertexUV(s * 0.2f, c * 0.2f, 0, u, v1);
|
||||||
//t->color(0xffffff);
|
//t->color(0xffffff);
|
||||||
|
|||||||
@@ -94,17 +94,6 @@ void EntityRenderDispatcher::staticCtor()
|
|||||||
instance = new EntityRenderDispatcher();
|
instance = new EntityRenderDispatcher();
|
||||||
}
|
}
|
||||||
|
|
||||||
EntityRenderDispatcher::~EntityRenderDispatcher()
|
|
||||||
{
|
|
||||||
AUTO_VAR(itEnd, renderers.end());
|
|
||||||
for( classToRendererMap::iterator it = renderers.begin(); it != itEnd; it++ )
|
|
||||||
{
|
|
||||||
delete it->second;
|
|
||||||
it->second = NULL;
|
|
||||||
}
|
|
||||||
renderers.clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
EntityRenderDispatcher::EntityRenderDispatcher()
|
EntityRenderDispatcher::EntityRenderDispatcher()
|
||||||
{
|
{
|
||||||
glEnable(GL_LIGHTING);
|
glEnable(GL_LIGHTING);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "EntityRenderer.h"
|
#include "EntityRenderer.h"
|
||||||
|
#include "..\Minecraft.World\Entity.h"
|
||||||
#include "..\Minecraft.World\JavaIntHash.h"
|
#include "..\Minecraft.World\JavaIntHash.h"
|
||||||
class Entity;
|
|
||||||
class font;
|
class font;
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
@@ -37,7 +37,6 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
EntityRenderDispatcher();
|
EntityRenderDispatcher();
|
||||||
~EntityRenderDispatcher();
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
EntityRenderer *getRenderer(eINSTANCEOF e);
|
EntityRenderer *getRenderer(eINSTANCEOF e);
|
||||||
|
|||||||
@@ -78,7 +78,6 @@ HRESULT XPartyGetUserList(XPARTY_USER_LIST *pUserList) { return S_OK; }
|
|||||||
DWORD XContentGetThumbnail(DWORD dwUserIndex, const XCONTENT_DATA *pContentData, PBYTE pbThumbnail, PDWORD pcbThumbnail, PXOVERLAPPED *pOverlapped) { return 0; }
|
DWORD XContentGetThumbnail(DWORD dwUserIndex, const XCONTENT_DATA *pContentData, PBYTE pbThumbnail, PDWORD pcbThumbnail, PXOVERLAPPED *pOverlapped) { return 0; }
|
||||||
void XShowAchievementsUI(int i) {}
|
void XShowAchievementsUI(int i) {}
|
||||||
DWORD XBackgroundDownloadSetMode(XBACKGROUND_DOWNLOAD_MODE Mode) { return 0; }
|
DWORD XBackgroundDownloadSetMode(XBACKGROUND_DOWNLOAD_MODE Mode) { return 0; }
|
||||||
DWORD XamBackgroundDownloadSetMode(XBACKGROUND_DOWNLOAD_MODE Mode) { return 0; }
|
|
||||||
|
|
||||||
#ifndef _DURANGO
|
#ifndef _DURANGO
|
||||||
void PIXAddNamedCounter(int a, char *b, ...) {}
|
void PIXAddNamedCounter(int a, char *b, ...) {}
|
||||||
@@ -355,7 +354,7 @@ DWORD XEnableGuestSignin(BOOL fEnable) { return 0; }
|
|||||||
/////////////////////////////////////////////// Profile library
|
/////////////////////////////////////////////// Profile library
|
||||||
#ifdef _WINDOWS64
|
#ifdef _WINDOWS64
|
||||||
static void *profileData[4];
|
static void *profileData[4];
|
||||||
static bool s_bProfileIsFullVersion = true;
|
static bool s_bProfileIsFullVersion;
|
||||||
void C_4JProfile::Initialise( DWORD dwTitleID,
|
void C_4JProfile::Initialise( DWORD dwTitleID,
|
||||||
DWORD dwOfferID,
|
DWORD dwOfferID,
|
||||||
unsigned short usProfileVersion,
|
unsigned short usProfileVersion,
|
||||||
@@ -374,7 +373,6 @@ void C_4JProfile::Initialise( DWORD dwTitleID,
|
|||||||
GAME_SETTINGS *pGameSettings = (GAME_SETTINGS *)profileData[i];
|
GAME_SETTINGS *pGameSettings = (GAME_SETTINGS *)profileData[i];
|
||||||
pGameSettings->ucMenuSensitivity=100; //eGameSetting_Sensitivity_InMenu
|
pGameSettings->ucMenuSensitivity=100; //eGameSetting_Sensitivity_InMenu
|
||||||
pGameSettings->ucInterfaceOpacity=80; //eGameSetting_Sensitivity_InMenu
|
pGameSettings->ucInterfaceOpacity=80; //eGameSetting_Sensitivity_InMenu
|
||||||
pGameSettings->ucGamma=100; //eGameSetting_Gamma
|
|
||||||
pGameSettings->usBitmaskValues|=0x0200; //eGameSetting_DisplaySplitscreenGamertags - on
|
pGameSettings->usBitmaskValues|=0x0200; //eGameSetting_DisplaySplitscreenGamertags - on
|
||||||
pGameSettings->usBitmaskValues|=0x0400; //eGameSetting_Hints - on
|
pGameSettings->usBitmaskValues|=0x0400; //eGameSetting_Hints - on
|
||||||
pGameSettings->usBitmaskValues|=0x1000; //eGameSetting_Autosave - 2
|
pGameSettings->usBitmaskValues|=0x1000; //eGameSetting_Autosave - 2
|
||||||
@@ -438,95 +436,7 @@ DWORD IQNetPlayer::GetCurrentRtt() { return 0; }
|
|||||||
bool IQNetPlayer::IsHost() { return m_isHostPlayer; }
|
bool IQNetPlayer::IsHost() { return m_isHostPlayer; }
|
||||||
bool IQNetPlayer::IsGuest() { return false; }
|
bool IQNetPlayer::IsGuest() { return false; }
|
||||||
bool IQNetPlayer::IsLocal() { return !m_isRemote; }
|
bool IQNetPlayer::IsLocal() { return !m_isRemote; }
|
||||||
static void Win64_BuildSplitName(int iPad, char *outName, int outSize);
|
PlayerUID IQNetPlayer::GetXuid() { return (PlayerUID)(0xe000d45248242f2e + m_smallId); }
|
||||||
|
|
||||||
PlayerUID IQNetPlayer::GetXuid()
|
|
||||||
{
|
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
if (!m_isRemote)
|
|
||||||
{
|
|
||||||
int idx = (int)(this - &IQNet::m_player[0]);
|
|
||||||
if (idx == 0)
|
|
||||||
{
|
|
||||||
extern char g_Win64Username[17];
|
|
||||||
return Win64_UsernameToXuid(g_Win64Username);
|
|
||||||
}
|
|
||||||
if (idx > 0 && idx < XUSER_MAX_COUNT)
|
|
||||||
{
|
|
||||||
char splitName[32];
|
|
||||||
Win64_BuildSplitName(idx, splitName, sizeof(splitName));
|
|
||||||
return Win64_UsernameToXuid(splitName);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
return (PlayerUID)(0xe000d45248242f2e + m_smallId);
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerUID Win64_UsernameToXuid(const char* username)
|
|
||||||
{
|
|
||||||
uint64_t hash = 14695981039346656037ULL;
|
|
||||||
for (const char* p = username; *p; ++p)
|
|
||||||
{
|
|
||||||
hash ^= (uint64_t)(unsigned char)(*p);
|
|
||||||
hash *= 1099511628211ULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
const uint64_t WIN64_XUID_BASE = 0xe000d45248242f2e;
|
|
||||||
if (hash >= WIN64_XUID_BASE && hash <= WIN64_XUID_BASE + MINECRAFT_NET_MAX_PLAYERS)
|
|
||||||
hash = WIN64_XUID_BASE + MINECRAFT_NET_MAX_PLAYERS + 1;
|
|
||||||
if (hash == 0)
|
|
||||||
hash = 1;
|
|
||||||
return (PlayerUID)hash;
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerUID Win64_UsernameToXuid(const wchar_t* username)
|
|
||||||
{
|
|
||||||
char narrow[64];
|
|
||||||
int i = 0;
|
|
||||||
for (; username[i] && i < 63; ++i)
|
|
||||||
narrow[i] = (char)(unsigned char)(username[i] & 0xFF);
|
|
||||||
narrow[i] = 0;
|
|
||||||
return Win64_UsernameToXuid(narrow);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void Win64_BuildSplitName(int iPad, char *outName, int outSize)
|
|
||||||
{
|
|
||||||
extern char g_Win64Username[17];
|
|
||||||
char candidate[32];
|
|
||||||
sprintf(candidate, "%s_%d", g_Win64Username, iPad);
|
|
||||||
for (DWORD i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++)
|
|
||||||
{
|
|
||||||
if (!IQNet::m_player[i].m_isRemote) continue;
|
|
||||||
if (IQNet::m_player[i].m_gamertag[0] == 0) continue;
|
|
||||||
char remoteName[64];
|
|
||||||
int j = 0;
|
|
||||||
for (; IQNet::m_player[i].m_gamertag[j] && j < 63; ++j)
|
|
||||||
remoteName[j] = (char)(unsigned char)(IQNet::m_player[i].m_gamertag[j] & 0xFF);
|
|
||||||
remoteName[j] = 0;
|
|
||||||
#if defined(_MSC_VER)
|
|
||||||
if (_stricmp(candidate, remoteName) == 0)
|
|
||||||
#else
|
|
||||||
if (strcasecmp(candidate, remoteName) == 0)
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
sprintf(candidate, "%s_%d_L", g_Win64Username, iPad);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
strncpy(outName, candidate, outSize - 1);
|
|
||||||
outName[outSize - 1] = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void Win64_BuildSplitNameW(int iPad, wchar_t *outName, int outSize)
|
|
||||||
{
|
|
||||||
char narrow[32];
|
|
||||||
Win64_BuildSplitName(iPad, narrow, sizeof(narrow));
|
|
||||||
for (int i = 0; i < outSize - 1 && narrow[i]; ++i)
|
|
||||||
{
|
|
||||||
outName[i] = (wchar_t)(unsigned char)narrow[i];
|
|
||||||
outName[i + 1] = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
LPCWSTR IQNetPlayer::GetGamertag() { return m_gamertag; }
|
LPCWSTR IQNetPlayer::GetGamertag() { return m_gamertag; }
|
||||||
int IQNetPlayer::GetSessionIndex() { return m_smallId; }
|
int IQNetPlayer::GetSessionIndex() { return m_smallId; }
|
||||||
bool IQNetPlayer::IsTalking() { return false; }
|
bool IQNetPlayer::IsTalking() { return false; }
|
||||||
@@ -559,30 +469,15 @@ void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost,
|
|||||||
|
|
||||||
static bool Win64_IsActivePlayer(IQNetPlayer *p, DWORD index);
|
static bool Win64_IsActivePlayer(IQNetPlayer *p, DWORD index);
|
||||||
|
|
||||||
HRESULT IQNet::AddLocalPlayerByUserIndex(DWORD dwUserIndex)
|
HRESULT IQNet::AddLocalPlayerByUserIndex(DWORD dwUserIndex){ return S_OK; }
|
||||||
{
|
|
||||||
// no E_FAIL on PS3.
|
|
||||||
if (dwUserIndex >= MINECRAFT_NET_MAX_PLAYERS) return (HRESULT)0x80004005L;
|
|
||||||
m_player[dwUserIndex].m_isRemote = false;
|
|
||||||
m_player[dwUserIndex].m_smallId = (BYTE)dwUserIndex;
|
|
||||||
if (dwUserIndex > 0)
|
|
||||||
{
|
|
||||||
wchar_t splitNameW[32];
|
|
||||||
Win64_BuildSplitNameW((int)dwUserIndex, splitNameW, 32);
|
|
||||||
wcsncpy(m_player[dwUserIndex].m_gamertag, splitNameW, 32 - 1);
|
|
||||||
m_player[dwUserIndex].m_gamertag[32 - 1] = 0;
|
|
||||||
}
|
|
||||||
if (dwUserIndex >= (DWORD)s_playerCount)
|
|
||||||
s_playerCount = dwUserIndex + 1;
|
|
||||||
return S_OK;
|
|
||||||
}
|
|
||||||
IQNetPlayer *IQNet::GetHostPlayer() { return &m_player[0]; }
|
IQNetPlayer *IQNet::GetHostPlayer() { return &m_player[0]; }
|
||||||
IQNetPlayer *IQNet::GetLocalPlayerByUserIndex(DWORD dwUserIndex)
|
IQNetPlayer *IQNet::GetLocalPlayerByUserIndex(DWORD dwUserIndex)
|
||||||
{
|
{
|
||||||
if (s_isHosting)
|
if (s_isHosting)
|
||||||
{
|
{
|
||||||
if (dwUserIndex < MINECRAFT_NET_MAX_PLAYERS &&
|
if (dwUserIndex < MINECRAFT_NET_MAX_PLAYERS &&
|
||||||
!m_player[dwUserIndex].m_isRemote)
|
!m_player[dwUserIndex].m_isRemote &&
|
||||||
|
Win64_IsActivePlayer(&m_player[dwUserIndex], dwUserIndex))
|
||||||
return &m_player[dwUserIndex];
|
return &m_player[dwUserIndex];
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -598,8 +493,7 @@ IQNetPlayer *IQNet::GetLocalPlayerByUserIndex(DWORD dwUserIndex)
|
|||||||
static bool Win64_IsActivePlayer(IQNetPlayer *p, DWORD index)
|
static bool Win64_IsActivePlayer(IQNetPlayer *p, DWORD index)
|
||||||
{
|
{
|
||||||
if (index == 0) return true;
|
if (index == 0) return true;
|
||||||
if (p->GetCustomDataValue() != 0) return true;
|
return (p->GetCustomDataValue() != 0);
|
||||||
return (p->m_isRemote && p->m_gamertag[0] != 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
IQNetPlayer *IQNet::GetPlayerByIndex(DWORD dwPlayerIndex)
|
IQNetPlayer *IQNet::GetPlayerByIndex(DWORD dwPlayerIndex)
|
||||||
@@ -680,7 +574,7 @@ void C_4JProfile::SetTrialTextStringTable(CXuiStringTable *pStringTable,int i
|
|||||||
void C_4JProfile::SetTrialAwardText(eAwardType AwardType,int iTitle,int iText) {}
|
void C_4JProfile::SetTrialAwardText(eAwardType AwardType,int iTitle,int iText) {}
|
||||||
int C_4JProfile::GetLockedProfile() { return 0; }
|
int C_4JProfile::GetLockedProfile() { return 0; }
|
||||||
void C_4JProfile::SetLockedProfile(int iProf) {}
|
void C_4JProfile::SetLockedProfile(int iProf) {}
|
||||||
bool C_4JProfile::IsSignedIn(int iQuadrant) { return (iQuadrant >= 0 && iQuadrant < XUSER_MAX_COUNT); }
|
bool C_4JProfile::IsSignedIn(int iQuadrant) { return ( iQuadrant == 0); }
|
||||||
bool C_4JProfile::IsSignedInLive(int iProf) { return true; }
|
bool C_4JProfile::IsSignedInLive(int iProf) { return true; }
|
||||||
bool C_4JProfile::IsGuest(int iQuadrant) { return false; }
|
bool C_4JProfile::IsGuest(int iQuadrant) { return false; }
|
||||||
UINT C_4JProfile::RequestSignInUI(bool bFromInvite,bool bLocalGame,bool bNoGuestsAllowed,bool bMultiplayerSignIn,bool bAddUser, int( *Func)(LPVOID,const bool, const int iPad),LPVOID lpParam,int iQuadrant) { return 0; }
|
UINT C_4JProfile::RequestSignInUI(bool bFromInvite,bool bLocalGame,bool bNoGuestsAllowed,bool bMultiplayerSignIn,bool bAddUser, int( *Func)(LPVOID,const bool, const int iPad),LPVOID lpParam,int iQuadrant) { return 0; }
|
||||||
@@ -690,21 +584,16 @@ void C_4JProfile::SetPrimaryPlayerChanged(bool bVal) {}
|
|||||||
bool C_4JProfile::QuerySigninStatus(void) { return true; }
|
bool C_4JProfile::QuerySigninStatus(void) { return true; }
|
||||||
void C_4JProfile::GetXUID(int iPad, PlayerUID *pXuid,bool bOnlineXuid)
|
void C_4JProfile::GetXUID(int iPad, PlayerUID *pXuid,bool bOnlineXuid)
|
||||||
{
|
{
|
||||||
if (iPad == 0)
|
if (iPad != 0)
|
||||||
{
|
{
|
||||||
extern char g_Win64Username[17];
|
// previously INVALID_XUID
|
||||||
*pXuid = Win64_UsernameToXuid(g_Win64Username);
|
*pXuid = 0;
|
||||||
}
|
return;
|
||||||
else if (iPad > 0 && iPad < XUSER_MAX_COUNT)
|
|
||||||
{
|
|
||||||
char splitName[32];
|
|
||||||
Win64_BuildSplitName(iPad, splitName, sizeof(splitName));
|
|
||||||
*pXuid = Win64_UsernameToXuid(splitName);
|
|
||||||
}
|
}
|
||||||
|
if (IQNet::s_isHosting)
|
||||||
|
*pXuid = 0xe000d45248242f2e;
|
||||||
else
|
else
|
||||||
{
|
*pXuid = 0xe000d45248242f2e + NetworkSocketLayer::GetLocalSmallId();
|
||||||
*pXuid = INVALID_XUID;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
BOOL C_4JProfile::AreXUIDSEqual(PlayerUID xuid1,PlayerUID xuid2) { return xuid1 == xuid2; }
|
BOOL C_4JProfile::AreXUIDSEqual(PlayerUID xuid1,PlayerUID xuid2) { return xuid1 == xuid2; }
|
||||||
BOOL C_4JProfile::XUIDIsGuest(PlayerUID xuid) { return false; }
|
BOOL C_4JProfile::XUIDIsGuest(PlayerUID xuid) { return false; }
|
||||||
@@ -733,30 +622,8 @@ char fakeGamerTag[32] = "PlayerName";
|
|||||||
void SetFakeGamertag(char *name){ strcpy_s(fakeGamerTag, name); }
|
void SetFakeGamertag(char *name){ strcpy_s(fakeGamerTag, name); }
|
||||||
char* C_4JProfile::GetGamertag(int iPad){ return fakeGamerTag; }
|
char* C_4JProfile::GetGamertag(int iPad){ return fakeGamerTag; }
|
||||||
#else
|
#else
|
||||||
static char s_win64SplitNames[4][32];
|
char* C_4JProfile::GetGamertag(int iPad){ extern char g_Win64Username[17]; return g_Win64Username; }
|
||||||
char* C_4JProfile::GetGamertag(int iPad)
|
wstring C_4JProfile::GetDisplayName(int iPad){ extern wchar_t g_Win64UsernameW[17]; return g_Win64UsernameW; }
|
||||||
{
|
|
||||||
extern char g_Win64Username[17];
|
|
||||||
if (iPad == 0) return g_Win64Username;
|
|
||||||
if (iPad > 0 && iPad < XUSER_MAX_COUNT)
|
|
||||||
{
|
|
||||||
Win64_BuildSplitName(iPad, s_win64SplitNames[iPad], sizeof(s_win64SplitNames[iPad]));
|
|
||||||
return s_win64SplitNames[iPad];
|
|
||||||
}
|
|
||||||
return g_Win64Username;
|
|
||||||
}
|
|
||||||
wstring C_4JProfile::GetDisplayName(int iPad)
|
|
||||||
{
|
|
||||||
extern wchar_t g_Win64UsernameW[17];
|
|
||||||
if (iPad == 0) return g_Win64UsernameW;
|
|
||||||
if (iPad > 0 && iPad < XUSER_MAX_COUNT)
|
|
||||||
{
|
|
||||||
wchar_t buf[32];
|
|
||||||
Win64_BuildSplitNameW(iPad, buf, 32);
|
|
||||||
return buf;
|
|
||||||
}
|
|
||||||
return g_Win64UsernameW;
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
bool C_4JProfile::IsFullVersion() { return s_bProfileIsFullVersion; }
|
bool C_4JProfile::IsFullVersion() { return s_bProfileIsFullVersion; }
|
||||||
void C_4JProfile::SetSignInChangeCallback(void ( *Func)(LPVOID, bool, unsigned int),LPVOID lpParam) {}
|
void C_4JProfile::SetSignInChangeCallback(void ( *Func)(LPVOID, bool, unsigned int),LPVOID lpParam) {}
|
||||||
|
|||||||
@@ -105,6 +105,8 @@ GameRenderer::GameRenderer(Minecraft *mc)
|
|||||||
zoom = 1;
|
zoom = 1;
|
||||||
zoom_x = 0;
|
zoom_x = 0;
|
||||||
zoom_y = 0;
|
zoom_y = 0;
|
||||||
|
rainXa = NULL;
|
||||||
|
rainZa = NULL;
|
||||||
lastActiveTime = Minecraft::currentTimeMillis();
|
lastActiveTime = Minecraft::currentTimeMillis();
|
||||||
lastNsTime = 0;
|
lastNsTime = 0;
|
||||||
random = new Random();
|
random = new Random();
|
||||||
@@ -179,9 +181,8 @@ GameRenderer::GameRenderer(Minecraft *mc)
|
|||||||
// 4J Stu Added to go with 1.8.2 change
|
// 4J Stu Added to go with 1.8.2 change
|
||||||
GameRenderer::~GameRenderer()
|
GameRenderer::~GameRenderer()
|
||||||
{
|
{
|
||||||
delete random;
|
if(rainXa != NULL) delete [] rainXa;
|
||||||
delete cameraPos;
|
if(rainZa != NULL) delete [] rainZa;
|
||||||
delete lb;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void GameRenderer::tick(bool first) // 4J - add bFirst
|
void GameRenderer::tick(bool first) // 4J - add bFirst
|
||||||
@@ -837,21 +838,19 @@ void GameRenderer::updateLightTexture(float a)
|
|||||||
Level *level = player->level; // 4J - was mc->level when it was just to update the one light texture
|
Level *level = player->level; // 4J - was mc->level when it was just to update the one light texture
|
||||||
|
|
||||||
float skyDarken1 = level->getSkyDarken((float) 1);
|
float skyDarken1 = level->getSkyDarken((float) 1);
|
||||||
float darken = skyDarken1 * 0.95f + 0.05f;
|
|
||||||
float rsGsMul = skyDarken1 * 0.65f + 0.35f;
|
|
||||||
float blockMul = blr * 0.1f + 1.5f;
|
|
||||||
for (int i = 0; i < 256; i++)
|
for (int i = 0; i < 256; i++)
|
||||||
{
|
{
|
||||||
|
float darken = skyDarken1 * 0.95f + 0.05f;
|
||||||
float sky = level->dimension->brightnessRamp[i / 16] * darken;
|
float sky = level->dimension->brightnessRamp[i / 16] * darken;
|
||||||
float block = level->dimension->brightnessRamp[i % 16] * blockMul;
|
float block = level->dimension->brightnessRamp[i % 16] * (blr * 0.1f + 1.5f);
|
||||||
|
|
||||||
if (level->skyFlashTime > 0)
|
if (level->skyFlashTime > 0)
|
||||||
{
|
{
|
||||||
sky = level->dimension->brightnessRamp[i / 16];
|
sky = level->dimension->brightnessRamp[i / 16];
|
||||||
}
|
}
|
||||||
|
|
||||||
float rs = sky * rsGsMul;
|
float rs = sky * (skyDarken1 * 0.65f + 0.35f);
|
||||||
float gs = sky * rsGsMul;
|
float gs = sky * (skyDarken1 * 0.65f + 0.35f);
|
||||||
float bs = sky;
|
float bs = sky;
|
||||||
|
|
||||||
float rb = block;
|
float rb = block;
|
||||||
@@ -1527,30 +1526,27 @@ void GameRenderer::tickRain()
|
|||||||
int x = x0 + random->nextInt(r) - random->nextInt(r);
|
int x = x0 + random->nextInt(r) - random->nextInt(r);
|
||||||
int z = z0 + random->nextInt(r) - random->nextInt(r);
|
int z = z0 + random->nextInt(r) - random->nextInt(r);
|
||||||
int y = level->getTopRainBlock(x, z);
|
int y = level->getTopRainBlock(x, z);
|
||||||
if (y <= y0 + r && y >= y0 - r)
|
int t = level->getTile(x, y - 1, z);
|
||||||
|
Biome *biome = level->getBiome(x,z);
|
||||||
|
if (y <= y0 + r && y >= y0 - r && biome->hasRain() && biome->getTemperature() >= 0.2f)
|
||||||
{
|
{
|
||||||
int t = level->getTile(x, y - 1, z);
|
float xa = random->nextFloat();
|
||||||
Biome *biome = level->getBiome(x,z);
|
float za = random->nextFloat();
|
||||||
if (biome->hasRain() && biome->getTemperature() >= 0.2f)
|
if (t > 0)
|
||||||
{
|
{
|
||||||
float xa = random->nextFloat();
|
if (Tile::tiles[t]->material == Material::lava)
|
||||||
float za = random->nextFloat();
|
|
||||||
if (t > 0)
|
|
||||||
{
|
{
|
||||||
if (Tile::tiles[t]->material == Material::lava)
|
mc->particleEngine->add( shared_ptr<SmokeParticle>( new SmokeParticle(level, x + xa, y + 0.1f - Tile::tiles[t]->getShapeY0(), z + za, 0, 0, 0) ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (random->nextInt(++rainPosSamples) == 0)
|
||||||
{
|
{
|
||||||
mc->particleEngine->add( shared_ptr<SmokeParticle>( new SmokeParticle(level, x + xa, y + 0.1f - Tile::tiles[t]->getShapeY0(), z + za, 0, 0, 0) ) );
|
rainPosX = x + xa;
|
||||||
}
|
rainPosY = y + 0.1f - Tile::tiles[t]->getShapeY0();
|
||||||
else
|
rainPosZ = z + za;
|
||||||
{
|
|
||||||
if (random->nextInt(++rainPosSamples) == 0)
|
|
||||||
{
|
|
||||||
rainPosX = x + xa;
|
|
||||||
rainPosY = y + 0.1f - Tile::tiles[t]->getShapeY0();
|
|
||||||
rainPosZ = z + za;
|
|
||||||
}
|
|
||||||
mc->particleEngine->add( shared_ptr<WaterDropParticle>( new WaterDropParticle(level, x + xa, y + 0.1f - Tile::tiles[t]->getShapeY0(), z + za) ) );
|
|
||||||
}
|
}
|
||||||
|
mc->particleEngine->add( shared_ptr<WaterDropParticle>( new WaterDropParticle(level, x + xa, y + 0.1f - Tile::tiles[t]->getShapeY0(), z + za) ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1585,12 +1581,10 @@ void GameRenderer::renderSnowAndRain(float a)
|
|||||||
|
|
||||||
turnOnLightLayer(a);
|
turnOnLightLayer(a);
|
||||||
|
|
||||||
static float rainXa[32 * 32];
|
if (rainXa == NULL)
|
||||||
static float rainZa[32 * 32];
|
|
||||||
static bool rainArraysInitialized = false;
|
|
||||||
if (!rainArraysInitialized)
|
|
||||||
{
|
{
|
||||||
rainArraysInitialized = true;
|
rainXa = new float[32 * 32];
|
||||||
|
rainZa = new float[32 * 32];
|
||||||
|
|
||||||
for (int z = 0; z < 32; z++)
|
for (int z = 0; z < 32; z++)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -128,6 +128,8 @@ private:
|
|||||||
void tickRain();
|
void tickRain();
|
||||||
private:
|
private:
|
||||||
// 4J - brought forward from 1.8.2
|
// 4J - brought forward from 1.8.2
|
||||||
|
float *rainXa;
|
||||||
|
float *rainZa;
|
||||||
protected:
|
protected:
|
||||||
void renderSnowAndRain(float a);
|
void renderSnowAndRain(float a);
|
||||||
volatile int xMod;
|
volatile int xMod;
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ ResourceLocation HorseRenderer::HORSE_DONKEY_LOCATION = ResourceLocation(TN_MOB_
|
|||||||
ResourceLocation HorseRenderer::HORSE_ZOMBIE_LOCATION = ResourceLocation(TN_MOB_HORSE_ZOMBIE);
|
ResourceLocation HorseRenderer::HORSE_ZOMBIE_LOCATION = ResourceLocation(TN_MOB_HORSE_ZOMBIE);
|
||||||
ResourceLocation HorseRenderer::HORSE_SKELETON_LOCATION = ResourceLocation(TN_MOB_HORSE_SKELETON);
|
ResourceLocation HorseRenderer::HORSE_SKELETON_LOCATION = ResourceLocation(TN_MOB_HORSE_SKELETON);
|
||||||
|
|
||||||
std::map<wstring, ResourceLocation> HorseRenderer::LAYERED_LOCATION_CACHE;
|
std::map<wstring, ResourceLocation *> HorseRenderer::LAYERED_LOCATION_CACHE;
|
||||||
|
|
||||||
HorseRenderer::HorseRenderer(Model *model, float f) : MobRenderer(model, f)
|
HorseRenderer::HorseRenderer(Model *model, float f) : MobRenderer(model, f)
|
||||||
{
|
{
|
||||||
@@ -114,14 +114,14 @@ ResourceLocation *HorseRenderer::getOrCreateLayeredTextureLocation(shared_ptr<En
|
|||||||
ResourceLocation *location;
|
ResourceLocation *location;
|
||||||
if (it != LAYERED_LOCATION_CACHE.end())
|
if (it != LAYERED_LOCATION_CACHE.end())
|
||||||
{
|
{
|
||||||
location = &(it->second);
|
location = it->second;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
LAYERED_LOCATION_CACHE[textureName] = ResourceLocation(horse->getLayeredTextureLayers());
|
LAYERED_LOCATION_CACHE[textureName] = new ResourceLocation(horse->getLayeredTextureLayers());
|
||||||
|
|
||||||
it = LAYERED_LOCATION_CACHE.find(textureName);
|
it = LAYERED_LOCATION_CACHE.find(textureName);
|
||||||
location = &(it->second);
|
location = it->second;
|
||||||
}
|
}
|
||||||
|
|
||||||
return location;
|
return location;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ class PathfinderMob;
|
|||||||
class HorseRenderer : public MobRenderer
|
class HorseRenderer : public MobRenderer
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
static std::map<wstring, ResourceLocation> LAYERED_LOCATION_CACHE;
|
static std::map<wstring, ResourceLocation *> LAYERED_LOCATION_CACHE;
|
||||||
|
|
||||||
static ResourceLocation HORSE_LOCATION;
|
static ResourceLocation HORSE_LOCATION;
|
||||||
static ResourceLocation HORSE_MULE_LOCATION;
|
static ResourceLocation HORSE_MULE_LOCATION;
|
||||||
|
|||||||
@@ -1964,11 +1964,7 @@ bool LevelRenderer::updateDirtyChunks()
|
|||||||
{
|
{
|
||||||
if( (!onlyRebuild) ||
|
if( (!onlyRebuild) ||
|
||||||
globalChunkFlags[ pClipChunk->globalIdx ] & CHUNK_FLAG_COMPILED ||
|
globalChunkFlags[ pClipChunk->globalIdx ] & CHUNK_FLAG_COMPILED ||
|
||||||
#ifdef _WINDOWS64
|
|
||||||
( distSq < 96 * 96 ) ) // Always rebuild really near things or else building (say) at tower up into empty blocks when we are low on memory will not create render data
|
|
||||||
#else
|
|
||||||
( distSq < 20 * 20 ) ) // Always rebuild really near things or else building (say) at tower up into empty blocks when we are low on memory will not create render data
|
( distSq < 20 * 20 ) ) // Always rebuild really near things or else building (say) at tower up into empty blocks when we are low on memory will not create render data
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
considered++;
|
considered++;
|
||||||
// Is this chunk nearer than our nearest?
|
// Is this chunk nearer than our nearest?
|
||||||
|
|||||||
@@ -52,9 +52,7 @@ public:
|
|||||||
static const int CHUNK_SIZE = 16;
|
static const int CHUNK_SIZE = 16;
|
||||||
#endif
|
#endif
|
||||||
static const int CHUNK_Y_COUNT = Level::maxBuildHeight / CHUNK_SIZE;
|
static const int CHUNK_Y_COUNT = Level::maxBuildHeight / CHUNK_SIZE;
|
||||||
#if defined _WINDOWS64
|
#if ( defined _XBOX_ONE || defined _WINDOWS64 )
|
||||||
static const int MAX_COMMANDBUFFER_ALLOCATIONS = 2047 * 1024 * 1024; // whisper - added (wow)
|
|
||||||
#elif ( defined _XBOX_ONE )
|
|
||||||
static const int MAX_COMMANDBUFFER_ALLOCATIONS = 512 * 1024 * 1024; // 4J - added
|
static const int MAX_COMMANDBUFFER_ALLOCATIONS = 512 * 1024 * 1024; // 4J - added
|
||||||
#elif defined __ORBIS__
|
#elif defined __ORBIS__
|
||||||
static const int MAX_COMMANDBUFFER_ALLOCATIONS = 448 * 1024 * 1024; // 4J - added - hard limit is 512 so giving a lot of headroom here for fragmentation (have seen 16MB lost to fragmentation in multiplayer crash dump before)
|
static const int MAX_COMMANDBUFFER_ALLOCATIONS = 448 * 1024 * 1024; // 4J - added - hard limit is 512 so giving a lot of headroom here for fragmentation (have seen 16MB lost to fragmentation in multiplayer crash dump before)
|
||||||
|
|||||||
@@ -531,7 +531,7 @@ void LivingEntityRenderer::renderNameTag(shared_ptr<LivingEntity> mob, const wst
|
|||||||
int offs = 0;
|
int offs = 0;
|
||||||
|
|
||||||
wstring playerName;
|
wstring playerName;
|
||||||
WCHAR wchName[8];
|
WCHAR wchName[2];
|
||||||
|
|
||||||
if(mob->instanceof(eTYPE_PLAYER))
|
if(mob->instanceof(eTYPE_PLAYER))
|
||||||
{
|
{
|
||||||
@@ -551,7 +551,7 @@ void LivingEntityRenderer::renderNameTag(shared_ptr<LivingEntity> mob, const wst
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
memset(wchName,0,sizeof(wchName));
|
memset(wchName,0,sizeof(WCHAR)*2);
|
||||||
swprintf(wchName, 2, L"%d",player->getPlayerIndex()+1);
|
swprintf(wchName, 2, L"%d",player->getPlayerIndex()+1);
|
||||||
playerName=wchName;
|
playerName=wchName;
|
||||||
player->SetPlayerNameValidState(false);
|
player->SetPlayerNameValidState(false);
|
||||||
@@ -561,7 +561,7 @@ void LivingEntityRenderer::renderNameTag(shared_ptr<LivingEntity> mob, const wst
|
|||||||
playerName=name;
|
playerName=name;
|
||||||
break;
|
break;
|
||||||
case Player::ePlayerNameValid_False:
|
case Player::ePlayerNameValid_False:
|
||||||
memset(wchName,0,sizeof(wchName)d);
|
memset(wchName,0,sizeof(WCHAR)*2);
|
||||||
swprintf(wchName, 2, L"%d",player->getPlayerIndex()+1);
|
swprintf(wchName, 2, L"%d",player->getPlayerIndex()+1);
|
||||||
playerName=wchName;
|
playerName=wchName;
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -810,7 +810,7 @@
|
|||||||
<Message>Run PS3 postbuild script</Message>
|
<Message>Run PS3 postbuild script</Message>
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=Debug /p:Platform=PS3 /v:minimal</Command>
|
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=Debug /v:minimal</Command>
|
||||||
</PreLinkEvent>
|
</PreLinkEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Message>Build PS3 SPU Tasks</Message>
|
<Message>Build PS3 SPU Tasks</Message>
|
||||||
@@ -905,7 +905,7 @@
|
|||||||
<Message>Run PS3 postbuild script</Message>
|
<Message>Run PS3 postbuild script</Message>
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=Release /p:Platform=PS3 /v:minimal</Command>
|
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=Release /v:minimal</Command>
|
||||||
</PreLinkEvent>
|
</PreLinkEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Message>Build PS3 SPU Tasks</Message>
|
<Message>Build PS3 SPU Tasks</Message>
|
||||||
@@ -1027,7 +1027,7 @@ xcopy /q /y /i /s /e $(ProjectDir)DurangoMedia\CU $(LayoutDir)Image\Loose\CU</C
|
|||||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
<PreprocessorDefinitions>_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG_MENUS_ENABLED;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<CallAttributedProfiling>Disabled</CallAttributedProfiling>
|
<CallAttributedProfiling>Disabled</CallAttributedProfiling>
|
||||||
<AdditionalIncludeDirectories>Windows64\Iggy\include;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>Windows64\Iggy\include;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||||
@@ -1358,7 +1358,7 @@ xcopy /q /y /i /s /e $(ProjectDir)DurangoMedia\CU $(LayoutDir)Image\Loose\CU</C
|
|||||||
<Message>Run PS3 postbuild script</Message>
|
<Message>Run PS3 postbuild script</Message>
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=ContentPackage /p:Platform=PS3 /v:minimal</Command>
|
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=ContentPackage /v:minimal</Command>
|
||||||
</PreLinkEvent>
|
</PreLinkEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Message>Build PS3 SPU Tasks</Message>
|
<Message>Build PS3 SPU Tasks</Message>
|
||||||
@@ -1455,7 +1455,7 @@ xcopy /q /y /i /s /e $(ProjectDir)DurangoMedia\CU $(LayoutDir)Image\Loose\CU</C
|
|||||||
<Message>Run PS3 postbuild script</Message>
|
<Message>Run PS3 postbuild script</Message>
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=ContentPackage /p:Platform=PS3 /v:minimal</Command>
|
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=ContentPackage /v:minimal</Command>
|
||||||
</PreLinkEvent>
|
</PreLinkEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Message>Build PS3 SPU Tasks</Message>
|
<Message>Build PS3 SPU Tasks</Message>
|
||||||
@@ -1560,7 +1560,7 @@ xcopy /q /y /i /s /e $(ProjectDir)DurangoMedia\CU $(LayoutDir)Image\Loose\CU</C
|
|||||||
<Message>Run PS3 postbuild script</Message>
|
<Message>Run PS3 postbuild script</Message>
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=Release /p:Platform=PS3 /v:minimal</Command>
|
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=Release /v:minimal</Command>
|
||||||
</PreLinkEvent>
|
</PreLinkEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Message>Build PS3 SPU Tasks</Message>
|
<Message>Build PS3 SPU Tasks</Message>
|
||||||
@@ -1657,7 +1657,7 @@ xcopy /q /y /i /s /e $(ProjectDir)DurangoMedia\CU $(LayoutDir)Image\Loose\CU</C
|
|||||||
<Message>Run PS3 postbuild script</Message>
|
<Message>Run PS3 postbuild script</Message>
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=ContentPackage /p:Platform=PS3 /v:minimal</Command>
|
<Command>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" "$(ProjectDir)PS3\SPU_Tasks\SPU_Tasks.sln" /p:Configuration=ContentPackage /v:minimal</Command>
|
||||||
</PreLinkEvent>
|
</PreLinkEvent>
|
||||||
<PreLinkEvent>
|
<PreLinkEvent>
|
||||||
<Message>Build PS3 SPU Tasks</Message>
|
<Message>Build PS3 SPU Tasks</Message>
|
||||||
@@ -2092,7 +2092,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||||
<OptimizationLevel>Level2</OptimizationLevel>
|
<OptimizationLevel>Level2</OptimizationLevel>
|
||||||
<AdditionalIncludeDirectories>Orbis\Iggy\include;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>Orbis\Iggy\include;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>SPLIT_SAVES;_EXTENDED_ACHIEVEMENTS;_DEBUG_MENUS_ENABLED</PreprocessorDefinitions>
|
<PreprocessorDefinitions>SPLIT_SAVES;_LARGE_WORLDS;_EXTENDED_ACHIEVEMENTS;_DEBUG_MENUS_ENABLED</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<AdditionalDependencies>..\Minecraft.World\ORBIS_Release\Minecraft.World.a;Orbis\4JLibs\libs\4j_Render.a;Orbis\4JLibs\libs\4j_Input_r.a;Orbis\4JLibs\libs\4J_Storage_r.a;Orbis\4JLibs\libs\4J_Profile_r.a;Orbis\Iggy\lib\libiggy_orbis.a;Orbis\Miles\lib\mssorbis.a;Orbis\Miles\lib\binkaorbis.a;Common\Network\Sony\sceRemoteStorage\ps4\lib\sceRemoteStorage.a;-lSceGnmDriver_stub_weak;-lSceGnmx;-lSceGnm;-lSceGpuAddress;-lSceCes;-lSceVideoOut_stub_weak;-lScePad_stub_weak;-lScePngDec_stub_weak;-lScePngEnc_stub_weak;-lSceFios2_stub_weak;-lSceUlt_stub_weak;-lSceShaderBinary;-lSceUserService_stub_weak;-lSceSysmodule_stub_weak;-lSceImeDialog_stub_weak;-lScePosix_stub_weak;-lSceAudioOut_stub_weak;-lSceSaveData_stub_weak;-lSceRtc_stub_weak;-lSceSystemService_stub_weak;-lSceNetCtl_stub_weak;-lSceNpCommon_stub_weak;-lSceNpManager_stub_weak;-lSceNpToolkit;-lSceNpToolkitUtils;-lSceNpWebApi_stub_weak;-lSceNpAuth_stub_weak;-lSceNpTrophy_stub_weak;-lSceInvitationDialog_stub_weak;-lSceGameCustomDataDialog_stub_weak;-lSceNpCommerce_stub_weak;-lSceNet_stub_weak;-lSceHttp_stub_weak;-lSceSsl_stub_weak;-lSceNpMatching2_stub_weak;-lSceNpTus_stub_weak;-lSceNpUtility_stub_weak;-lSceNpScore_stub_weak;-lSceCommonDialog_stub_weak;-lSceNpSns_stub_weak;-lSceNpSnsFacebookDialog_stub_weak;-lSceRudp_stub_weak;-lSceAppContent_stub_weak;-lSceVoice_stub_weak;-lSceAudioIn_stub_weak;-lSceRemoteplay_stub_weak;-lSceSaveDataDialog_stub_weak;-lSceErrorDialog_stub_weak;-lSceMsgDialog_stub_weak;-lSceGameLiveStreaming_stub_weak;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>..\Minecraft.World\ORBIS_Release\Minecraft.World.a;Orbis\4JLibs\libs\4j_Render.a;Orbis\4JLibs\libs\4j_Input_r.a;Orbis\4JLibs\libs\4J_Storage_r.a;Orbis\4JLibs\libs\4J_Profile_r.a;Orbis\Iggy\lib\libiggy_orbis.a;Orbis\Miles\lib\mssorbis.a;Orbis\Miles\lib\binkaorbis.a;Common\Network\Sony\sceRemoteStorage\ps4\lib\sceRemoteStorage.a;-lSceGnmDriver_stub_weak;-lSceGnmx;-lSceGnm;-lSceGpuAddress;-lSceCes;-lSceVideoOut_stub_weak;-lScePad_stub_weak;-lScePngDec_stub_weak;-lScePngEnc_stub_weak;-lSceFios2_stub_weak;-lSceUlt_stub_weak;-lSceShaderBinary;-lSceUserService_stub_weak;-lSceSysmodule_stub_weak;-lSceImeDialog_stub_weak;-lScePosix_stub_weak;-lSceAudioOut_stub_weak;-lSceSaveData_stub_weak;-lSceRtc_stub_weak;-lSceSystemService_stub_weak;-lSceNetCtl_stub_weak;-lSceNpCommon_stub_weak;-lSceNpManager_stub_weak;-lSceNpToolkit;-lSceNpToolkitUtils;-lSceNpWebApi_stub_weak;-lSceNpAuth_stub_weak;-lSceNpTrophy_stub_weak;-lSceInvitationDialog_stub_weak;-lSceGameCustomDataDialog_stub_weak;-lSceNpCommerce_stub_weak;-lSceNet_stub_weak;-lSceHttp_stub_weak;-lSceSsl_stub_weak;-lSceNpMatching2_stub_weak;-lSceNpTus_stub_weak;-lSceNpUtility_stub_weak;-lSceNpScore_stub_weak;-lSceCommonDialog_stub_weak;-lSceNpSns_stub_weak;-lSceNpSnsFacebookDialog_stub_weak;-lSceRudp_stub_weak;-lSceAppContent_stub_weak;-lSceVoice_stub_weak;-lSceAudioIn_stub_weak;-lSceRemoteplay_stub_weak;-lSceSaveDataDialog_stub_weak;-lSceErrorDialog_stub_weak;-lSceMsgDialog_stub_weak;-lSceGameLiveStreaming_stub_weak;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
@@ -16586,6 +16586,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="Xbox\Network\extra.h" />
|
||||||
<ClInclude Include="Xbox\Network\NetworkPlayerXbox.h">
|
<ClInclude Include="Xbox\Network\NetworkPlayerXbox.h">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Durango'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Durango'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Durango'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Durango'">true</ExcludedFromBuild>
|
||||||
@@ -23444,13 +23445,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|ORBIS'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|ORBIS'">true</ExcludedFromBuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\adler32.c">
|
<ClCompile Include="Common\zlib\adler32.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23464,18 +23465,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23502,13 +23491,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">NotUsing</PrecompiledHeader>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\compress.c">
|
<ClCompile Include="Common\zlib\compress.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23522,18 +23511,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23558,13 +23535,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\crc32.c">
|
<ClCompile Include="Common\zlib\crc32.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23578,18 +23555,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23614,13 +23579,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\deflate.c">
|
<ClCompile Include="Common\zlib\deflate.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23634,18 +23599,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23670,13 +23623,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\gzclose.c">
|
<ClCompile Include="Common\zlib\gzclose.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23690,18 +23643,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23733,13 +23674,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\gzlib.c">
|
<ClCompile Include="Common\zlib\gzlib.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23753,18 +23694,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23796,13 +23725,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\gzread.c">
|
<ClCompile Include="Common\zlib\gzread.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23816,18 +23745,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23859,13 +23776,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\gzwrite.c">
|
<ClCompile Include="Common\zlib\gzwrite.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23879,18 +23796,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23922,13 +23827,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\infback.c">
|
<ClCompile Include="Common\zlib\infback.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23942,18 +23847,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -23978,13 +23871,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\inffast.c">
|
<ClCompile Include="Common\zlib\inffast.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -23998,18 +23891,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -24034,13 +23915,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\inflate.c">
|
<ClCompile Include="Common\zlib\inflate.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -24054,18 +23935,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -24090,13 +23959,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\inftrees.c">
|
<ClCompile Include="Common\zlib\inftrees.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -24110,18 +23979,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -24146,13 +24003,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\trees.c">
|
<ClCompile Include="Common\zlib\trees.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -24166,18 +24023,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -24202,13 +24047,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\uncompr.c">
|
<ClCompile Include="Common\zlib\uncompr.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -24222,18 +24067,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
@@ -24258,13 +24091,13 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Durango'">false</CompileAsWinRT>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="Common\zlib\zutil.c">
|
<ClCompile Include="Common\zlib\zutil.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|Xbox 360'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage|PSVita'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|PS3'">false</ExcludedFromBuild>
|
||||||
@@ -24278,18 +24111,6 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CU</Comman
|
|||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ContentPackage_Vita|PS3'">false</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|PSVita'">true</ExcludedFromBuild>
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">CompileAsC</CompileAs>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage_NO_TU|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Xbox 360'">NotUsing</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ContentPackage|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='CONTENTPACKAGE_SYMBOLS|x64'">NotUsing</PrecompiledHeader>
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='ReleaseForArt|x64'">NotUsing</PrecompiledHeader>
|
||||||
|
|||||||
@@ -3611,6 +3611,9 @@
|
|||||||
<ClInclude Include="Orbis\Network\PsPlusUpsellWrapper_Orbis.h">
|
<ClInclude Include="Orbis\Network\PsPlusUpsellWrapper_Orbis.h">
|
||||||
<Filter>Orbis\Network</Filter>
|
<Filter>Orbis\Network</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="Xbox\Network\extra.h">
|
||||||
|
<Filter>Xbox\Source Files\Network</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="Common\UI\UIScene_Keyboard.h">
|
<ClInclude Include="Common\UI\UIScene_Keyboard.h">
|
||||||
<Filter>Common\Source Files\UI\Scenes</Filter>
|
<Filter>Common\Source Files\UI\Scenes</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|||||||
@@ -1298,9 +1298,9 @@ void Minecraft::run_middle()
|
|||||||
INetworkPlayer *pHostPlayer = g_NetworkManager.GetHostPlayer();
|
INetworkPlayer *pHostPlayer = g_NetworkManager.GetHostPlayer();
|
||||||
|
|
||||||
#ifdef _XBOX
|
#ifdef _XBOX
|
||||||
PlayerUID xuid=((pHostPlayer != NULL) ? ((NetworkPlayerXbox *)pHostPlayer)->GetUID() : 0);
|
PlayerUID xuid=((NetworkPlayerXbox *)pHostPlayer)->GetUID();
|
||||||
#else
|
#else
|
||||||
PlayerUID xuid=(pHostPlayer != NULL) ? pHostPlayer->GetUID() : 0;
|
PlayerUID xuid=pHostPlayer->GetUID();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(app.IsInBannedLevelList(i,xuid,app.GetUniqueMapName()))
|
if(app.IsInBannedLevelList(i,xuid,app.GetUniqueMapName()))
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ bool MinecraftServer::initServer(__int64 seed, NetworkGameInitData *initData, DW
|
|||||||
//localIp = settings->getString(L"server-ip", L"");
|
//localIp = settings->getString(L"server-ip", L"");
|
||||||
//onlineMode = settings->getBoolean(L"online-mode", true);
|
//onlineMode = settings->getBoolean(L"online-mode", true);
|
||||||
//motd = settings->getString(L"motd", L"A Minecraft Server");
|
//motd = settings->getString(L"motd", L"A Minecraft Server");
|
||||||
//motd.replace('§', '$');
|
//motd.replace('§', '$');
|
||||||
|
|
||||||
setAnimals(settings->getBoolean(L"spawn-animals", true));
|
setAnimals(settings->getBoolean(L"spawn-animals", true));
|
||||||
setNpcsEnabled(settings->getBoolean(L"spawn-npcs", true));
|
setNpcsEnabled(settings->getBoolean(L"spawn-npcs", true));
|
||||||
@@ -210,7 +210,7 @@ bool MinecraftServer::initServer(__int64 seed, NetworkGameInitData *initData, DW
|
|||||||
|
|
||||||
// 4J-JEV: Need to wait for levelGenerationOptions to load.
|
// 4J-JEV: Need to wait for levelGenerationOptions to load.
|
||||||
while ( app.getLevelGenerationOptions() != NULL && !app.getLevelGenerationOptions()->hasLoadedData() )
|
while ( app.getLevelGenerationOptions() != NULL && !app.getLevelGenerationOptions()->hasLoadedData() )
|
||||||
Sleep(0);
|
Sleep(1);
|
||||||
|
|
||||||
if ( app.getLevelGenerationOptions() != NULL && !app.getLevelGenerationOptions()->ready() )
|
if ( app.getLevelGenerationOptions() != NULL && !app.getLevelGenerationOptions()->ready() )
|
||||||
{
|
{
|
||||||
@@ -319,7 +319,7 @@ int MinecraftServer::runPostUpdate(void* lpParam)
|
|||||||
{
|
{
|
||||||
LeaveCriticalSection(&server->m_postProcessCS);
|
LeaveCriticalSection(&server->m_postProcessCS);
|
||||||
}
|
}
|
||||||
Sleep(0);
|
Sleep(1);
|
||||||
} while (!server->m_postUpdateTerminate && ShutdownManager::ShouldRun(ShutdownManager::ePostProcessThread));
|
} while (!server->m_postUpdateTerminate && ShutdownManager::ShouldRun(ShutdownManager::ePostProcessThread));
|
||||||
//#ifndef __PS3__
|
//#ifndef __PS3__
|
||||||
// One final pass through updates to make sure we're done
|
// One final pass through updates to make sure we're done
|
||||||
|
|||||||
@@ -236,7 +236,7 @@ public:
|
|||||||
static void SetTime(__int64 time) { setTimeAtEndOfTick = true; setTime = time; }
|
static void SetTime(__int64 time) { setTimeAtEndOfTick = true; setTime = time; }
|
||||||
|
|
||||||
C4JThread::Event* m_serverPausedEvent;
|
C4JThread::Event* m_serverPausedEvent;
|
||||||
public:
|
private:
|
||||||
// 4J Added
|
// 4J Added
|
||||||
bool m_isServerPaused;
|
bool m_isServerPaused;
|
||||||
|
|
||||||
|
|||||||
@@ -85,20 +85,6 @@ bool MultiPlayerGameMode::destroyBlock(int x, int y, int z, int face)
|
|||||||
|
|
||||||
if (oldTile == NULL) return false;
|
if (oldTile == NULL) return false;
|
||||||
|
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
if (g_NetworkManager.IsHost())
|
|
||||||
{
|
|
||||||
level->levelEvent(LevelEvent::PARTICLES_DESTROY_BLOCK, x, y, z, oldTile->id + (level->getData(x, y, z) << Tile::TILE_NUM_SHIFT));
|
|
||||||
int data = level->getData(x, y, z);
|
|
||||||
bool changed = level->removeTile(x, y, z);
|
|
||||||
if (changed)
|
|
||||||
{
|
|
||||||
oldTile->destroy(level, x, y, z, data);
|
|
||||||
}
|
|
||||||
return changed;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
level->levelEvent(LevelEvent::PARTICLES_DESTROY_BLOCK, x, y, z, oldTile->id + (level->getData(x, y, z) << Tile::TILE_NUM_SHIFT));
|
level->levelEvent(LevelEvent::PARTICLES_DESTROY_BLOCK, x, y, z, oldTile->id + (level->getData(x, y, z) << Tile::TILE_NUM_SHIFT));
|
||||||
|
|
||||||
int data = level->getData(x, y, z);
|
int data = level->getData(x, y, z);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
base64.cpp and base64.h
|
base64.cpp and base64.h
|
||||||
|
|
||||||
Copyright (C) 2004-2008 René Nyffenegger
|
Copyright (C) 2004-2008 René Nyffenegger
|
||||||
|
|
||||||
This source code is provided 'as-is', without any express or implied
|
This source code is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the author be held liable for any damages
|
warranty. In no event will the author be held liable for any damages
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
3. This notice may not be removed or altered from any source distribution.
|
3. This notice may not be removed or altered from any source distribution.
|
||||||
|
|
||||||
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
|
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ static inline bool is_base64(unsigned char c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 4J ADDED,
|
// 4J ADDED,
|
||||||
std::string base64_encode(const std::string& str)
|
std::string base64_encode(std::string str)
|
||||||
{
|
{
|
||||||
return base64_encode( reinterpret_cast<const unsigned char*>(str.c_str()), str.length() );
|
return base64_encode( reinterpret_cast<const unsigned char*>(str.c_str()), str.length() );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,6 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
std::string base64_encode(const std::string& str);
|
std::string base64_encode(std::string str);
|
||||||
std::string base64_encode(unsigned char const* , unsigned int len);
|
std::string base64_encode(unsigned char const* , unsigned int len);
|
||||||
std::string base64_decode(std::string const& s);
|
std::string base64_decode(std::string const& s);
|
||||||
@@ -80,8 +80,6 @@ DWORD dwProfileSettingsA[NUM_PROFILE_VALUES]=
|
|||||||
uint8_t * AddRichPresenceString(int iID);
|
uint8_t * AddRichPresenceString(int iID);
|
||||||
void FreeRichPresenceStrings();
|
void FreeRichPresenceStrings();
|
||||||
|
|
||||||
char g_Win64Username[17] = {0};
|
|
||||||
|
|
||||||
BOOL g_bWidescreen = TRUE;
|
BOOL g_bWidescreen = TRUE;
|
||||||
|
|
||||||
|
|
||||||
@@ -986,9 +984,6 @@ int main(int argc, const char *argv[] )
|
|||||||
app.GAME_DEFINED_PROFILE_DATA_BYTES*XUSER_MAX_COUNT,
|
app.GAME_DEFINED_PROFILE_DATA_BYTES*XUSER_MAX_COUNT,
|
||||||
&app.uiGameDefinedDataChangedBitmask);
|
&app.uiGameDefinedDataChangedBitmask);
|
||||||
|
|
||||||
strncpy(g_Win64Username, ProfileManager.GetGamertag(0), 17);
|
|
||||||
g_Win64Username[16] = 0;
|
|
||||||
|
|
||||||
// register the awards
|
// register the awards
|
||||||
RegisterAwardsWithProfileManager();
|
RegisterAwardsWithProfileManager();
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
base64.cpp and base64.h
|
base64.cpp and base64.h
|
||||||
|
|
||||||
Copyright (C) 2004-2008 René Nyffenegger
|
Copyright (C) 2004-2008 René Nyffenegger
|
||||||
|
|
||||||
This source code is provided 'as-is', without any express or implied
|
This source code is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the author be held liable for any damages
|
warranty. In no event will the author be held liable for any damages
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
3. This notice may not be removed or altered from any source distribution.
|
3. This notice may not be removed or altered from any source distribution.
|
||||||
|
|
||||||
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
|
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ static inline bool is_base64(unsigned char c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 4J ADDED,
|
// 4J ADDED,
|
||||||
std::string base64_encode(const std::string& str)
|
std::string base64_encode(std::string str)
|
||||||
{
|
{
|
||||||
return base64_encode( reinterpret_cast<const unsigned char*>(str.c_str()), str.length() );
|
return base64_encode( reinterpret_cast<const unsigned char*>(str.c_str()), str.length() );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,6 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
std::string base64_encode(const std::string& str);
|
std::string base64_encode(std::string str);
|
||||||
std::string base64_encode(unsigned char const* , unsigned int len);
|
std::string base64_encode(unsigned char const* , unsigned int len);
|
||||||
std::string base64_decode(std::string const& s);
|
std::string base64_decode(std::string const& s);
|
||||||
@@ -158,8 +158,6 @@ extern "C" void* __wrap__malloc_init(size_t a_Boundary, size_t a_Size)
|
|||||||
// for a long time.
|
// for a long time.
|
||||||
//-------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------
|
||||||
|
|
||||||
char g_Win64Username[17] = {0};
|
|
||||||
|
|
||||||
BOOL g_bWidescreen = TRUE;
|
BOOL g_bWidescreen = TRUE;
|
||||||
//int g_numberOfSpeakersForMiles = 2; // number of speakers to pass to Miles, this is setup from init_audio_hardware
|
//int g_numberOfSpeakersForMiles = 2; // number of speakers to pass to Miles, this is setup from init_audio_hardware
|
||||||
|
|
||||||
@@ -912,9 +910,6 @@ int main()
|
|||||||
app.GAME_DEFINED_PROFILE_DATA_BYTES*XUSER_MAX_COUNT,
|
app.GAME_DEFINED_PROFILE_DATA_BYTES*XUSER_MAX_COUNT,
|
||||||
&app.uiGameDefinedDataChangedBitmask);
|
&app.uiGameDefinedDataChangedBitmask);
|
||||||
|
|
||||||
strncpy(g_Win64Username, ProfileManager.GetGamertag(0), 17);
|
|
||||||
g_Win64Username[16] = 0;
|
|
||||||
|
|
||||||
app.DebugPrintf("+++Main - after ProfileManager.Initialise\n");
|
app.DebugPrintf("+++Main - after ProfileManager.Initialise\n");
|
||||||
|
|
||||||
// register the awards
|
// register the awards
|
||||||
|
|||||||
@@ -133,8 +133,6 @@ extern "C" void* __wrap__malloc_init(size_t a_Boundary, size_t a_Size)
|
|||||||
// for a long time.
|
// for a long time.
|
||||||
//-------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------
|
||||||
|
|
||||||
char g_Win64Username[17] = {0};
|
|
||||||
|
|
||||||
BOOL g_bWidescreen = TRUE;
|
BOOL g_bWidescreen = TRUE;
|
||||||
//int g_numberOfSpeakersForMiles = 2; // number of speakers to pass to Miles, this is setup from init_audio_hardware
|
//int g_numberOfSpeakersForMiles = 2; // number of speakers to pass to Miles, this is setup from init_audio_hardware
|
||||||
|
|
||||||
@@ -603,8 +601,6 @@ int main()
|
|||||||
app.GAME_DEFINED_PROFILE_DATA_BYTES*XUSER_MAX_COUNT,
|
app.GAME_DEFINED_PROFILE_DATA_BYTES*XUSER_MAX_COUNT,
|
||||||
&app.uiGameDefinedDataChangedBitmask);
|
&app.uiGameDefinedDataChangedBitmask);
|
||||||
|
|
||||||
strncpy(g_Win64Username, ProfileManager.GetGamertag(0), 17);
|
|
||||||
g_Win64Username[16] = 0;
|
|
||||||
|
|
||||||
// register the awards
|
// register the awards
|
||||||
RegisterAwardsWithProfileManager();
|
RegisterAwardsWithProfileManager();
|
||||||
|
|||||||
@@ -539,12 +539,7 @@ void PlayerChunkMap::getChunkAndRemovePlayer(int x, int z, shared_ptr<ServerPlay
|
|||||||
// 4J - added - actually create & add player to a playerchunk, if there is one queued for this player.
|
// 4J - added - actually create & add player to a playerchunk, if there is one queued for this player.
|
||||||
void PlayerChunkMap::tickAddRequests(shared_ptr<ServerPlayer> player)
|
void PlayerChunkMap::tickAddRequests(shared_ptr<ServerPlayer> player)
|
||||||
{
|
{
|
||||||
#ifdef _WINDOWS64
|
if( addRequests.size() )
|
||||||
const int maxPerTick = 10;
|
|
||||||
#else
|
|
||||||
const int maxPerTick = 1;
|
|
||||||
#endif
|
|
||||||
for (int _processed = 0; _processed < maxPerTick && addRequests.size(); _processed++)
|
|
||||||
{
|
{
|
||||||
// Find the nearest chunk request to the player
|
// Find the nearest chunk request to the player
|
||||||
int px = (int)player->x;
|
int px = (int)player->x;
|
||||||
@@ -574,10 +569,6 @@ void PlayerChunkMap::tickAddRequests(shared_ptr<ServerPlayer> player)
|
|||||||
getChunk(itNearest->x, itNearest->z, true)->add(itNearest->player);
|
getChunk(itNearest->x, itNearest->z, true)->add(itNearest->player);
|
||||||
addRequests.erase(itNearest);
|
addRequests.erase(itNearest);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1577,10 +1577,7 @@ bool PlayerConnection::isDisconnected()
|
|||||||
void PlayerConnection::handleDebugOptions(shared_ptr<DebugOptionsPacket> packet)
|
void PlayerConnection::handleDebugOptions(shared_ptr<DebugOptionsPacket> packet)
|
||||||
{
|
{
|
||||||
//Player player = dynamic_pointer_cast<Player>( player->shared_from_this() );
|
//Player player = dynamic_pointer_cast<Player>( player->shared_from_this() );
|
||||||
if(app.DebugSettingsOn())
|
player->SetDebugOptions(packet->m_uiVal);
|
||||||
{
|
|
||||||
player->SetDebugOptions(packet->m_uiVal);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void PlayerConnection::handleCraftItem(shared_ptr<CraftItemPacket> packet)
|
void PlayerConnection::handleCraftItem(shared_ptr<CraftItemPacket> packet)
|
||||||
@@ -1590,10 +1587,6 @@ void PlayerConnection::handleCraftItem(shared_ptr<CraftItemPacket> packet)
|
|||||||
if(iRecipe == -1)
|
if(iRecipe == -1)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int recipeCount = (int)Recipes::getInstance()->getRecipies()->size();
|
|
||||||
if(iRecipe < 0 || iRecipe >= recipeCount)
|
|
||||||
return;
|
|
||||||
|
|
||||||
Recipy::INGREDIENTS_REQUIRED *pRecipeIngredientsRequired=Recipes::getInstance()->getRecipeIngredientsArray();
|
Recipy::INGREDIENTS_REQUIRED *pRecipeIngredientsRequired=Recipes::getInstance()->getRecipeIngredientsArray();
|
||||||
shared_ptr<ItemInstance> pTempItemInst=pRecipeIngredientsRequired[iRecipe].pRecipy->assemble(nullptr);
|
shared_ptr<ItemInstance> pTempItemInst=pRecipeIngredientsRequired[iRecipe].pRecipy->assemble(nullptr);
|
||||||
|
|
||||||
|
|||||||
@@ -38,35 +38,13 @@ PlayerRenderer::PlayerRenderer() : LivingEntityRenderer( new HumanoidModel(0), 0
|
|||||||
armorParts2 = new HumanoidModel(0.5f);
|
armorParts2 = new HumanoidModel(0.5f);
|
||||||
}
|
}
|
||||||
|
|
||||||
static unsigned int HsvToArgb(float h, float s, float v)
|
|
||||||
{
|
|
||||||
float c = v * s;
|
|
||||||
float x = c * (1.0f - fabsf(fmodf(h / 60.0f, 2.0f) - 1.0f));
|
|
||||||
float m = v - c;
|
|
||||||
float r, g, b;
|
|
||||||
if (h < 60) { r = c; g = x; b = 0; }
|
|
||||||
else if (h < 120) { r = x; g = c; b = 0; }
|
|
||||||
else if (h < 180) { r = 0; g = c; b = x; }
|
|
||||||
else if (h < 240) { r = 0; g = x; b = c; }
|
|
||||||
else if (h < 300) { r = x; g = 0; b = c; }
|
|
||||||
else { r = c; g = 0; b = x; }
|
|
||||||
unsigned int ri = (unsigned int)((r + m) * 255.0f);
|
|
||||||
unsigned int gi = (unsigned int)((g + m) * 255.0f);
|
|
||||||
unsigned int bi = (unsigned int)((b + m) * 255.0f);
|
|
||||||
return 0xFF000000 | (ri << 16) | (gi << 8) | bi;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned int PlayerRenderer::getNametagColour(int index)
|
unsigned int PlayerRenderer::getNametagColour(int index)
|
||||||
{
|
{
|
||||||
if( index >= 0 && index < MINECRAFT_NET_MAX_PLAYERS)
|
if( index >= 0 && index < MINECRAFT_NET_MAX_PLAYERS)
|
||||||
{
|
{
|
||||||
return s_nametagColors[index];
|
return s_nametagColors[index];
|
||||||
}
|
}
|
||||||
|
return 0xFF000000;
|
||||||
float hue = fmodf(index * 137.508f, 360.0f);
|
|
||||||
float sat = 0.65f + (float)(index % 3) * 0.15f;
|
|
||||||
float val = 0.75f + (float)(index % 4) * 0.08f;
|
|
||||||
return HsvToArgb(hue, sat, val);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int PlayerRenderer::prepareArmor(shared_ptr<LivingEntity> _player, int layer, float a)
|
int PlayerRenderer::prepareArmor(shared_ptr<LivingEntity> _player, int layer, float a)
|
||||||
|
|||||||
@@ -1086,9 +1086,7 @@ void ServerLevel::entityRemoved(shared_ptr<Entity> e)
|
|||||||
|
|
||||||
shared_ptr<Entity> ServerLevel::getEntity(int id)
|
shared_ptr<Entity> ServerLevel::getEntity(int id)
|
||||||
{
|
{
|
||||||
AUTO_VAR(it, entitiesById.find(id));
|
return entitiesById[id];
|
||||||
if(it != entitiesById.end()) return it->second;
|
|
||||||
return nullptr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ServerLevel::addGlobalEntity(shared_ptr<Entity> e)
|
bool ServerLevel::addGlobalEntity(shared_ptr<Entity> e)
|
||||||
|
|||||||
@@ -329,10 +329,6 @@ void ServerPlayer::doTickA()
|
|||||||
// 4J - split off the chunk sending bit of the tick here from ::doTick so we can do this exactly once per player per server tick
|
// 4J - split off the chunk sending bit of the tick here from ::doTick so we can do this exactly once per player per server tick
|
||||||
void ServerPlayer::doChunkSendingTick(bool dontDelayChunks)
|
void ServerPlayer::doChunkSendingTick(bool dontDelayChunks)
|
||||||
{
|
{
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
for (int _w64cs = 0; _w64cs < 4; _w64cs++)
|
|
||||||
{
|
|
||||||
#endif
|
|
||||||
// printf("[%d] %s: sendChunks: %d, empty: %d\n",tickCount, connection->getNetworkPlayer()->GetUID().getOnlineID(),sendChunks,chunksToSend.empty());
|
// printf("[%d] %s: sendChunks: %d, empty: %d\n",tickCount, connection->getNetworkPlayer()->GetUID().getOnlineID(),sendChunks,chunksToSend.empty());
|
||||||
if (!chunksToSend.empty())
|
if (!chunksToSend.empty())
|
||||||
{
|
{
|
||||||
@@ -371,17 +367,6 @@ void ServerPlayer::doChunkSendingTick(bool dontDelayChunks)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if defined(_WINDOWS64)
|
|
||||||
if( dontDelayChunks ||
|
|
||||||
((connection->countDelayedPackets() < 16 )&&
|
|
||||||
(g_NetworkManager.GetHostPlayer()->GetSendQueueSizeMessages( NULL, true ) < 16 )&&
|
|
||||||
!connection->done) )
|
|
||||||
{
|
|
||||||
lastBrupSendTickCount = tickCount;
|
|
||||||
okToSend = true;
|
|
||||||
MinecraftServer::s_slowQueuePacketSent = true;
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
bool canSendToPlayer = MinecraftServer::chunkPacketManagement_CanSendTo(connection->getNetworkPlayer());
|
bool canSendToPlayer = MinecraftServer::chunkPacketManagement_CanSendTo(connection->getNetworkPlayer());
|
||||||
|
|
||||||
// app.DebugPrintf(">>> %d\n", canSendToPlayer);
|
// app.DebugPrintf(">>> %d\n", canSendToPlayer);
|
||||||
@@ -423,7 +408,6 @@ void ServerPlayer::doChunkSendingTick(bool dontDelayChunks)
|
|||||||
{
|
{
|
||||||
// app.DebugPrintf(" - <NOT OK>\n");
|
// app.DebugPrintf(" - <NOT OK>\n");
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (okToSend)
|
if (okToSend)
|
||||||
@@ -501,9 +485,6 @@ void ServerPlayer::doChunkSendingTick(bool dontDelayChunks)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ServerPlayer::doTickB()
|
void ServerPlayer::doTickB()
|
||||||
|
|||||||
Binary file not shown.
@@ -0,0 +1,4 @@
|
|||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
const int MINECRAFT_NET_MAX_PLAYERS = 8;
|
||||||
@@ -30,7 +30,6 @@
|
|||||||
#include "..\Windows64\Leaderboards\WindowsLeaderboardManager.h"
|
#include "..\Windows64\Leaderboards\WindowsLeaderboardManager.h"
|
||||||
#endif
|
#endif
|
||||||
#include "..\Common\XUI\XUI_Scene_Container.h"
|
#include "..\Common\XUI\XUI_Scene_Container.h"
|
||||||
#include "..\Common\Network\NetworkSocketLayer.h"
|
|
||||||
#include "..\..\Minecraft.Client\Tesselator.h"
|
#include "..\..\Minecraft.Client\Tesselator.h"
|
||||||
#include "..\..\Minecraft.Client\Options.h"
|
#include "..\..\Minecraft.Client\Options.h"
|
||||||
#include "Sentient\SentientManager.h"
|
#include "Sentient\SentientManager.h"
|
||||||
@@ -94,8 +93,6 @@ D3DSAMPLERSTATETYPE SamplerStateModes[]=
|
|||||||
//-------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
char g_Win64Username[17] = {0};
|
|
||||||
|
|
||||||
BOOL g_bWidescreen = TRUE;
|
BOOL g_bWidescreen = TRUE;
|
||||||
|
|
||||||
|
|
||||||
@@ -435,9 +432,6 @@ int __cdecl main()
|
|||||||
&app.uiGameDefinedDataChangedBitmask
|
&app.uiGameDefinedDataChangedBitmask
|
||||||
);
|
);
|
||||||
|
|
||||||
strncpy(g_Win64Username, ProfileManager.GetGamertag(0), 17);
|
|
||||||
g_Win64Username[16] = 0;
|
|
||||||
|
|
||||||
// register the awards
|
// register the awards
|
||||||
ProfileManager.RegisterAward(eAward_TakingInventory, ACHIEVEMENT_01, eAwardType_Achievement);
|
ProfileManager.RegisterAward(eAward_TakingInventory, ACHIEVEMENT_01, eAwardType_Achievement);
|
||||||
ProfileManager.RegisterAward(eAward_GettingWood, ACHIEVEMENT_02, eAwardType_Achievement);
|
ProfileManager.RegisterAward(eAward_GettingWood, ACHIEVEMENT_02, eAwardType_Achievement);
|
||||||
@@ -500,8 +494,6 @@ int __cdecl main()
|
|||||||
// ProfileManager for XN_LIVE_INVITE_ACCEPTED for QNet.
|
// ProfileManager for XN_LIVE_INVITE_ACCEPTED for QNet.
|
||||||
g_NetworkManager.Initialise();
|
g_NetworkManager.Initialise();
|
||||||
|
|
||||||
NetworkSocketLayer::Initialize();
|
|
||||||
|
|
||||||
app.InitGameSettings();
|
app.InitGameSettings();
|
||||||
|
|
||||||
// debug switch to trial version
|
// debug switch to trial version
|
||||||
|
|||||||
@@ -5,12 +5,6 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#ifdef _XBOX
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
#define _DISABLE_XBLIVE
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//#include <xtl.h>
|
//#include <xtl.h>
|
||||||
//#include <xboxmath.h>
|
//#include <xboxmath.h>
|
||||||
|
|
||||||
|
|||||||
@@ -56,9 +56,15 @@ void AddEntityPacket::read(DataInputStream *dis) // throws IOException TODO 4J
|
|||||||
{
|
{
|
||||||
id = dis->readShort();
|
id = dis->readShort();
|
||||||
type = dis->readByte();
|
type = dis->readByte();
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
x = dis->readInt();
|
x = dis->readInt();
|
||||||
y = dis->readInt();
|
y = dis->readInt();
|
||||||
z = dis->readInt();
|
z = dis->readInt();
|
||||||
|
#else
|
||||||
|
x = dis->readShort();
|
||||||
|
y = dis->readShort();
|
||||||
|
z = dis->readShort();
|
||||||
|
#endif
|
||||||
yRot = dis->readByte();
|
yRot = dis->readByte();
|
||||||
xRot = dis->readByte();
|
xRot = dis->readByte();
|
||||||
data = dis->readInt();
|
data = dis->readInt();
|
||||||
@@ -74,9 +80,15 @@ void AddEntityPacket::write(DataOutputStream *dos) // throws IOException TODO 4J
|
|||||||
{
|
{
|
||||||
dos->writeShort(id);
|
dos->writeShort(id);
|
||||||
dos->writeByte(type);
|
dos->writeByte(type);
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeInt(x);
|
dos->writeInt(x);
|
||||||
dos->writeInt(y);
|
dos->writeInt(y);
|
||||||
dos->writeInt(z);
|
dos->writeInt(z);
|
||||||
|
#else
|
||||||
|
dos->writeShort(x);
|
||||||
|
dos->writeShort(y);
|
||||||
|
dos->writeShort(z);
|
||||||
|
#endif
|
||||||
dos->writeByte(yRot);
|
dos->writeByte(yRot);
|
||||||
dos->writeByte(xRot);
|
dos->writeByte(xRot);
|
||||||
dos->writeInt(data);
|
dos->writeInt(data);
|
||||||
|
|||||||
@@ -68,9 +68,15 @@ void AddMobPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
{
|
{
|
||||||
id = dis->readShort();
|
id = dis->readShort();
|
||||||
type = dis->readByte() & 0xff;
|
type = dis->readByte() & 0xff;
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
x = dis->readInt();
|
x = dis->readInt();
|
||||||
y = dis->readInt();
|
y = dis->readInt();
|
||||||
z = dis->readInt();
|
z = dis->readInt();
|
||||||
|
#else
|
||||||
|
x = dis->readShort();
|
||||||
|
y = dis->readShort();
|
||||||
|
z = dis->readShort();
|
||||||
|
#endif
|
||||||
yRot = dis->readByte();
|
yRot = dis->readByte();
|
||||||
xRot = dis->readByte();
|
xRot = dis->readByte();
|
||||||
yHeadRot = dis->readByte();
|
yHeadRot = dis->readByte();
|
||||||
@@ -86,9 +92,15 @@ void AddMobPacket::write(DataOutputStream *dos) //throws IOException
|
|||||||
{
|
{
|
||||||
dos->writeShort(id);
|
dos->writeShort(id);
|
||||||
dos->writeByte(type & 0xff);
|
dos->writeByte(type & 0xff);
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeInt(x);
|
dos->writeInt(x);
|
||||||
dos->writeInt(y);
|
dos->writeInt(y);
|
||||||
dos->writeInt(z);
|
dos->writeInt(z);
|
||||||
|
#else
|
||||||
|
dos->writeShort(x);
|
||||||
|
dos->writeShort(y);
|
||||||
|
dos->writeShort(z);
|
||||||
|
#endif
|
||||||
dos->writeByte(yRot);
|
dos->writeByte(yRot);
|
||||||
dos->writeByte(xRot);
|
dos->writeByte(xRot);
|
||||||
dos->writeByte(yHeadRot);
|
dos->writeByte(yHeadRot);
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ void AwardStatPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
|
|
||||||
// Read parameter blob.
|
// Read parameter blob.
|
||||||
int length = dis->readInt();
|
int length = dis->readInt();
|
||||||
if(length > 0 && length <= 65536)
|
if(length > 0)
|
||||||
{
|
{
|
||||||
m_paramData = byteArray(length);
|
m_paramData = byteArray(length);
|
||||||
dis->readFully(m_paramData);
|
dis->readFully(m_paramData);
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ BlockRegionUpdatePacket::BlockRegionUpdatePacket(int x, int y, int z, int xs, in
|
|||||||
unsigned char *ucTemp = new unsigned char[(256 * 16 * 16 * 5)/2];
|
unsigned char *ucTemp = new unsigned char[(256 * 16 * 16 * 5)/2];
|
||||||
unsigned int inputSize = (256 * 16 * 16 * 5)/2;
|
unsigned int inputSize = (256 * 16 * 16 * 5)/2;
|
||||||
|
|
||||||
Compression::getCompression()->CompressRLE(ucTemp, &inputSize, rawBuffer.data, (unsigned int) rawBuffer.length);
|
Compression::getCompression()->CompressLZXRLE(ucTemp, &inputSize, rawBuffer.data, (unsigned int) rawBuffer.length);
|
||||||
//app.DebugPrintf("Chunk (%d,%d) compressed from %d to size %d\n", x>>4, z>>4, rawBuffer.length, inputSize);
|
//app.DebugPrintf("Chunk (%d,%d) compressed from %d to size %d\n", x>>4, z>>4, rawBuffer.length, inputSize);
|
||||||
unsigned char *ucTemp2 = new unsigned char[inputSize];
|
unsigned char *ucTemp2 = new unsigned char[inputSize];
|
||||||
memcpy(ucTemp2,ucTemp,inputSize);
|
memcpy(ucTemp2,ucTemp,inputSize);
|
||||||
@@ -103,12 +103,6 @@ void BlockRegionUpdatePacket::read(DataInputStream *dis) //throws IOException
|
|||||||
levelIdx = ( size >> 30 ) & 3;
|
levelIdx = ( size >> 30 ) & 3;
|
||||||
size &= 0x3fffffff;
|
size &= 0x3fffffff;
|
||||||
|
|
||||||
const int MAX_COMPRESSED_CHUNK_SIZE = 5 * 1024 * 1024;
|
|
||||||
if(size < 0 || size > MAX_COMPRESSED_CHUNK_SIZE)
|
|
||||||
{
|
|
||||||
size = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(size == 0)
|
if(size == 0)
|
||||||
{
|
{
|
||||||
buffer = byteArray();
|
buffer = byteArray();
|
||||||
@@ -126,7 +120,7 @@ void BlockRegionUpdatePacket::read(DataInputStream *dis) //throws IOException
|
|||||||
|
|
||||||
if( success )
|
if( success )
|
||||||
{
|
{
|
||||||
Compression::getCompression()->DecompressRLE( buffer.data, &outputSize, compressedBuffer.data, size);
|
Compression::getCompression()->DecompressLZXRLE( buffer.data, &outputSize, compressedBuffer.data, size);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -137,10 +131,7 @@ void BlockRegionUpdatePacket::read(DataInputStream *dis) //throws IOException
|
|||||||
|
|
||||||
|
|
||||||
delete [] compressedBuffer.data;
|
delete [] compressedBuffer.data;
|
||||||
if(buffer.length != outputSize)
|
assert(buffer.length == outputSize);
|
||||||
{
|
|
||||||
app.DebugPrintf("BlockRegionUpdatePacket: decompressed size mismatch (expected %d, got %d)\n", buffer.length, outputSize);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,14 +10,8 @@
|
|||||||
//offset - the offset in the buffer of the first byte to read.
|
//offset - the offset in the buffer of the first byte to read.
|
||||||
//length - the maximum number of bytes to read from the buffer.
|
//length - the maximum number of bytes to read from the buffer.
|
||||||
ByteArrayInputStream::ByteArrayInputStream(byteArray buf, unsigned int offset, unsigned int length)
|
ByteArrayInputStream::ByteArrayInputStream(byteArray buf, unsigned int offset, unsigned int length)
|
||||||
: pos( offset ), mark( offset )
|
: pos( offset ), count( min( offset+length, buf.length ) ), mark( offset )
|
||||||
{
|
{
|
||||||
if( offset > buf.length )
|
|
||||||
count = buf.length;
|
|
||||||
else if( length > buf.length - offset )
|
|
||||||
count = buf.length;
|
|
||||||
else
|
|
||||||
count = offset + length;
|
|
||||||
this->buf = buf;
|
this->buf = buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,12 +31,7 @@ void ByteArrayOutputStream::write(unsigned int b)
|
|||||||
{
|
{
|
||||||
// If we will fill the buffer we need to make it bigger
|
// If we will fill the buffer we need to make it bigger
|
||||||
if( count + 1 >= buf.length )
|
if( count + 1 >= buf.length )
|
||||||
{
|
buf.resize( buf.length * 2 );
|
||||||
unsigned int newSize = buf.length * 2;
|
|
||||||
if( newSize <= buf.length )
|
|
||||||
return;
|
|
||||||
buf.resize( newSize );
|
|
||||||
}
|
|
||||||
|
|
||||||
buf[count] = (byte) b;
|
buf[count] = (byte) b;
|
||||||
count++;
|
count++;
|
||||||
|
|||||||
@@ -21,8 +21,6 @@ public:
|
|||||||
void load(DataInput *dis, int tagDepth)
|
void load(DataInput *dis, int tagDepth)
|
||||||
{
|
{
|
||||||
int length = dis->readInt();
|
int length = dis->readInt();
|
||||||
|
|
||||||
if (length < 0 || length > 2 * 1024 * 1024) length = 0;
|
|
||||||
|
|
||||||
if ( data.data ) delete[] data.data;
|
if ( data.data ) delete[] data.data;
|
||||||
data = byteArray(length);
|
data = byteArray(length);
|
||||||
|
|||||||
@@ -51,10 +51,17 @@ ChunkTilesUpdatePacket::ChunkTilesUpdatePacket(int xc, int zc, shortArray positi
|
|||||||
void ChunkTilesUpdatePacket::read(DataInputStream *dis) //throws IOException
|
void ChunkTilesUpdatePacket::read(DataInputStream *dis) //throws IOException
|
||||||
{
|
{
|
||||||
// 4J - changed format. See comments in write method.
|
// 4J - changed format. See comments in write method.
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
xc = dis->readShort();
|
xc = dis->readShort();
|
||||||
zc = dis->readShort();
|
zc = dis->readShort();
|
||||||
xc = ( xc << 16 ) >> 16;
|
xc = ( xc << 16 ) >> 16;
|
||||||
zc = ( zc << 16 ) >> 16;
|
zc = ( zc << 16 ) >> 16;
|
||||||
|
#else
|
||||||
|
xc = dis->read();
|
||||||
|
zc = dis->read();
|
||||||
|
xc = ( xc << 24 ) >> 24;
|
||||||
|
zc = ( zc << 24 ) >> 24;
|
||||||
|
#endif
|
||||||
|
|
||||||
int countAndFlags = dis->readByte();
|
int countAndFlags = dis->readByte();
|
||||||
bool dataAllZero = (( countAndFlags & 0x80 ) == 0x80 );
|
bool dataAllZero = (( countAndFlags & 0x80 ) == 0x80 );
|
||||||
@@ -90,8 +97,13 @@ void ChunkTilesUpdatePacket::read(DataInputStream *dis) //throws IOException
|
|||||||
void ChunkTilesUpdatePacket::write(DataOutputStream *dos) //throws IOException
|
void ChunkTilesUpdatePacket::write(DataOutputStream *dos) //throws IOException
|
||||||
{
|
{
|
||||||
// 4J - changed format to reduce size of these packets.
|
// 4J - changed format to reduce size of these packets.
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeShort(xc);
|
dos->writeShort(xc);
|
||||||
dos->writeShort(zc);
|
dos->writeShort(zc);
|
||||||
|
#else
|
||||||
|
dos->write(xc);
|
||||||
|
dos->write(zc);
|
||||||
|
#endif
|
||||||
// Determine if we've got any data elements that are non-zero - a large % of these packets set all data to zero, so we don't
|
// Determine if we've got any data elements that are non-zero - a large % of these packets set all data to zero, so we don't
|
||||||
// bother sending all those zeros in that case.
|
// bother sending all those zeros in that case.
|
||||||
bool dataAllZero = true;
|
bool dataAllZero = true;
|
||||||
|
|||||||
@@ -32,9 +32,7 @@ void ComplexItemDataPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
itemType = dis->readShort();
|
itemType = dis->readShort();
|
||||||
itemId = dis->readShort();
|
itemId = dis->readShort();
|
||||||
|
|
||||||
int dataLength = dis->readUnsignedShort() & 0xffff;
|
data = charArray(dis->readUnsignedShort() & 0xffff);
|
||||||
if(dataLength > 32767) dataLength = 0;
|
|
||||||
data = charArray(dataLength);
|
|
||||||
dis->readFully(data);
|
dis->readFully(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -43,12 +43,9 @@ public:
|
|||||||
}
|
}
|
||||||
tags.clear();
|
tags.clear();
|
||||||
Tag *tag;
|
Tag *tag;
|
||||||
int tagCount = 0;
|
|
||||||
const int MAX_COMPOUND_TAGS = 10000;
|
|
||||||
while ((tag = Tag::readNamedTag(dis))->getId() != Tag::TAG_End)
|
while ((tag = Tag::readNamedTag(dis))->getId() != Tag::TAG_End)
|
||||||
{
|
{
|
||||||
tags[tag->getName()] = tag;
|
tags[tag->getName()] = tag;
|
||||||
if(++tagCount >= MAX_COMPOUND_TAGS) break;
|
|
||||||
}
|
}
|
||||||
delete tag;
|
delete tag;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -108,8 +108,8 @@ Connection::Connection(Socket *socket, const wstring& id, PacketListener *packet
|
|||||||
const char *szId = wstringtofilename(id);
|
const char *szId = wstringtofilename(id);
|
||||||
char readThreadName[256];
|
char readThreadName[256];
|
||||||
char writeThreadName[256];
|
char writeThreadName[256];
|
||||||
sprintf(readThreadName, "%.240s read\n", szId);
|
sprintf(readThreadName,"%s read\n",szId);
|
||||||
sprintf(writeThreadName, "%.240s write\n", szId);
|
sprintf(writeThreadName,"%s write\n",szId);
|
||||||
|
|
||||||
readThread = new C4JThread(runRead, (void*)this, readThreadName, READ_STACK_SIZE);
|
readThread = new C4JThread(runRead, (void*)this, readThreadName, READ_STACK_SIZE);
|
||||||
writeThread = new C4JThread(runWrite, this, writeThreadName, WRITE_STACK_SIZE);
|
writeThread = new C4JThread(runWrite, this, writeThreadName, WRITE_STACK_SIZE);
|
||||||
@@ -341,7 +341,7 @@ bool Connection::readTick()
|
|||||||
// printf("Con:0x%x readTick close EOS\n",this);
|
// printf("Con:0x%x readTick close EOS\n",this);
|
||||||
|
|
||||||
// 4J Stu - Remove this line
|
// 4J Stu - Remove this line
|
||||||
// Fix for #10410 - UI: If the player is removed from a splitscreened hosts game, the next game that player joins will produce a message stating that the host has left.
|
// Fix for #10410 - UI: If the player is removed from a splitscreened host’s game, the next game that player joins will produce a message stating that the host has left.
|
||||||
//close(DisconnectPacket::eDisconnect_EndOfStream);
|
//close(DisconnectPacket::eDisconnect_EndOfStream);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -666,7 +666,7 @@ int Connection::runClose(void* lpParam)
|
|||||||
|
|
||||||
//try {
|
//try {
|
||||||
|
|
||||||
Sleep(500);
|
Sleep(2000);
|
||||||
if (con->running)
|
if (con->running)
|
||||||
{
|
{
|
||||||
// 4J TODO writeThread.interrupt();
|
// 4J TODO writeThread.interrupt();
|
||||||
@@ -690,7 +690,7 @@ int Connection::runSendAndQuit(void* lpParam)
|
|||||||
|
|
||||||
//try {
|
//try {
|
||||||
|
|
||||||
Sleep(500);
|
Sleep(2000);
|
||||||
if (con->running)
|
if (con->running)
|
||||||
{
|
{
|
||||||
// 4J TODO writeThread.interrupt();
|
// 4J TODO writeThread.interrupt();
|
||||||
|
|||||||
@@ -32,9 +32,6 @@ void ContainerSetContentPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
{
|
{
|
||||||
containerId = dis->readByte();
|
containerId = dis->readByte();
|
||||||
int count = dis->readShort();
|
int count = dis->readShort();
|
||||||
|
|
||||||
if(count < 0 || count > 256) count = 0;
|
|
||||||
|
|
||||||
items = ItemInstanceArray(count);
|
items = ItemInstanceArray(count);
|
||||||
for (int i = 0; i < count; i++)
|
for (int i = 0; i < count; i++)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ void ContainerSetSlotPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
// 4J Stu - TU-1 hotfix
|
// 4J Stu - TU-1 hotfix
|
||||||
// Fix for #13142 - Holding down the A button on the furnace ingredient slot causes the UI to display incorrect item counts
|
// Fix for #13142 - Holding down the A button on the furnace ingredient slot causes the UI to display incorrect item counts
|
||||||
BYTE byteId = dis->readByte();
|
BYTE byteId = dis->readByte();
|
||||||
containerId = (char)(signed char)byteId;
|
containerId = *(char *)&byteId;
|
||||||
slot = dis->readShort();
|
slot = dis->readShort();
|
||||||
item = readItem(dis);
|
item = readItem(dis);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ void CustomPayloadPacket::read(DataInputStream *dis)
|
|||||||
identifier = readUtf(dis, 20);
|
identifier = readUtf(dis, 20);
|
||||||
length = dis->readShort();
|
length = dis->readShort();
|
||||||
|
|
||||||
if (length > 0 && length <= Short::MAX_VALUE)
|
if (length > 0 && length < Short::MAX_VALUE)
|
||||||
{
|
{
|
||||||
if(data.data != NULL)
|
if(data.data != NULL)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -303,10 +303,6 @@ wstring DataInputStream::readUTF()
|
|||||||
int b = stream->read();
|
int b = stream->read();
|
||||||
unsigned short UTFLength = (unsigned short) (((a & 0xff) << 8) | (b & 0xff));
|
unsigned short UTFLength = (unsigned short) (((a & 0xff) << 8) | (b & 0xff));
|
||||||
|
|
||||||
const unsigned short MAX_UTF_LENGTH = 32767;
|
|
||||||
if( UTFLength > MAX_UTF_LENGTH )
|
|
||||||
return outputString;
|
|
||||||
|
|
||||||
//// 4J Stu - I decided while writing DataOutputStream that we didn't need to bother using the UTF8 format
|
//// 4J Stu - I decided while writing DataOutputStream that we didn't need to bother using the UTF8 format
|
||||||
//// used in the java libs, and just write in/out as wchar_t all the time
|
//// used in the java libs, and just write in/out as wchar_t all the time
|
||||||
|
|
||||||
|
|||||||
@@ -432,28 +432,6 @@ void DirectoryLevelStorage::save(shared_ptr<Player> player)
|
|||||||
CompoundTag *DirectoryLevelStorage::load(shared_ptr<Player> player)
|
CompoundTag *DirectoryLevelStorage::load(shared_ptr<Player> player)
|
||||||
{
|
{
|
||||||
CompoundTag *tag = loadPlayerDataTag( player->getXuid() );
|
CompoundTag *tag = loadPlayerDataTag( player->getXuid() );
|
||||||
|
|
||||||
#if defined(_WINDOWS64) || defined(DISABLE_PSN) || defined(_DISABLE_XBLIVE)
|
|
||||||
if (tag == NULL)
|
|
||||||
{
|
|
||||||
const PlayerUID WIN64_XUID_BASE = (PlayerUID)0xe000d45248242f2e;
|
|
||||||
for (int i = 0; i < MINECRAFT_NET_MAX_PLAYERS; i++)
|
|
||||||
{
|
|
||||||
PlayerUID oldXuid = WIN64_XUID_BASE + i;
|
|
||||||
tag = loadPlayerDataTag(oldXuid);
|
|
||||||
if (tag != NULL)
|
|
||||||
{
|
|
||||||
ConsoleSavePath oldFile = ConsoleSavePath(playerDir.getName() + _toString(oldXuid) + L".dat");
|
|
||||||
if (m_saveFile->doesFileExist(oldFile))
|
|
||||||
{
|
|
||||||
m_saveFile->deleteFile(m_saveFile->createFile(oldFile));
|
|
||||||
}
|
|
||||||
app.DebugPrintf("Migrated player data from old XUID %llu to new XUID %llu\n", oldXuid, player->getXuid());
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
if (tag != NULL)
|
if (tag != NULL)
|
||||||
{
|
{
|
||||||
player->load(tag);
|
player->load(tag);
|
||||||
|
|||||||
@@ -56,8 +56,6 @@ void ExplodePacket::read(DataInputStream *dis) //throws IOException
|
|||||||
r = dis->readFloat();
|
r = dis->readFloat();
|
||||||
int count = dis->readInt();
|
int count = dis->readInt();
|
||||||
|
|
||||||
if(count < 0 || count > 32768) count = 0;
|
|
||||||
|
|
||||||
int xp = (int)x;
|
int xp = (int)x;
|
||||||
int yp = (int)y;
|
int yp = (int)y;
|
||||||
int zp = (int)z;
|
int zp = (int)z;
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ void GameCommandPacket::read(DataInputStream *dis)
|
|||||||
command = (EGameCommand)dis->readInt();
|
command = (EGameCommand)dis->readInt();
|
||||||
length = dis->readShort();
|
length = dis->readShort();
|
||||||
|
|
||||||
if (length > 0 && length <= Short::MAX_VALUE)
|
if (length > 0 && length < Short::MAX_VALUE)
|
||||||
{
|
{
|
||||||
if(data.data != NULL)
|
if(data.data != NULL)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -35,7 +35,6 @@ public:
|
|||||||
void load(DataInput *dis, int tagDepth)
|
void load(DataInput *dis, int tagDepth)
|
||||||
{
|
{
|
||||||
int length = dis->readInt();
|
int length = dis->readInt();
|
||||||
if (length < 0 || length > 65536) length = 0;
|
|
||||||
|
|
||||||
if ( data.data ) delete[] data.data;
|
if ( data.data ) delete[] data.data;
|
||||||
data = intArray(length);
|
data = intArray(length);
|
||||||
|
|||||||
@@ -1197,6 +1197,7 @@ void LevelChunk::addEntity(shared_ptr<Entity> e)
|
|||||||
int zc = Mth::floor(e->z / 16);
|
int zc = Mth::floor(e->z / 16);
|
||||||
if (xc != this->x || zc != this->z)
|
if (xc != this->x || zc != this->z)
|
||||||
{
|
{
|
||||||
|
app.DebugPrintf("Wrong location!");
|
||||||
// System.out.println("Wrong location! " + e);
|
// System.out.println("Wrong location! " + e);
|
||||||
// Thread.dumpStack();
|
// Thread.dumpStack();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,13 +37,11 @@ public:
|
|||||||
}
|
}
|
||||||
type = dis->readByte();
|
type = dis->readByte();
|
||||||
int size = dis->readInt();
|
int size = dis->readInt();
|
||||||
if (size < 0 || size > 10000) size = 0;
|
|
||||||
|
|
||||||
list.clear();
|
list.clear();
|
||||||
for (int i = 0; i < size; i++)
|
for (int i = 0; i < size; i++)
|
||||||
{
|
{
|
||||||
Tag *tag = Tag::newTag(type, L"");
|
Tag *tag = Tag::newTag(type, L"");
|
||||||
if (tag == NULL) break;
|
|
||||||
tag->load(dis, tagDepth);
|
tag->load(dis, tagDepth);
|
||||||
list.push_back(tag);
|
list.push_back(tag);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -123,8 +123,10 @@ void LoginPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
m_isGuest = dis->readBoolean();
|
m_isGuest = dis->readBoolean();
|
||||||
m_newSeaLevel = dis->readBoolean();
|
m_newSeaLevel = dis->readBoolean();
|
||||||
m_uiGamePrivileges = dis->readInt();
|
m_uiGamePrivileges = dis->readInt();
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
m_xzSize = dis->readShort();
|
m_xzSize = dis->readShort();
|
||||||
m_hellScale = dis->read();
|
m_hellScale = dis->read();
|
||||||
|
#endif
|
||||||
app.DebugPrintf("LoginPacket::read - Difficulty = %d\n",difficulty);
|
app.DebugPrintf("LoginPacket::read - Difficulty = %d\n",difficulty);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -158,8 +160,10 @@ void LoginPacket::write(DataOutputStream *dos) //throws IOException
|
|||||||
dos->writeBoolean(m_isGuest);
|
dos->writeBoolean(m_isGuest);
|
||||||
dos->writeBoolean(m_newSeaLevel);
|
dos->writeBoolean(m_newSeaLevel);
|
||||||
dos->writeInt(m_uiGamePrivileges);
|
dos->writeInt(m_uiGamePrivileges);
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeShort(m_xzSize);
|
dos->writeShort(m_xzSize);
|
||||||
dos->write(m_hellScale);
|
dos->write(m_hellScale);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void LoginPacket::handle(PacketListener *listener)
|
void LoginPacket::handle(PacketListener *listener)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
<ProjectConfiguration Include="ContentPackage_NO_TU|Durango">
|
<ProjectConfiguration Include="ContentPackage_NO_TU|Durango">
|
||||||
@@ -201,7 +201,6 @@
|
|||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
<PlatformToolset>v110</PlatformToolset>
|
<PlatformToolset>v110</PlatformToolset>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Durango'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Durango'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
@@ -859,7 +858,7 @@
|
|||||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
<PreprocessorDefinitions>_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_LIB;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG_MENUS_ENABLED;_LIB;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<CallAttributedProfiling>Disabled</CallAttributedProfiling>
|
<CallAttributedProfiling>Disabled</CallAttributedProfiling>
|
||||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||||
<ShowIncludes>false</ShowIncludes>
|
<ShowIncludes>false</ShowIncludes>
|
||||||
@@ -1448,7 +1447,7 @@
|
|||||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||||
<CppExceptions>true</CppExceptions>
|
<CppExceptions>true</CppExceptions>
|
||||||
<OptimizationLevel>Level2</OptimizationLevel>
|
<OptimizationLevel>Level2</OptimizationLevel>
|
||||||
<PreprocessorDefinitions>SPLIT_SAVES;_EXTENDED_ACHIEVEMENTS;DEBUG_MENUS_ENABLED</PreprocessorDefinitions>
|
<PreprocessorDefinitions>SPLIT_SAVES;_LARGE_WORLDS;_EXTENDED_ACHIEVEMENTS;DEBUG_MENUS_ENABLED</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|ORBIS'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ContentPackage|ORBIS'">
|
||||||
|
|||||||
+17
-21
@@ -268,13 +268,7 @@ void Packet::updatePacketStatsPIX()
|
|||||||
shared_ptr<Packet> Packet::getPacket(int id)
|
shared_ptr<Packet> Packet::getPacket(int id)
|
||||||
{
|
{
|
||||||
// 4J: Removed try/catch
|
// 4J: Removed try/catch
|
||||||
#ifdef __PS3__
|
return idToCreateMap[id]();
|
||||||
boost::unordered_map<int, packetCreateFn>::iterator it = idToCreateMap.find(id);
|
|
||||||
#else
|
|
||||||
auto it = idToCreateMap.find(id);
|
|
||||||
#endif
|
|
||||||
if (it == idToCreateMap.end()) return shared_ptr<Packet>();
|
|
||||||
return it->second();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Packet::writeBytes(DataOutputStream *dataoutputstream, byteArray bytes)
|
void Packet::writeBytes(DataOutputStream *dataoutputstream, byteArray bytes)
|
||||||
@@ -336,12 +330,13 @@ shared_ptr<Packet> Packet::readPacket(DataInputStream *dis, bool isServer) // th
|
|||||||
if ((isServer && serverReceivedPackets.find(id) == serverReceivedPackets.end()) || (!isServer && clientReceivedPackets.find(id) == clientReceivedPackets.end()))
|
if ((isServer && serverReceivedPackets.find(id) == serverReceivedPackets.end()) || (!isServer && clientReceivedPackets.find(id) == clientReceivedPackets.end()))
|
||||||
{
|
{
|
||||||
//app.DebugPrintf("Bad packet id %d\n", id);
|
//app.DebugPrintf("Bad packet id %d\n", id);
|
||||||
return nullptr;
|
__debugbreak();
|
||||||
|
assert(false);
|
||||||
// throw new IOException(wstring(L"Bad packet id ") + _toString<int>(id));
|
// throw new IOException(wstring(L"Bad packet id ") + _toString<int>(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
packet = getPacket(id);
|
packet = getPacket(id);
|
||||||
if (packet == NULL) return nullptr;//throw new IOException(wstring(L"Bad packet id ") + _toString<int>(id));
|
if (packet == NULL) assert(false);//throw new IOException(wstring(L"Bad packet id ") + _toString<int>(id));
|
||||||
|
|
||||||
//app.DebugPrintf("%s reading packet %d\n", isServer ? "Server" : "Client", packet->getId());
|
//app.DebugPrintf("%s reading packet %d\n", isServer ? "Server" : "Client", packet->getId());
|
||||||
packet->read(dis);
|
packet->read(dis);
|
||||||
@@ -399,9 +394,17 @@ wstring Packet::readUtf(DataInputStream *dis, int maxLength) // throws IOExcepti
|
|||||||
{
|
{
|
||||||
|
|
||||||
short stringLength = dis->readShort();
|
short stringLength = dis->readShort();
|
||||||
if (stringLength > maxLength || stringLength < 0)
|
if (stringLength > maxLength)
|
||||||
{
|
{
|
||||||
return L"";
|
wstringstream stream;
|
||||||
|
stream << L"Received string length longer than maximum allowed (" << stringLength << " > " << maxLength << ")";
|
||||||
|
assert(false);
|
||||||
|
// throw new IOException( stream.str() );
|
||||||
|
}
|
||||||
|
if (stringLength < 0)
|
||||||
|
{
|
||||||
|
assert(false);
|
||||||
|
// throw new IOException(L"Received string length is less than zero! Weird string!");
|
||||||
}
|
}
|
||||||
|
|
||||||
wstring builder = L"";
|
wstring builder = L"";
|
||||||
@@ -504,7 +507,7 @@ shared_ptr<ItemInstance> Packet::readItem(DataInputStream *dis)
|
|||||||
{
|
{
|
||||||
shared_ptr<ItemInstance> item = nullptr;
|
shared_ptr<ItemInstance> item = nullptr;
|
||||||
int id = dis->readShort();
|
int id = dis->readShort();
|
||||||
if (id >= 0 && id < 32000) // validate against Item::ITEM_NUM_COUNT
|
if (id >= 0)
|
||||||
{
|
{
|
||||||
int count = dis->readByte();
|
int count = dis->readByte();
|
||||||
int damage = dis->readShort();
|
int damage = dis->readShort();
|
||||||
@@ -542,16 +545,9 @@ void Packet::writeItem(shared_ptr<ItemInstance> item, DataOutputStream *dos)
|
|||||||
CompoundTag *Packet::readNbt(DataInputStream *dis)
|
CompoundTag *Packet::readNbt(DataInputStream *dis)
|
||||||
{
|
{
|
||||||
int size = dis->readShort();
|
int size = dis->readShort();
|
||||||
if (size <= 0) return NULL;
|
if (size < 0) return NULL;
|
||||||
|
|
||||||
const int MAX_NBT_SIZE = 32767;
|
|
||||||
if (size > MAX_NBT_SIZE) return NULL;
|
|
||||||
byteArray buff(size);
|
byteArray buff(size);
|
||||||
if (!dis->readFully(buff))
|
dis->readFully(buff);
|
||||||
{
|
|
||||||
delete [] buff.data;
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
CompoundTag *result = (CompoundTag *) NbtIo::decompress(buff);
|
CompoundTag *result = (CompoundTag *) NbtIo::decompress(buff);
|
||||||
delete [] buff.data;
|
delete [] buff.data;
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -62,7 +62,6 @@ void PreLoginPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
m_friendsOnlyBits = dis->readByte();
|
m_friendsOnlyBits = dis->readByte();
|
||||||
m_ugcPlayersVersion = dis->readInt();
|
m_ugcPlayersVersion = dis->readInt();
|
||||||
m_dwPlayerCount = dis->readByte();
|
m_dwPlayerCount = dis->readByte();
|
||||||
if( m_dwPlayerCount > MINECRAFT_NET_MAX_PLAYERS ) m_dwPlayerCount = MINECRAFT_NET_MAX_PLAYERS;
|
|
||||||
if( m_dwPlayerCount > 0 )
|
if( m_dwPlayerCount > 0 )
|
||||||
{
|
{
|
||||||
m_playerXuids = new PlayerUID[m_dwPlayerCount];
|
m_playerXuids = new PlayerUID[m_dwPlayerCount];
|
||||||
@@ -75,7 +74,6 @@ void PreLoginPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
{
|
{
|
||||||
m_szUniqueSaveName[i]=dis->readByte();
|
m_szUniqueSaveName[i]=dis->readByte();
|
||||||
}
|
}
|
||||||
m_szUniqueSaveName[m_iSaveNameLen - 1] = 0;
|
|
||||||
m_serverSettings = dis->readInt();
|
m_serverSettings = dis->readInt();
|
||||||
m_hostIndex = dis->readByte();
|
m_hostIndex = dis->readByte();
|
||||||
|
|
||||||
|
|||||||
@@ -21,9 +21,7 @@ RemoveEntitiesPacket::~RemoveEntitiesPacket()
|
|||||||
|
|
||||||
void RemoveEntitiesPacket::read(DataInputStream *dis) //throws IOException
|
void RemoveEntitiesPacket::read(DataInputStream *dis) //throws IOException
|
||||||
{
|
{
|
||||||
int count = dis->readByte();
|
ids = intArray(dis->readByte());
|
||||||
if(count < 0) count = 0;
|
|
||||||
ids = intArray(count);
|
|
||||||
for(unsigned int i = 0; i < ids.length; ++i)
|
for(unsigned int i = 0; i < ids.length; ++i)
|
||||||
{
|
{
|
||||||
ids[i] = dis->readInt();
|
ids[i] = dis->readInt();
|
||||||
|
|||||||
@@ -55,8 +55,10 @@ void RespawnPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
difficulty = dis->readByte();
|
difficulty = dis->readByte();
|
||||||
m_newSeaLevel = dis->readBoolean();
|
m_newSeaLevel = dis->readBoolean();
|
||||||
m_newEntityId = dis->readShort();
|
m_newEntityId = dis->readShort();
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
m_xzSize = dis->readShort();
|
m_xzSize = dis->readShort();
|
||||||
m_hellScale = dis->read();
|
m_hellScale = dis->read();
|
||||||
|
#endif
|
||||||
app.DebugPrintf("RespawnPacket::read - Difficulty = %d\n",difficulty);
|
app.DebugPrintf("RespawnPacket::read - Difficulty = %d\n",difficulty);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -78,8 +80,10 @@ void RespawnPacket::write(DataOutputStream *dos) //throws IOException
|
|||||||
dos->writeByte(difficulty);
|
dos->writeByte(difficulty);
|
||||||
dos->writeBoolean(m_newSeaLevel);
|
dos->writeBoolean(m_newSeaLevel);
|
||||||
dos->writeShort(m_newEntityId);
|
dos->writeShort(m_newEntityId);
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeShort(m_xzSize);
|
dos->writeShort(m_xzSize);
|
||||||
dos->write(m_hellScale);
|
dos->write(m_hellScale);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
int RespawnPacket::getEstimatedSize()
|
int RespawnPacket::getEstimatedSize()
|
||||||
|
|||||||
@@ -138,11 +138,6 @@ void Socket::pushDataToQueue(const BYTE * pbData, DWORD dwDataSize, bool fromHos
|
|||||||
}
|
}
|
||||||
|
|
||||||
EnterCriticalSection(&m_queueLockNetwork[queueIdx]);
|
EnterCriticalSection(&m_queueLockNetwork[queueIdx]);
|
||||||
if(m_queueNetwork[queueIdx].size() + dwDataSize > 2 * 1024 * 1024)
|
|
||||||
{
|
|
||||||
LeaveCriticalSection(&m_queueLockNetwork[queueIdx]);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for( unsigned int i = 0; i < dwDataSize; i++ )
|
for( unsigned int i = 0; i < dwDataSize; i++ )
|
||||||
{
|
{
|
||||||
m_queueNetwork[queueIdx].push(*pbData++);
|
m_queueNetwork[queueIdx].push(*pbData++);
|
||||||
|
|||||||
@@ -343,10 +343,8 @@ vector<shared_ptr<SynchedEntityData::DataItem> > *SynchedEntityData::unpack(Data
|
|||||||
vector<shared_ptr<DataItem> > *result = NULL;
|
vector<shared_ptr<DataItem> > *result = NULL;
|
||||||
|
|
||||||
int currentHeader = input->readByte();
|
int currentHeader = input->readByte();
|
||||||
int itemCount = 0;
|
|
||||||
const int MAX_ENTITY_DATA_ITEMS = 256;
|
|
||||||
|
|
||||||
while (currentHeader != EOF_MARKER && itemCount < MAX_ENTITY_DATA_ITEMS)
|
while (currentHeader != EOF_MARKER)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (result == NULL)
|
if (result == NULL)
|
||||||
@@ -401,7 +399,6 @@ vector<shared_ptr<SynchedEntityData::DataItem> > *SynchedEntityData::unpack(Data
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
result->push_back(item);
|
result->push_back(item);
|
||||||
itemCount++;
|
|
||||||
|
|
||||||
currentHeader = input->readByte();
|
currentHeader = input->readByte();
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-26
@@ -84,48 +84,27 @@ Tag *Tag::readNamedTag(DataInput *dis)
|
|||||||
|
|
||||||
Tag *Tag::readNamedTag(DataInput *dis, int tagDepth)
|
Tag *Tag::readNamedTag(DataInput *dis, int tagDepth)
|
||||||
{
|
{
|
||||||
static __declspec(thread) int depth = 0;
|
|
||||||
static __declspec(thread) int totalTagCount = 0;
|
|
||||||
|
|
||||||
if (depth == 0)
|
|
||||||
totalTagCount = 0;
|
|
||||||
|
|
||||||
depth++;
|
|
||||||
|
|
||||||
if (depth > 256)
|
|
||||||
{
|
|
||||||
depth--;
|
|
||||||
return new EndTag();
|
|
||||||
}
|
|
||||||
|
|
||||||
totalTagCount++;
|
|
||||||
const int MAX_TOTAL_TAGS = 32768;
|
|
||||||
if (totalTagCount > MAX_TOTAL_TAGS)
|
|
||||||
{
|
|
||||||
depth--;
|
|
||||||
return new EndTag();
|
|
||||||
}
|
|
||||||
|
|
||||||
byte type = dis->readByte();
|
byte type = dis->readByte();
|
||||||
if (type == 0) { depth--; return new EndTag(); }
|
if (type == 0) return new EndTag();
|
||||||
|
|
||||||
// 4J Stu - readByte can return -1, so if it's that then also mark as the end tag
|
// 4J Stu - readByte can return -1, so if it's that then also mark as the end tag
|
||||||
if(type == 255)
|
if(type == 255)
|
||||||
{
|
{
|
||||||
depth--;
|
app.DebugPrintf("readNamedTag read a type of 255\n");
|
||||||
|
#ifndef _CONTENT_PACKAGE
|
||||||
|
__debugbreak();
|
||||||
|
#endif
|
||||||
return new EndTag();
|
return new EndTag();
|
||||||
}
|
}
|
||||||
|
|
||||||
wstring name = dis->readUTF();//new String(bytes, "UTF-8");
|
wstring name = dis->readUTF();//new String(bytes, "UTF-8");
|
||||||
|
|
||||||
Tag *tag = newTag(type, name);
|
Tag *tag = newTag(type, name);
|
||||||
if (tag == NULL) { depth--; return new EndTag(); }
|
|
||||||
// short length = dis.readShort();
|
// short length = dis.readShort();
|
||||||
// byte[] bytes = new byte[length];
|
// byte[] bytes = new byte[length];
|
||||||
// dis.readFully(bytes);
|
// dis.readFully(bytes);
|
||||||
|
|
||||||
tag->load(dis, tagDepth);
|
tag->load(dis, tagDepth);
|
||||||
depth--;
|
|
||||||
return tag;
|
return tag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -40,9 +40,15 @@ TeleportEntityPacket::TeleportEntityPacket(int id, int x, int y, int z, byte yRo
|
|||||||
void TeleportEntityPacket::read(DataInputStream *dis) //throws IOException
|
void TeleportEntityPacket::read(DataInputStream *dis) //throws IOException
|
||||||
{
|
{
|
||||||
id = dis->readShort();
|
id = dis->readShort();
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
x = dis->readInt();
|
x = dis->readInt();
|
||||||
y = dis->readInt();
|
y = dis->readInt();
|
||||||
z = dis->readInt();
|
z = dis->readInt();
|
||||||
|
#else
|
||||||
|
x = dis->readShort();
|
||||||
|
y = dis->readShort();
|
||||||
|
z = dis->readShort();
|
||||||
|
#endif
|
||||||
yRot = dis->readByte();
|
yRot = dis->readByte();
|
||||||
xRot = dis->readByte();
|
xRot = dis->readByte();
|
||||||
}
|
}
|
||||||
@@ -50,9 +56,15 @@ void TeleportEntityPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
void TeleportEntityPacket::write(DataOutputStream *dos) //throws IOException
|
void TeleportEntityPacket::write(DataOutputStream *dos) //throws IOException
|
||||||
{
|
{
|
||||||
dos->writeShort(id);
|
dos->writeShort(id);
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeInt(x);
|
dos->writeInt(x);
|
||||||
dos->writeInt(y);
|
dos->writeInt(y);
|
||||||
dos->writeInt(z);
|
dos->writeInt(z);
|
||||||
|
#else
|
||||||
|
dos->writeShort(x);
|
||||||
|
dos->writeShort(y);
|
||||||
|
dos->writeShort(z);
|
||||||
|
#endif
|
||||||
dos->write(yRot);
|
dos->write(yRot);
|
||||||
dos->write(xRot);
|
dos->write(xRot);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -123,16 +123,7 @@ void TextureAndGeometryPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
{
|
{
|
||||||
textureName = dis->readUTF();
|
textureName = dis->readUTF();
|
||||||
dwSkinID = (DWORD)dis->readInt();
|
dwSkinID = (DWORD)dis->readInt();
|
||||||
short rawTextureBytes = dis->readShort();
|
dwTextureBytes = (DWORD)dis->readShort();
|
||||||
if(rawTextureBytes <= 0)
|
|
||||||
{
|
|
||||||
dwTextureBytes = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dwTextureBytes = (DWORD)(unsigned short)rawTextureBytes;
|
|
||||||
if(dwTextureBytes > 65536) dwTextureBytes = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(dwTextureBytes>0)
|
if(dwTextureBytes>0)
|
||||||
{
|
{
|
||||||
@@ -145,16 +136,7 @@ void TextureAndGeometryPacket::read(DataInputStream *dis) //throws IOException
|
|||||||
}
|
}
|
||||||
uiAnimOverrideBitmask = dis->readInt();
|
uiAnimOverrideBitmask = dis->readInt();
|
||||||
|
|
||||||
short rawBoxC = dis->readShort();
|
dwBoxC = (DWORD)dis->readShort();
|
||||||
if(rawBoxC <= 0)
|
|
||||||
{
|
|
||||||
dwBoxC = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dwBoxC = (DWORD)(unsigned short)rawBoxC;
|
|
||||||
if(dwBoxC > 256) dwBoxC = 0; // sane limit for skin boxes
|
|
||||||
}
|
|
||||||
|
|
||||||
if(dwBoxC>0)
|
if(dwBoxC>0)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -37,24 +37,16 @@ void TexturePacket::handle(PacketListener *listener)
|
|||||||
void TexturePacket::read(DataInputStream *dis) //throws IOException
|
void TexturePacket::read(DataInputStream *dis) //throws IOException
|
||||||
{
|
{
|
||||||
textureName = dis->readUTF();
|
textureName = dis->readUTF();
|
||||||
short rawBytes = dis->readShort();
|
dwBytes = (DWORD)dis->readShort();
|
||||||
if(rawBytes <= 0)
|
|
||||||
{
|
|
||||||
dwBytes = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
dwBytes = (DWORD)(unsigned short)rawBytes;
|
|
||||||
if(dwBytes > 65536)
|
|
||||||
{
|
|
||||||
dwBytes = 0;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this->pbData= new BYTE [dwBytes];
|
if(dwBytes>0)
|
||||||
|
|
||||||
for(DWORD i=0;i<dwBytes;i++)
|
|
||||||
{
|
{
|
||||||
this->pbData[i] = dis->readByte();
|
this->pbData= new BYTE [dwBytes];
|
||||||
|
|
||||||
|
for(DWORD i=0;i<dwBytes;i++)
|
||||||
|
{
|
||||||
|
this->pbData[i] = dis->readByte();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,16 +20,9 @@ void SetThreadName( DWORD dwThreadID, LPCSTR szThreadName )
|
|||||||
info.dwFlags = 0;
|
info.dwFlags = 0;
|
||||||
|
|
||||||
#if ( defined _WINDOWS64 | defined _DURANGO )
|
#if ( defined _WINDOWS64 | defined _DURANGO )
|
||||||
// 0x406D1388 is a debugger protocol, not a real exception - only a debugger
|
|
||||||
// can consume it. With nothing attached it terminates the process.
|
|
||||||
if( !IsDebuggerPresent() )
|
|
||||||
return;
|
|
||||||
|
|
||||||
__try
|
__try
|
||||||
{
|
{
|
||||||
// count is in ULONG_PTRs, not DWORDs - on x64 the DWORD count made
|
RaiseException( 0x406D1388, 0, sizeof(info)/sizeof(DWORD), (ULONG_PTR *)&info );
|
||||||
// RaiseException read past the end of info
|
|
||||||
RaiseException( 0x406D1388, 0, sizeof(info)/sizeof(ULONG_PTR), (ULONG_PTR *)&info );
|
|
||||||
}
|
}
|
||||||
__except( GetExceptionCode()==0x406D1388 ? EXCEPTION_CONTINUE_EXECUTION : EXCEPTION_EXECUTE_HANDLER )
|
__except( GetExceptionCode()==0x406D1388 ? EXCEPTION_CONTINUE_EXECUTION : EXCEPTION_EXECUTE_HANDLER )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ TileUpdatePacket::TileUpdatePacket(int x, int y, int z, Level *level)
|
|||||||
|
|
||||||
void TileUpdatePacket::read(DataInputStream *dis) //throws IOException
|
void TileUpdatePacket::read(DataInputStream *dis) //throws IOException
|
||||||
{
|
{
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
x = dis->readInt();
|
x = dis->readInt();
|
||||||
y = dis->readUnsignedByte();
|
y = dis->readUnsignedByte();
|
||||||
z = dis->readInt();
|
z = dis->readInt();
|
||||||
@@ -35,10 +36,26 @@ void TileUpdatePacket::read(DataInputStream *dis) //throws IOException
|
|||||||
BYTE dataLevel = dis->readByte();
|
BYTE dataLevel = dis->readByte();
|
||||||
data = dataLevel & 0xf;
|
data = dataLevel & 0xf;
|
||||||
levelIdx = (dataLevel>>4) & 0xf;
|
levelIdx = (dataLevel>>4) & 0xf;
|
||||||
|
#else
|
||||||
|
// 4J - See comments in write for packing
|
||||||
|
int xyzdata = dis->readInt();
|
||||||
|
x = ( xyzdata >> 22 ) & 0x3ff;
|
||||||
|
y = ( xyzdata >> 14 ) & 0xff;
|
||||||
|
z = ( xyzdata >> 4 ) & 0x3ff;
|
||||||
|
x = ( x << 22 ) >> 22;
|
||||||
|
z = ( z << 22 ) >> 22;
|
||||||
|
data = xyzdata & 0xf;
|
||||||
|
block = (int)dis->readShort() & 0xffff;
|
||||||
|
//levelIdx = ( xyzdata >> 31 ) & 1;
|
||||||
|
|
||||||
|
// Can't pack this as it's now 2 bits
|
||||||
|
levelIdx = (int)dis->readByte();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void TileUpdatePacket::write(DataOutputStream *dos) //throws IOException
|
void TileUpdatePacket::write(DataOutputStream *dos) //throws IOException
|
||||||
{
|
{
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
dos->writeInt(x);
|
dos->writeInt(x);
|
||||||
dos->write(y);
|
dos->write(y);
|
||||||
dos->writeInt(z);
|
dos->writeInt(z);
|
||||||
@@ -46,6 +63,18 @@ void TileUpdatePacket::write(DataOutputStream *dos) //throws IOException
|
|||||||
|
|
||||||
BYTE dataLevel = ((levelIdx & 0xf ) << 4) | (data & 0xf);
|
BYTE dataLevel = ((levelIdx & 0xf ) << 4) | (data & 0xf);
|
||||||
dos->writeByte(dataLevel);
|
dos->writeByte(dataLevel);
|
||||||
|
#else
|
||||||
|
// 4J - for our fixed size map, we can pack x & z into 10 bits each (-512 -> 511), y into 8 bits (0 to 255)
|
||||||
|
// block type could really be 7 bits but leaving that as 8 for future ease of expansion. Data only needs to be 4-bits as that is how it
|
||||||
|
// is ultimately stored
|
||||||
|
int xyzdata = ( ( x & 0x3ff ) << 22 ) | ( ( y & 0xff ) << 14 ) | ( ( z & 0x3ff ) << 4 ) | ( data & 0xf);
|
||||||
|
//xyzdata |= levelIdx << 31;
|
||||||
|
dos->writeInt(xyzdata);
|
||||||
|
dos->writeShort(block);
|
||||||
|
|
||||||
|
// Can't pack this as it's now 2 bits
|
||||||
|
dos->write(levelIdx);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void TileUpdatePacket::handle(PacketListener *listener)
|
void TileUpdatePacket::handle(PacketListener *listener)
|
||||||
@@ -55,5 +84,9 @@ void TileUpdatePacket::handle(PacketListener *listener)
|
|||||||
|
|
||||||
int TileUpdatePacket::getEstimatedSize()
|
int TileUpdatePacket::getEstimatedSize()
|
||||||
{
|
{
|
||||||
|
#ifdef _LARGE_WORLDS
|
||||||
return 12;
|
return 12;
|
||||||
|
#else
|
||||||
|
return 5;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ void UpdateGameRuleProgressPacket::read(DataInputStream *dis) //throws IOExcepti
|
|||||||
m_dataTag = dis->readInt();
|
m_dataTag = dis->readInt();
|
||||||
int dataLength = dis->readInt();
|
int dataLength = dis->readInt();
|
||||||
|
|
||||||
if(dataLength > 0 && dataLength <= 65536)
|
if(dataLength > 0)
|
||||||
{
|
{
|
||||||
m_data = byteArray(dataLength);
|
m_data = byteArray(dataLength);
|
||||||
dis->readFully(m_data);
|
dis->readFully(m_data);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
#include "compression.h"
|
#include "compression.h"
|
||||||
#if defined __ORBIS__ || defined __PS3__ || defined _DURANGO || defined _WIN64 || defined _XBOX
|
#if defined __ORBIS__ || defined __PS3__ || defined _DURANGO || defined _WIN64
|
||||||
#include "..\Minecraft.Client\Common\zlib\zlib.h"
|
#include "..\Minecraft.Client\Common\zlib\zlib.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -196,20 +196,9 @@ HRESULT Compression::DecompressLZXRLE(void *pDestination, unsigned int *pDestSiz
|
|||||||
unsigned int rleSize = staticRleSize;
|
unsigned int rleSize = staticRleSize;
|
||||||
unsigned char *dynamicRleBuf = NULL;
|
unsigned char *dynamicRleBuf = NULL;
|
||||||
|
|
||||||
unsigned int safeRleSize = max(rleSize, *pDestSize);
|
if(*pDestSize > rleSize)
|
||||||
|
|
||||||
const unsigned int MAX_RLE_ALLOC = 16 * 1024 * 1024; // 16 MB
|
|
||||||
if(safeRleSize > MAX_RLE_ALLOC)
|
|
||||||
{
|
{
|
||||||
LeaveCriticalSection(&rleDecompressLock);
|
rleSize = *pDestSize;
|
||||||
*pDestSize = 0;
|
|
||||||
// E_FAIL doesnt exist on PS3
|
|
||||||
return (HRESULT)0x80004005L;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(safeRleSize > staticRleSize)
|
|
||||||
{
|
|
||||||
rleSize = safeRleSize;
|
|
||||||
dynamicRleBuf = new unsigned char[rleSize];
|
dynamicRleBuf = new unsigned char[rleSize];
|
||||||
Decompress(dynamicRleBuf, &rleSize, pSource, SrcSize);
|
Decompress(dynamicRleBuf, &rleSize, pSource, SrcSize);
|
||||||
pucIn = (unsigned char *)dynamicRleBuf;
|
pucIn = (unsigned char *)dynamicRleBuf;
|
||||||
@@ -223,19 +212,16 @@ HRESULT Compression::DecompressLZXRLE(void *pDestination, unsigned int *pDestSiz
|
|||||||
//unsigned char *pucIn = (unsigned char *)rleDecompressBuf;
|
//unsigned char *pucIn = (unsigned char *)rleDecompressBuf;
|
||||||
unsigned char *pucEnd = pucIn + rleSize;
|
unsigned char *pucEnd = pucIn + rleSize;
|
||||||
unsigned char *pucOut = (unsigned char *)pDestination;
|
unsigned char *pucOut = (unsigned char *)pDestination;
|
||||||
unsigned char *pucOutEnd = pucOut + *pDestSize;
|
|
||||||
|
|
||||||
while( pucIn != pucEnd )
|
while( pucIn != pucEnd )
|
||||||
{
|
{
|
||||||
unsigned char thisOne = *pucIn++;
|
unsigned char thisOne = *pucIn++;
|
||||||
if( thisOne == 255 )
|
if( thisOne == 255 )
|
||||||
{
|
{
|
||||||
if( pucIn >= pucEnd ) break;
|
|
||||||
unsigned int count = *pucIn++;
|
unsigned int count = *pucIn++;
|
||||||
if( count < 3 )
|
if( count < 3 )
|
||||||
{
|
{
|
||||||
count++;
|
count++;
|
||||||
if( pucOut + count > pucOutEnd ) { pucOut = pucOutEnd; break; }
|
|
||||||
for( unsigned int i = 0; i < count; i++ )
|
for( unsigned int i = 0; i < count; i++ )
|
||||||
{
|
{
|
||||||
*pucOut++ = 255;
|
*pucOut++ = 255;
|
||||||
@@ -244,9 +230,7 @@ HRESULT Compression::DecompressLZXRLE(void *pDestination, unsigned int *pDestSiz
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
count++;
|
count++;
|
||||||
if( pucIn >= pucEnd ) break;
|
|
||||||
unsigned char data = *pucIn++;
|
unsigned char data = *pucIn++;
|
||||||
if( pucOut + count > pucOutEnd ) { pucOut = pucOutEnd; break; }
|
|
||||||
for( unsigned int i = 0; i < count; i++ )
|
for( unsigned int i = 0; i < count; i++ )
|
||||||
{
|
{
|
||||||
*pucOut++ = data;
|
*pucOut++ = data;
|
||||||
@@ -255,7 +239,6 @@ HRESULT Compression::DecompressLZXRLE(void *pDestination, unsigned int *pDestSiz
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if( pucOut >= pucOutEnd ) break;
|
|
||||||
*pucOut++ = thisOne;
|
*pucOut++ = thisOne;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -277,19 +260,16 @@ HRESULT Compression::DecompressRLE(void *pDestination, unsigned int *pDestSize,
|
|||||||
unsigned char *pucIn = (unsigned char *)pSource;
|
unsigned char *pucIn = (unsigned char *)pSource;
|
||||||
unsigned char *pucEnd = pucIn + SrcSize;
|
unsigned char *pucEnd = pucIn + SrcSize;
|
||||||
unsigned char *pucOut = (unsigned char *)pDestination;
|
unsigned char *pucOut = (unsigned char *)pDestination;
|
||||||
unsigned char *pucOutEnd = pucOut + *pDestSize;
|
|
||||||
|
|
||||||
while( pucIn != pucEnd )
|
while( pucIn != pucEnd )
|
||||||
{
|
{
|
||||||
unsigned char thisOne = *pucIn++;
|
unsigned char thisOne = *pucIn++;
|
||||||
if( thisOne == 255 )
|
if( thisOne == 255 )
|
||||||
{
|
{
|
||||||
if( pucIn >= pucEnd ) break;
|
|
||||||
unsigned int count = *pucIn++;
|
unsigned int count = *pucIn++;
|
||||||
if( count < 3 )
|
if( count < 3 )
|
||||||
{
|
{
|
||||||
count++;
|
count++;
|
||||||
if( pucOut + count > pucOutEnd ) { pucOut = pucOutEnd; break; }
|
|
||||||
for( unsigned int i = 0; i < count; i++ )
|
for( unsigned int i = 0; i < count; i++ )
|
||||||
{
|
{
|
||||||
*pucOut++ = 255;
|
*pucOut++ = 255;
|
||||||
@@ -298,9 +278,7 @@ HRESULT Compression::DecompressRLE(void *pDestination, unsigned int *pDestSize,
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
count++;
|
count++;
|
||||||
if( pucIn >= pucEnd ) break;
|
|
||||||
unsigned char data = *pucIn++;
|
unsigned char data = *pucIn++;
|
||||||
if( pucOut + count > pucOutEnd ) { pucOut = pucOutEnd; break; }
|
|
||||||
for( unsigned int i = 0; i < count; i++ )
|
for( unsigned int i = 0; i < count; i++ )
|
||||||
{
|
{
|
||||||
*pucOut++ = data;
|
*pucOut++ = data;
|
||||||
@@ -309,7 +287,6 @@ HRESULT Compression::DecompressRLE(void *pDestination, unsigned int *pDestSize,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if( pucOut >= pucOutEnd ) break;
|
|
||||||
*pucOut++ = thisOne;
|
*pucOut++ = thisOne;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -322,7 +299,7 @@ HRESULT Compression::DecompressRLE(void *pDestination, unsigned int *pDestSize,
|
|||||||
|
|
||||||
HRESULT Compression::Compress(void *pDestination, unsigned int *pDestSize, void *pSource, unsigned int SrcSize)
|
HRESULT Compression::Compress(void *pDestination, unsigned int *pDestSize, void *pSource, unsigned int SrcSize)
|
||||||
{
|
{
|
||||||
// Using zlib for x64 compression - 360 is using native 64 compression and PS3 a stubbed non-compressing version of this
|
// Using zlib for x64 compression - 360 is using native 360 compression and PS3 a stubbed non-compressing version of this
|
||||||
#if defined __ORBIS__ || defined _DURANGO || defined _WIN64 || defined __PSVITA__
|
#if defined __ORBIS__ || defined _DURANGO || defined _WIN64 || defined __PSVITA__
|
||||||
SIZE_T destSize = (SIZE_T)(*pDestSize);
|
SIZE_T destSize = (SIZE_T)(*pDestSize);
|
||||||
int res = ::compress((Bytef *)pDestination, (uLongf *)&destSize, (Bytef *)pSource, SrcSize);
|
int res = ::compress((Bytef *)pDestination, (uLongf *)&destSize, (Bytef *)pSource, SrcSize);
|
||||||
@@ -350,7 +327,7 @@ HRESULT Compression::Decompress(void *pDestination, unsigned int *pDestSize, voi
|
|||||||
return DecompressWithType(pDestination, pDestSize, pSource, SrcSize);
|
return DecompressWithType(pDestination, pDestSize, pSource, SrcSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Using zlib for x64 and 360 compression - 360 is using native 360 compression and PS3 a stubbed non-compressing version of this
|
// Using zlib for x64 compression - 360 is using native 360 compression and PS3 a stubbed non-compressing version of this
|
||||||
#if defined __ORBIS__ || defined _DURANGO || defined _WIN64 || defined __PSVITA__
|
#if defined __ORBIS__ || defined _DURANGO || defined _WIN64 || defined __PSVITA__
|
||||||
SIZE_T destSize = (SIZE_T)(*pDestSize);
|
SIZE_T destSize = (SIZE_T)(*pDestSize);
|
||||||
int res = ::uncompress((Bytef *)pDestination, (uLongf *)&destSize, (Bytef *)pSource, SrcSize);
|
int res = ::uncompress((Bytef *)pDestination, (uLongf *)&destSize, (Bytef *)pSource, SrcSize);
|
||||||
@@ -429,7 +406,7 @@ HRESULT Compression::DecompressWithType(void *pDestination, unsigned int *pDestS
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case eCompressionType_ZLIBRLE:
|
case eCompressionType_ZLIBRLE:
|
||||||
#if (defined __ORBIS__ || defined __PS3__ || defined _DURANGO || defined _WIN64 || defined _XBOX)
|
#if (defined __ORBIS__ || defined __PS3__ || defined _DURANGO || defined _WIN64)
|
||||||
if (pDestination != NULL)
|
if (pDestination != NULL)
|
||||||
return ::uncompress((PBYTE)pDestination, (unsigned long *) pDestSize, (PBYTE) pSource, SrcSize); // Decompress
|
return ::uncompress((PBYTE)pDestination, (unsigned long *) pDestSize, (PBYTE) pSource, SrcSize); // Decompress
|
||||||
else break; // Cannot decompress when destination is NULL
|
else break; // Cannot decompress when destination is NULL
|
||||||
|
|||||||
@@ -4,12 +4,6 @@
|
|||||||
//
|
//
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#ifdef _XBOX
|
|
||||||
#ifndef _DISABLE_XBLIVE
|
|
||||||
#define _DISABLE_XBLIVE
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __PS3__
|
#ifdef __PS3__
|
||||||
#else
|
#else
|
||||||
#define AUTO_VAR(_var, _val) auto _var = _val
|
#define AUTO_VAR(_var, _val) auto _var = _val
|
||||||
@@ -131,6 +125,8 @@ typedef XUID GameSessionUID;
|
|||||||
|
|
||||||
#ifndef _XBOX
|
#ifndef _XBOX
|
||||||
#include "extraX64.h"
|
#include "extraX64.h"
|
||||||
|
#else
|
||||||
|
#include "..\Minecraft.Client\xbox\network\extra.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "Definitions.h"
|
#include "Definitions.h"
|
||||||
|
|||||||
@@ -249,9 +249,6 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost, bool isLocal);
|
void Win64_SetupRemoteQNetPlayer(IQNetPlayer *player, BYTE smallId, bool isHost, bool isLocal);
|
||||||
char GetUsername();
|
|
||||||
PlayerUID Win64_UsernameToXuid(const char* username);
|
|
||||||
PlayerUID Win64_UsernameToXuid(const wchar_t* username);
|
|
||||||
|
|
||||||
const int QNET_GETSENDQUEUESIZE_SECONDARY_TYPE = 0;
|
const int QNET_GETSENDQUEUESIZE_SECONDARY_TYPE = 0;
|
||||||
const int QNET_GETSENDQUEUESIZE_MESSAGES = 0;
|
const int QNET_GETSENDQUEUESIZE_MESSAGES = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user