mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-02-06 12:45:34 +00:00
[General] Add placeholders for PlayerTopic & ObjectTrap packets
This commit is contained in:
parent
b1264cca92
commit
08de349133
17 changed files with 248 additions and 26 deletions
|
@ -123,7 +123,7 @@ set(PROCESSORS_PLAYER
|
|||
processors/player/ProcessorPlayerJournal.hpp processors/player/ProcessorPlayerLevel.hpp
|
||||
processors/player/ProcessorPlayerPosition.hpp processors/player/ProcessorPlayerResurrect.hpp
|
||||
processors/player/ProcessorPlayerSkill.hpp processors/player/ProcessorPlayerSpellbook.hpp
|
||||
processors/player/ProcessorPlayerStatsDynamic.hpp
|
||||
processors/player/ProcessorPlayerStatsDynamic.hpp processors/player/ProcessorPlayerTopic.hpp
|
||||
)
|
||||
|
||||
source_group(tes3mp-server\\processors\\player FILES ${PROCESSORS_PLAYER})
|
||||
|
@ -134,9 +134,9 @@ set(PROCESSORS_WORLD
|
|||
processors/world/ProcessorObjectDelete.hpp processors/world/ProcessorObjectLock.hpp
|
||||
processors/world/ProcessorObjectMove.hpp processors/world/ProcessorObjectPlace.hpp
|
||||
processors/world/ProcessorObjectRotate.hpp processors/world/ProcessorObjectScale.hpp
|
||||
processors/world/ProcessorScriptGlobalShort.hpp processors/world/ProcessorScriptLocalFloat.hpp
|
||||
processors/world/ProcessorScriptLocalShort.hpp processors/world/ProcessorScriptMemberShort.hpp
|
||||
processors/world/ProcessorVideoPlay.hpp
|
||||
processors/world/ProcessorObjectTrap.hpp processors/world/ProcessorScriptLocalShort.hpp
|
||||
processors/world/ProcessorScriptLocalFloat.hpp processors/world/ProcessorScriptMemberShort.hpp
|
||||
processors/world/ProcessorScriptGlobalShort.hpp processors/world/ProcessorVideoPlay.hpp
|
||||
)
|
||||
|
||||
source_group(tes3mp-server\\processors\\world FILES ${PROCESSORS_WORLD})
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
#include "processors/player/ProcessorPlayerSkill.hpp"
|
||||
#include "processors/player/ProcessorPlayerSpellbook.hpp"
|
||||
#include "processors/player/ProcessorPlayerStatsDynamic.hpp"
|
||||
#include "processors/player/ProcessorPlayerTopic.hpp"
|
||||
#include "ActorProcessor.hpp"
|
||||
#include "processors/actor/ProcessorActorList.hpp"
|
||||
#include "processors/actor/ProcessorActorAuthority.hpp"
|
||||
|
@ -52,6 +53,7 @@
|
|||
#include "processors/world/ProcessorObjectMove.hpp"
|
||||
#include "processors/world/ProcessorObjectRotate.hpp"
|
||||
#include "processors/world/ProcessorObjectScale.hpp"
|
||||
#include "processors/world/ProcessorObjectTrap.hpp"
|
||||
#include "processors/world/ProcessorScriptLocalShort.hpp"
|
||||
#include "processors/world/ProcessorScriptLocalFloat.hpp"
|
||||
#include "processors/world/ProcessorScriptMemberShort.hpp"
|
||||
|
@ -84,6 +86,7 @@ void ProcessorInitializer()
|
|||
PlayerProcessor::AddProcessor(new ProcessorPlayerSkill());
|
||||
PlayerProcessor::AddProcessor(new ProcessorPlayerSpellbook());
|
||||
PlayerProcessor::AddProcessor(new ProcessorPlayerStatsDynamic());
|
||||
PlayerProcessor::AddProcessor(new ProcessorPlayerTopic());
|
||||
|
||||
ActorProcessor::AddProcessor(new ProcessorActorList());
|
||||
ActorProcessor::AddProcessor(new ProcessorActorAuthority());
|
||||
|
@ -107,6 +110,7 @@ void ProcessorInitializer()
|
|||
WorldProcessor::AddProcessor(new ProcessorObjectPlace());
|
||||
WorldProcessor::AddProcessor(new ProcessorObjectRotate());
|
||||
WorldProcessor::AddProcessor(new ProcessorObjectScale());
|
||||
WorldProcessor::AddProcessor(new ProcessorObjectTrap());
|
||||
WorldProcessor::AddProcessor(new ProcessorScriptLocalShort());
|
||||
WorldProcessor::AddProcessor(new ProcessorScriptLocalFloat());
|
||||
WorldProcessor::AddProcessor(new ProcessorScriptMemberShort());
|
||||
|
|
|
@ -131,18 +131,20 @@ public:
|
|||
{"OnPlayerJournal", Function<void, unsigned short>()},
|
||||
{"OnPlayerFaction", Function<void, unsigned short>()},
|
||||
{"OnPlayerSpellbook", Function<void, unsigned short>()},
|
||||
{"OnPlayerTopic", Function<void, unsigned short>()},
|
||||
{"OnCellLoad", Function<void, unsigned short, const char*>()},
|
||||
{"OnCellUnload", Function<void, unsigned short, const char*>()},
|
||||
{"OnCellDeletion", Function<void, const char*>()},
|
||||
{"OnContainer", Function<void, unsigned short, const char*>()},
|
||||
{"OnDoorState", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectDelete", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectLock", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectPlace", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectScale", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectTrap", Function<void, unsigned short, const char*>()},
|
||||
{"OnActorList", Function<void, unsigned short, const char*>()},
|
||||
{"OnActorCellChange", Function<void, unsigned short, const char*>()},
|
||||
{"OnActorTest", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectPlace", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectDelete", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectScale", Function<void, unsigned short, const char*>()},
|
||||
{"OnObjectLock", Function<void, unsigned short, const char*>()},
|
||||
{"OnDoorState", Function<void, unsigned short, const char*>()},
|
||||
{"OnContainer", Function<void, unsigned short, const char*>()},
|
||||
{"OnPlayerSendMessage", Function<bool, unsigned short, const char*>()},
|
||||
{"OnPlayerEndCharGen", Function<void, unsigned short>()},
|
||||
{"OnGUIAction", Function<void, unsigned short, int, const char*>()},
|
||||
|
|
28
apps/openmw-mp/processors/player/ProcessorPlayerTopic.hpp
Normal file
28
apps/openmw-mp/processors/player/ProcessorPlayerTopic.hpp
Normal file
|
@ -0,0 +1,28 @@
|
|||
#ifndef OPENMW_PROCESSORPLAYERTOPIC_HPP
|
||||
#define OPENMW_PROCESSORPLAYERTOPIC_HPP
|
||||
|
||||
|
||||
#include "apps/openmw-mp/PlayerProcessor.hpp"
|
||||
|
||||
namespace mwmp
|
||||
{
|
||||
class ProcessorPlayerTopic : public PlayerProcessor
|
||||
{
|
||||
public:
|
||||
ProcessorPlayerTopic()
|
||||
{
|
||||
BPP_INIT(ID_PLAYER_TOPIC)
|
||||
}
|
||||
|
||||
void Do(PlayerPacket &packet, Player &player) override
|
||||
{
|
||||
DEBUG_PRINTF(strPacketID.c_str());
|
||||
|
||||
packet.Send(true);
|
||||
|
||||
Script::Call<Script::CallbackIdentity("OnPlayerTopic")>(player.getId());
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#endif //OPENMW_PROCESSORPLAYERTOPIC_HPP
|
27
apps/openmw-mp/processors/world/ProcessorObjectTrap.hpp
Normal file
27
apps/openmw-mp/processors/world/ProcessorObjectTrap.hpp
Normal file
|
@ -0,0 +1,27 @@
|
|||
#ifndef OPENMW_PROCESSOROBJECTTRAP_HPP
|
||||
#define OPENMW_PROCESSOROBJECTTRAP_HPP
|
||||
|
||||
#include "apps/openmw-mp/WorldProcessor.hpp"
|
||||
|
||||
namespace mwmp
|
||||
{
|
||||
class ProcessorObjectTrap : public WorldProcessor
|
||||
{
|
||||
public:
|
||||
ProcessorObjectTrap()
|
||||
{
|
||||
BPP_INIT(ID_OBJECT_TRAP)
|
||||
}
|
||||
|
||||
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());
|
||||
|
||||
packet.Send(true);
|
||||
|
||||
Script::Call<Script::CallbackIdentity("OnObjectTrap")>(player.getId(), event.cell.getDescription().c_str());
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#endif //OPENMW_PROCESSOROBJECTTRAP_HPP
|
|
@ -111,12 +111,12 @@ add_openmw_dir (mwmp\\processors\\player ProcessorChatMessage ProcessorGameConso
|
|||
ProcessorPlayerAttack ProcessorPlayerAttribute ProcessorPlayerBounty ProcessorPlayerCellChange ProcessorPlayerCellState
|
||||
ProcessorPlayerCharClass ProcessorPlayerCharGen ProcessorPlayerDeath ProcessorPlayerEquipment ProcessorPlayerFaction
|
||||
ProcessorPlayerInventory ProcessorPlayerJournal ProcessorPlayerLevel ProcessorPlayerPosition ProcessorPlayerResurrect
|
||||
ProcessorPlayerSkill ProcessorPlayerSpellbook ProcessorPlayerStatsDynamic
|
||||
ProcessorPlayerSkill ProcessorPlayerSpellbook ProcessorPlayerStatsDynamic ProcessorPlayerTopic
|
||||
)
|
||||
|
||||
add_openmw_dir (mwmp\\processors\\world BaseObjectProcessor ProcessorContainer ProcessorDoorState ProcessorMusicPlay
|
||||
ProcessorObjectAnimPlay ProcessorObjectDelete ProcessorObjectLock ProcessorObjectMove ProcessorObjectPlace
|
||||
ProcessorObjectRotate ProcessorObjectScale ProcessorScriptGlobalShort ProcessorScriptLocalFloat
|
||||
ProcessorObjectRotate ProcessorObjectScale ProcessorObjectTrap ProcessorScriptGlobalShort ProcessorScriptLocalFloat
|
||||
ProcessorScriptLocalShort ProcessorScriptMemberShort ProcessorVideoPlay
|
||||
)
|
||||
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#include "processors/player/ProcessorPlayerSkill.hpp"
|
||||
#include "processors/player/ProcessorPlayerSpellbook.hpp"
|
||||
#include "processors/player/ProcessorPlayerStatsDynamic.hpp"
|
||||
#include "processors/player/ProcessorPlayerTopic.hpp"
|
||||
|
||||
#include "WorldProcessor.hpp"
|
||||
#include "processors/world/ProcessorContainer.hpp"
|
||||
|
@ -45,6 +46,7 @@
|
|||
#include "processors/world/ProcessorObjectPlace.hpp"
|
||||
#include "processors/world/ProcessorObjectRotate.hpp"
|
||||
#include "processors/world/ProcessorObjectScale.hpp"
|
||||
#include "processors/world/ProcessorObjectTrap.hpp"
|
||||
#include "processors/world/ProcessorScriptLocalShort.hpp"
|
||||
#include "processors/world/ProcessorScriptLocalFloat.hpp"
|
||||
#include "processors/world/ProcessorScriptMemberShort.hpp"
|
||||
|
@ -94,6 +96,7 @@ void ProcessorInitializer()
|
|||
PlayerProcessor::AddProcessor(new ProcessorPlayerSkill());
|
||||
PlayerProcessor::AddProcessor(new ProcessorPlayerSpellbook());
|
||||
PlayerProcessor::AddProcessor(new ProcessorPlayerStatsDynamic());
|
||||
PlayerProcessor::AddProcessor(new ProcessorPlayerTopic());
|
||||
|
||||
WorldProcessor::AddProcessor(new ProcessorContainer());
|
||||
WorldProcessor::AddProcessor(new ProcessorDoorState());
|
||||
|
@ -105,6 +108,7 @@ void ProcessorInitializer()
|
|||
WorldProcessor::AddProcessor(new ProcessorObjectPlace());
|
||||
WorldProcessor::AddProcessor(new ProcessorObjectRotate());
|
||||
WorldProcessor::AddProcessor(new ProcessorObjectScale());
|
||||
WorldProcessor::AddProcessor(new ProcessorObjectTrap());
|
||||
WorldProcessor::AddProcessor(new ProcessorScriptLocalShort());
|
||||
WorldProcessor::AddProcessor(new ProcessorScriptLocalFloat());
|
||||
WorldProcessor::AddProcessor(new ProcessorScriptMemberShort());
|
||||
|
|
30
apps/openmw/mwmp/processors/player/ProcessorPlayerTopic.hpp
Normal file
30
apps/openmw/mwmp/processors/player/ProcessorPlayerTopic.hpp
Normal file
|
@ -0,0 +1,30 @@
|
|||
#ifndef OPENMW_PROCESSORPLAYERTOPIC_HPP
|
||||
#define OPENMW_PROCESSORPLAYERTOPIC_HPP
|
||||
|
||||
|
||||
#include "apps/openmw/mwmp/PlayerProcessor.hpp"
|
||||
|
||||
namespace mwmp
|
||||
{
|
||||
class ProcessorPlayerTopic : public PlayerProcessor
|
||||
{
|
||||
public:
|
||||
ProcessorPlayerTopic()
|
||||
{
|
||||
BPP_INIT(ID_PLAYER_TOPIC)
|
||||
}
|
||||
|
||||
virtual void Do(PlayerPacket &packet, BasePlayer *player)
|
||||
{
|
||||
if (isRequest())
|
||||
{
|
||||
// Entire list of topics cannot currently be requested from players
|
||||
}
|
||||
//else
|
||||
//static_cast<LocalPlayer*>(player)->addTopics();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
#endif //OPENMW_PROCESSORPLAYERTOPIC_HPP
|
26
apps/openmw/mwmp/processors/world/ProcessorObjectTrap.hpp
Normal file
26
apps/openmw/mwmp/processors/world/ProcessorObjectTrap.hpp
Normal file
|
@ -0,0 +1,26 @@
|
|||
#ifndef OPENMW_PROCESSOROBJECTTRAP_HPP
|
||||
#define OPENMW_PROCESSOROBJECTTRAP_HPP
|
||||
|
||||
|
||||
#include "BaseObjectProcessor.hpp"
|
||||
|
||||
namespace mwmp
|
||||
{
|
||||
class ProcessorObjectTrap : public BaseObjectProcessor
|
||||
{
|
||||
public:
|
||||
ProcessorObjectTrap()
|
||||
{
|
||||
BPP_INIT(ID_OBJECT_TRAP)
|
||||
}
|
||||
|
||||
virtual void Do(WorldPacket &packet, WorldEvent &event)
|
||||
{
|
||||
BaseObjectProcessor::Do(packet, event);
|
||||
|
||||
//event.setObjectTraps(ptrCellStore);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#endif //OPENMW_PROCESSOROBJECTTRAP_HPP
|
|
@ -179,13 +179,13 @@ add_component_dir (openmw-mp\\Packets\\Player
|
|||
PacketPlayerAttribute PacketPlayerBounty PacketPlayerCellChange PacketPlayerCellState PacketPlayerClass
|
||||
PacketPlayerDeath PacketPlayerEquipment PacketPlayerFaction PacketPlayerInventory PacketPlayerJournal PacketPlayerLevel
|
||||
PacketPlayerPosition PacketPlayerResurrect PacketPlayerSkill PacketPlayerSpellbook PacketPlayerStatsDynamic
|
||||
PacketPlayerActiveSkills PacketGUIBoxes PacketTime
|
||||
PacketPlayerTopic PacketPlayerActiveSkills PacketGUIBoxes PacketTime
|
||||
)
|
||||
|
||||
add_component_dir (openmw-mp\\Packets\\World
|
||||
WorldPacket
|
||||
PacketObjectDelete PacketObjectPlace PacketObjectScale PacketObjectLock PacketObjectMove PacketObjectRotate
|
||||
PacketObjectAnimPlay PacketContainer PacketDoorState PacketMusicPlay PacketVideoPlay PacketScriptLocalShort
|
||||
PacketContainer PacketObjectAnimPlay PacketObjectDelete PacketDoorState PacketObjectLock PacketObjectMove PacketObjectPlace
|
||||
PacketObjectRotate PacketObjectScale PacketObjectTrap PacketMusicPlay PacketVideoPlay PacketScriptLocalShort
|
||||
PacketScriptLocalFloat PacketScriptMemberShort PacketScriptGlobalShort
|
||||
)
|
||||
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#include "../Packets/Player/PacketPlayerSkill.hpp"
|
||||
#include "../Packets/Player/PacketPlayerSpellbook.hpp"
|
||||
#include "../Packets/Player/PacketPlayerStatsDynamic.hpp"
|
||||
#include "../Packets/Player/PacketPlayerTopic.hpp"
|
||||
|
||||
#include "PlayerPacketController.hpp"
|
||||
|
||||
|
@ -74,6 +75,7 @@ mwmp::PlayerPacketController::PlayerPacketController(RakNet::RakPeerInterface *p
|
|||
AddPacket<PacketPlayerSkill>(&packets, peer);
|
||||
AddPacket<PacketPlayerSpellbook>(&packets, peer);
|
||||
AddPacket<PacketPlayerStatsDynamic>(&packets, peer);
|
||||
AddPacket<PacketPlayerTopic>(&packets, peer);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -2,13 +2,14 @@
|
|||
#include <boost/foreach.hpp>
|
||||
#include <boost/make_shared.hpp>
|
||||
|
||||
#include "../Packets/World/PacketObjectAnimPlay.hpp"
|
||||
#include "../Packets/World/PacketObjectDelete.hpp"
|
||||
#include "../Packets/World/PacketObjectPlace.hpp"
|
||||
#include "../Packets/World/PacketObjectScale.hpp"
|
||||
#include "../Packets/World/PacketObjectLock.hpp"
|
||||
#include "../Packets/World/PacketObjectMove.hpp"
|
||||
#include "../Packets/World/PacketObjectPlace.hpp"
|
||||
#include "../Packets/World/PacketObjectRotate.hpp"
|
||||
#include "../Packets/World/PacketObjectAnimPlay.hpp"
|
||||
#include "../Packets/World/PacketObjectScale.hpp"
|
||||
#include "../Packets/World/PacketObjectTrap.hpp"
|
||||
|
||||
#include "../Packets/World/PacketContainer.hpp"
|
||||
#include "../Packets/World/PacketDoorState.hpp"
|
||||
|
@ -32,14 +33,15 @@ inline void AddPacket(mwmp::WorldPacketController::packets_t *packets, RakNet::R
|
|||
|
||||
mwmp::WorldPacketController::WorldPacketController(RakNet::RakPeerInterface *peer)
|
||||
{
|
||||
AddPacket<PacketObjectAnimPlay>(&packets, peer);
|
||||
AddPacket<PacketObjectDelete>(&packets, peer);
|
||||
AddPacket<PacketObjectPlace>(&packets, peer);
|
||||
AddPacket<PacketObjectScale>(&packets, peer);
|
||||
AddPacket<PacketObjectLock>(&packets, peer);
|
||||
AddPacket<PacketObjectMove>(&packets, peer);
|
||||
AddPacket<PacketObjectPlace>(&packets, peer);
|
||||
AddPacket<PacketObjectRotate>(&packets, peer);
|
||||
AddPacket<PacketObjectAnimPlay>(&packets, peer);
|
||||
|
||||
AddPacket<PacketObjectScale>(&packets, peer);
|
||||
AddPacket<PacketObjectTrap>(&packets, peer);
|
||||
|
||||
AddPacket<PacketContainer>(&packets, peer);
|
||||
AddPacket<PacketDoorState>(&packets, peer);
|
||||
AddPacket<PacketMusicPlay>(&packets, peer);
|
||||
|
|
|
@ -40,6 +40,7 @@ enum GameMessages
|
|||
ID_PLAYER_SKILL,
|
||||
ID_PLAYER_SPELLBOOK,
|
||||
ID_PLAYER_STATS_DYNAMIC,
|
||||
ID_PLAYER_TOPIC,
|
||||
|
||||
ID_ACTOR_LIST,
|
||||
ID_ACTOR_AUTHORITY,
|
||||
|
@ -53,14 +54,15 @@ enum GameMessages
|
|||
ID_ACTOR_SPEECH,
|
||||
ID_ACTOR_STATS_DYNAMIC,
|
||||
|
||||
ID_OBJECT_PLACE,
|
||||
ID_OBJECT_ANIM_PLAY,
|
||||
ID_OBJECT_DELETE,
|
||||
ID_OBJECT_SCALE,
|
||||
ID_OBJECT_LOCK,
|
||||
ID_OBJECT_MOVE,
|
||||
ID_OBJECT_PLACE,
|
||||
ID_OBJECT_ROTATE,
|
||||
ID_OBJECT_ANIM_PLAY,
|
||||
|
||||
ID_OBJECT_SCALE,
|
||||
ID_OBJECT_TRAP,
|
||||
|
||||
ID_CONTAINER,
|
||||
ID_DOOR_STATE,
|
||||
ID_MUSIC_PLAY,
|
||||
|
|
15
components/openmw-mp/Packets/Player/PacketPlayerTopic.cpp
Normal file
15
components/openmw-mp/Packets/Player/PacketPlayerTopic.cpp
Normal file
|
@ -0,0 +1,15 @@
|
|||
#include <components/openmw-mp/NetworkMessages.hpp>
|
||||
#include "PacketPlayerTopic.hpp"
|
||||
|
||||
using namespace std;
|
||||
using namespace mwmp;
|
||||
|
||||
PacketPlayerTopic::PacketPlayerTopic(RakNet::RakPeerInterface *peer) : PlayerPacket(peer)
|
||||
{
|
||||
packetID = ID_PLAYER_TOPIC;
|
||||
}
|
||||
|
||||
void PacketPlayerTopic::Packet(RakNet::BitStream *bs, bool send)
|
||||
{
|
||||
PlayerPacket::Packet(bs, send);
|
||||
}
|
18
components/openmw-mp/Packets/Player/PacketPlayerTopic.hpp
Normal file
18
components/openmw-mp/Packets/Player/PacketPlayerTopic.hpp
Normal file
|
@ -0,0 +1,18 @@
|
|||
#ifndef OPENMW_PACKETPLAYERTOPIC_HPP
|
||||
#define OPENMW_PACKETPLAYERTOPIC_HPP
|
||||
|
||||
#include <components/openmw-mp/Packets/Player/PlayerPacket.hpp>
|
||||
|
||||
namespace mwmp
|
||||
{
|
||||
class PacketPlayerTopic : public PlayerPacket
|
||||
{
|
||||
public:
|
||||
PacketPlayerTopic(RakNet::RakPeerInterface *peer);
|
||||
|
||||
virtual void Packet(RakNet::BitStream *bs, bool send);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
#endif //OPENMW_PACKETPLAYERTOPIC_HPP
|
45
components/openmw-mp/Packets/World/PacketObjectTrap.cpp
Normal file
45
components/openmw-mp/Packets/World/PacketObjectTrap.cpp
Normal file
|
@ -0,0 +1,45 @@
|
|||
#include <components/openmw-mp/NetworkMessages.hpp>
|
||||
#include "PacketObjectTrap.hpp"
|
||||
|
||||
using namespace mwmp;
|
||||
|
||||
PacketObjectTrap::PacketObjectTrap(RakNet::RakPeerInterface *peer) : WorldPacket(peer)
|
||||
{
|
||||
packetID = ID_OBJECT_TRAP;
|
||||
}
|
||||
|
||||
void PacketObjectTrap::Packet(RakNet::BitStream *bs, bool send)
|
||||
{
|
||||
WorldPacket::Packet(bs, send);
|
||||
|
||||
if (!send)
|
||||
event->worldObjects.clear();
|
||||
else
|
||||
event->worldObjectCount = (unsigned int)(event->worldObjects.size());
|
||||
|
||||
RW(event->worldObjectCount, send);
|
||||
|
||||
RW(event->cell.mData.mFlags, send);
|
||||
RW(event->cell.mData.mX, send);
|
||||
RW(event->cell.mData.mY, send);
|
||||
RW(event->cell.mName, send);
|
||||
|
||||
WorldObject worldObject;
|
||||
|
||||
for (unsigned int i = 0; i < event->worldObjectCount; i++)
|
||||
{
|
||||
if (send)
|
||||
{
|
||||
worldObject = event->worldObjects.at(i);
|
||||
}
|
||||
|
||||
RW(worldObject.refId, send);
|
||||
RW(worldObject.refNumIndex, send);
|
||||
RW(worldObject.mpNum, send);
|
||||
|
||||
if (!send)
|
||||
{
|
||||
event->worldObjects.push_back(worldObject);
|
||||
}
|
||||
}
|
||||
}
|
17
components/openmw-mp/Packets/World/PacketObjectTrap.hpp
Normal file
17
components/openmw-mp/Packets/World/PacketObjectTrap.hpp
Normal file
|
@ -0,0 +1,17 @@
|
|||
#ifndef OPENMW_PACKETOBJECTTRAP_HPP
|
||||
#define OPENMW_PACKETOBJECTTRAP_HPP
|
||||
|
||||
#include <components/openmw-mp/Packets/World/WorldPacket.hpp>
|
||||
|
||||
namespace mwmp
|
||||
{
|
||||
class PacketObjectTrap : public WorldPacket
|
||||
{
|
||||
public:
|
||||
PacketObjectTrap(RakNet::RakPeerInterface *peer);
|
||||
|
||||
virtual void Packet(RakNet::BitStream *bs, bool send);
|
||||
};
|
||||
}
|
||||
|
||||
#endif //OPENMW_PACKETOBJECTTRAP_HPP
|
Loading…
Reference in a new issue