forked from mirror/openmw-tes3mp
[Client] Avoid sending map tiles for Wilderness cells
This commit is contained in:
parent
17c234d9ca
commit
c23fc3446f
2 changed files with 26 additions and 22 deletions
|
@ -65,9 +65,6 @@ void Worldstate::sendMapExplored(int cellX, int cellY, const std::vector<char>&
|
|||
|
||||
getNetworking()->getWorldstatePacket(ID_WORLD_MAP)->setWorldstate(this);
|
||||
getNetworking()->getWorldstatePacket(ID_WORLD_MAP)->Send();
|
||||
|
||||
// Keep this tile marked as explored so we don't send any more packets for it
|
||||
markExploredMapTile(mapTile.x, mapTile.y);
|
||||
}
|
||||
|
||||
void Worldstate::setMapExplored()
|
||||
|
|
|
@ -651,6 +651,7 @@ namespace MWRender
|
|||
Send an ID_PLAYER_MAP packet with this map tile to the server, but only if:
|
||||
1) We have recorded the exterior cell corresponding to this tile's coordinates
|
||||
2) The tile has not previously been marked as explored in this client's mwmp::Worldstate
|
||||
3) The tile does not belong to a Wilderness cell
|
||||
*/
|
||||
if (originToCellX.count(imageDest.mX) > 0 && originToCellY.count(imageDest.mY) > 0)
|
||||
{
|
||||
|
@ -660,6 +661,11 @@ namespace MWRender
|
|||
mwmp::Worldstate *worldstate = mwmp::Main::get().getNetworking()->getWorldstate();
|
||||
|
||||
if (!worldstate->containsExploredMapTile(cellX, cellY))
|
||||
{
|
||||
// Keep this tile marked as explored so we don't send any more packets for it
|
||||
worldstate->markExploredMapTile(cellX, cellY);
|
||||
|
||||
if (MWBase::Environment::get().getWorld()->getExterior(cellX, cellY)->getCell()->mContextList.empty() == false)
|
||||
{
|
||||
LOG_MESSAGE_SIMPLE(Log::LOG_ERROR, "New global map tile corresponds to cell %i, %i", originToCellX.at(imageDest.mX), originToCellY.at(imageDest.mY));
|
||||
|
||||
|
@ -685,6 +691,7 @@ namespace MWRender
|
|||
worldstate->sendMapExplored(cellX, cellY, vectorData);
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
End of tes3mp addition
|
||||
*/
|
||||
|
|
Loading…
Reference in a new issue