1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-04-01 00:36:46 +00:00

Make markers get removed when their players quit, rename marker methods

This commit is contained in:
David Cernat 2016-10-24 15:10:32 +03:00
parent aed884949c
commit 04eb051df6
4 changed files with 11 additions and 7 deletions

View file

@ -111,7 +111,7 @@ void Players::CreatePlayer(RakNet::RakNetGUID id)
ESM::CustomMarker mEditingMarker = Main::get().getGUIController()->CreateMarker(id); ESM::CustomMarker mEditingMarker = Main::get().getGUIController()->CreateMarker(id);
dedicPlayer->marker = mEditingMarker; dedicPlayer->marker = mEditingMarker;
dedicPlayer->markerEnabled = true; dedicPlayer->setMarkerState(true);
} }
@ -126,6 +126,10 @@ void Players::DisconnectPlayer(RakNet::RakNetGUID id)
if (players[id]->state > 1) if (players[id]->state > 1)
{ {
players[id]->state = 1; players[id]->state = 1;
// Remove player's marker
players[id]->setMarkerState(false);
MWBase::World *world = MWBase::Environment::get().getWorld(); MWBase::World *world = MWBase::Environment::get().getWorld();
world->disable(players[id]->getPtr()); world->disable(players[id]->getPtr());
@ -469,7 +473,7 @@ void DedicatedPlayer::updateMarker()
if (!markerEnabled) if (!markerEnabled)
return; return;
GUIController *gui = Main::get().getGUIController(); GUIController *gui = Main::get().getGUIController();
if (gui->mPlayerMarkers.isExists(marker)) if (gui->mPlayerMarkers.isExistent(marker))
{ {
gui->mPlayerMarkers.deleteMarker(marker); gui->mPlayerMarkers.deleteMarker(marker);
marker = gui->CreateMarker(guid); marker = gui->CreateMarker(guid);
@ -487,9 +491,9 @@ void DedicatedPlayer::removeMarker()
Main::get().getGUIController()->mPlayerMarkers.deleteMarker(marker); Main::get().getGUIController()->mPlayerMarkers.deleteMarker(marker);
} }
void DedicatedPlayer::enableMarker(bool enable) void DedicatedPlayer::setMarkerState(bool state)
{ {
if (enable) if (state)
updateMarker(); updateMarker();
else else
removeMarker(); removeMarker();

View file

@ -49,7 +49,7 @@ namespace mwmp
void updateMarker(); void updateMarker();
void removeMarker(); void removeMarker();
void enableMarker(bool enable); void setMarkerState(bool state);
private: private:
DedicatedPlayer(RakNet::RakNetGUID guid); DedicatedPlayer(RakNet::RakNetGUID guid);
virtual ~DedicatedPlayer(); virtual ~DedicatedPlayer();

View file

@ -73,7 +73,7 @@ size_t PlayerMarkerCollection::size() const
return mMarkers.size(); return mMarkers.size();
} }
bool PlayerMarkerCollection::isExists(const ESM::CustomMarker &marker) bool PlayerMarkerCollection::isExistent(const ESM::CustomMarker &marker)
{ {
return mMarkers.find(marker.mCell) != mMarkers.end(); return mMarkers.find(marker.mCell) != mMarkers.end();
} }

View file

@ -39,7 +39,7 @@ namespace mwmp
typedef MyGUI::delegates::CMultiDelegate0 EventHandle_Void; typedef MyGUI::delegates::CMultiDelegate0 EventHandle_Void;
EventHandle_Void eventMarkersChanged; EventHandle_Void eventMarkersChanged;
bool isExists(const ESM::CustomMarker &marker); bool isExistent(const ESM::CustomMarker &marker);
private: private:
ContainerType mMarkers; ContainerType mMarkers;
}; };