Do not show cell markers for interior cells

move
Rob Cutmore 9 years ago
parent a97eae864d
commit d60786b5da

@ -3,6 +3,7 @@
#include <osg/Group> #include <osg/Group>
#include <components/misc/stringops.hpp> #include <components/misc/stringops.hpp>
#include <components/esm/loadcell.hpp>
#include <components/esm/loadland.hpp> #include <components/esm/loadland.hpp>
#include "../../model/world/idtable.hpp" #include "../../model/world/idtable.hpp"
@ -308,12 +309,19 @@ void CSVRender::Cell::setCellArrows (int mask)
void CSVRender::Cell::setCellMarker() void CSVRender::Cell::setCellMarker()
{ {
bool cellExists = false; bool cellExists = false;
bool isInteriorCell = false;
int cellIndex = mData.getCells().searchId(mId); int cellIndex = mData.getCells().searchId(mId);
if (cellIndex > -1) if (cellIndex > -1)
{ {
cellExists = !mData.getCells().getRecord(cellIndex).isDeleted(); const CSMWorld::Record<CSMWorld::Cell>& cellRecord = mData.getCells().getRecord(cellIndex);
cellExists = !cellRecord.isDeleted();
isInteriorCell = cellRecord.get().mData.mFlags & ESM::Cell::Interior;
}
if (!isInteriorCell) {
mCellMarker.reset(new CellMarker(mCellNode, mCoordinates, cellExists));
} }
mCellMarker.reset(new CellMarker(mCellNode, mCoordinates, cellExists));
} }
CSMWorld::CellCoordinates CSVRender::Cell::getCoordinates() const CSMWorld::CellCoordinates CSVRender::Cell::getCoordinates() const

Loading…
Cancel
Save