diff --git a/apps/openmw/mwmp/ObjectList.cpp b/apps/openmw/mwmp/ObjectList.cpp index 57f0b8bf1..4b0962c10 100644 --- a/apps/openmw/mwmp/ObjectList.cpp +++ b/apps/openmw/mwmp/ObjectList.cpp @@ -293,6 +293,13 @@ void ObjectList::editContainers(MWWorld::CellStore* cellStore) mwmp::Main::get().getCellController()->getLocalActor(ptrFound)->updateEquipment(true, true); } + // If this container can be harvested, disable and then enable it again to refresh its animation + if (ptrFound.getClass().canBeHarvested(ptrFound)) + { + MWBase::Environment::get().getWorld()->disable(ptrFound); + MWBase::Environment::get().getWorld()->enable(ptrFound); + } + // If this container was open for us, update its view if (isCurrentContainer) { diff --git a/apps/openmw/mwworld/actionharvest.cpp b/apps/openmw/mwworld/actionharvest.cpp index bcabad033..4dd5b62aa 100644 --- a/apps/openmw/mwworld/actionharvest.cpp +++ b/apps/openmw/mwworld/actionharvest.cpp @@ -146,28 +146,5 @@ namespace MWWorld // Update animation object MWBase::Environment::get().getWorld()->disable(target); MWBase::Environment::get().getWorld()->enable(target); - - /* - Start of tes3mp addition - - Send ID_OBJECT_STATE packets whenever an object is harvested, as long as - the player is logged in on the server - */ - if (mwmp::Main::get().getLocalPlayer()->isLoggedIn()) - { - mwmp::ObjectList* objectList = mwmp::Main::get().getNetworking()->getObjectList(); - objectList->reset(); - objectList->packetOrigin = mwmp::CLIENT_GAMEPLAY; - objectList->addObjectState(target, false); - objectList->sendObjectState(); - - objectList->reset(); - objectList->packetOrigin = mwmp::CLIENT_GAMEPLAY; - objectList->addObjectState(target, true); - objectList->sendObjectState(); - } - /* - End of tes3mp addition - */ } }