openmw-tes3coop/apps/openmw-mp/processors/world/ProcessorObjectState.hpp

33 lines
924 B
C++
Raw Normal View History

#ifndef OPENMW_PROCESSOROBJECTSTATE_HPP
#define OPENMW_PROCESSOROBJECTSTATE_HPP
#include "../WorldProcessor.hpp"
namespace mwmp
{
class ProcessorObjectState : public WorldProcessor
{
public:
ProcessorObjectState()
{
BPP_INIT(ID_OBJECT_STATE)
}
void Do(WorldPacket &packet, std::shared_ptr<Player> player, BaseEvent &event) override
{
LOG_MESSAGE_SIMPLE(Log::LOG_INFO, "Received %s from %s", strPacketID.c_str(), player->npc.mName.c_str());
packet.Send(true);
auto objCtrl = Networking::get().getState().getObjectCtrl();
auto objects = objCtrl.copyObjects(event);
Networking::get().getState().getEventCtrl().Call<CoreEvent::ON_OBJECT_STATE>(player, objects);
objCtrl.sendObjects(player, objects, event.cell);
}
};
}
#endif //OPENMW_PROCESSOROBJECTSTATE_HPP