Browse Source

Don't show hostile players in automap

pull/4570/merge
obligaron 4 years ago committed by Anders Jenbo
parent
commit
1124dd1bd2
  1. 2
      Source/automap.cpp
  2. 15
      Source/lighting.cpp

2
Source/automap.cpp

@ -732,7 +732,7 @@ void DrawAutomap(const Surface &out)
for (int playerId = 0; playerId < MAX_PLRS; playerId++) {
auto &player = Players[playerId];
if (player.plrlevel == myPlayer.plrlevel && player.plractive && !player._pLvlChanging) {
if (player.plrlevel == myPlayer.plrlevel && player.plractive && !player._pLvlChanging && (&player == &myPlayer || player.friendlyMode)) {
DrawAutomapPlr(out, myPlayerOffset, playerId);
}
}

15
Source/lighting.cpp

@ -1131,10 +1131,23 @@ void ProcessVisionList()
if (vision._ldel)
continue;
MapExplorationType doautomap = MAP_EXP_SELF;
if (!vision._lflags) {
doautomap = MAP_EXP_OTHERS;
for (const auto &player : Players) {
// Find player for this vision
if (!player.plractive || player.plrlevel != currlevel || player._pvid != vision._lid)
continue;
// Check that player allows automap sharing
if (!player.friendlyMode)
doautomap = MAP_EXP_NONE;
break;
}
}
DoVision(
vision.position.tile,
vision._lradius,
vision._lflags ? MAP_EXP_SELF : MAP_EXP_OTHERS,
doautomap,
vision._lflags);
}
bool delflag;

Loading…
Cancel
Save