diff --git a/apps/openmw/mwmechanics/actors.cpp b/apps/openmw/mwmechanics/actors.cpp index b8a512c32..939d5bcc3 100644 --- a/apps/openmw/mwmechanics/actors.cpp +++ b/apps/openmw/mwmechanics/actors.cpp @@ -2109,6 +2109,13 @@ namespace MWMechanics cleanupSummonedCreature(stats, creature.second); creatureMap.clear(); } + /* + Start of tes3mp change (major) + + Don't use a clientside creature graveyard in multiplayer and expect the server + to handle summon deletions instead + */ + /* else if (creatureActorId != -1) { // We didn't find the creature. It's probably in an inactive cell. @@ -2116,6 +2123,10 @@ namespace MWMechanics std::vector& graveyard = casterStats.getSummonedCreatureGraveyard(); graveyard.push_back(creatureActorId); } + */ + /* + End of tes3mp change (major) + */ purgeSpellEffects(creatureActorId); } diff --git a/apps/openmw/mwmechanics/summoning.cpp b/apps/openmw/mwmechanics/summoning.cpp index b62ef7531..1055b9f01 100644 --- a/apps/openmw/mwmechanics/summoning.cpp +++ b/apps/openmw/mwmechanics/summoning.cpp @@ -148,11 +148,22 @@ namespace MWMechanics ++it; } + /* + Start of tes3mp change (major) + + Don't use a clientside creature graveyard in multiplayer and expect the server + to handle summon deletions instead + */ + /* std::vector graveyard = creatureStats.getSummonedCreatureGraveyard(); creatureStats.getSummonedCreatureGraveyard().clear(); for (const int creature : graveyard) MWBase::Environment::get().getMechanicsManager()->cleanupSummonedCreature(mActor, creature); + */ + /* + End of tes3mp change (major) + */ if (!cleanup) return;