// // Created by koncord on 03.04.17. // #ifndef OPENMW_PROCESSOROBJECTPLACE_HPP #define OPENMW_PROCESSOROBJECTPLACE_HPP #include "apps/openmw-mp/WorldProcessor.hpp" #include namespace mwmp { class ProcessorObjectPlace : public WorldProcessor { public: ProcessorObjectPlace() { BPP_INIT(ID_OBJECT_PLACE) } void Do(WorldPacket &packet, Player &player, BaseEvent &event) override { LOG_MESSAGE_SIMPLE(Log::LOG_INFO, "Received %s from %s", strPacketID.c_str(), player.npc.mName.c_str()); for (unsigned int i = 0; i < event.objectChanges.count; i++) { event.objectChanges.objects.at(i).mpNum = mwmp::Networking::getPtr()->incrementMpNum(); } // Send this packet back to the original sender with the mpNum generation from above, // then send it to the other players packet.Send(false); packet.Send(true); Script::Call(player.getId(), event.cell.getDescription().c_str()); } }; } #endif //OPENMW_PROCESSOROBJECTPLACE_HPP