1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-25 11:07:45 +00:00
sapphire/src/servers/Server_Zone/Network/PacketWrappers/ModelEquipPacket.h

44 lines
1.4 KiB
C
Raw Normal View History

2017-08-08 13:53:47 +02:00
#ifndef _MODELEQUIPPACKET_H
#define _MODELEQUIPPACKET_H
#include "Actor/Player.h"
#include "Forwards.h"
2017-12-11 16:55:05 +11:00
#include <Server_Common/Network/GamePacketNew.h>
2017-08-08 13:53:47 +02:00
namespace Core {
namespace Network {
2017-12-11 16:55:05 +11:00
namespace Packets {
namespace Server {
2017-08-08 13:53:47 +02:00
2017-12-11 16:55:05 +11:00
/**
* @brief The update model packet.
*/
class ModelEquipPacket : public ZoneChannelPacket< FFXIVIpcModelEquip >
{
public:
ModelEquipPacket( Entity::Player& player ) :
ZoneChannelPacket< FFXIVIpcModelEquip >( player.getId(), player.getId() )
{
initialize( player );
};
2017-08-08 13:53:47 +02:00
2017-12-11 16:55:05 +11:00
private:
void initialize( Entity::Player& player )
{
m_data.mainWeapon = player.getModelMainWeapon();
m_data.offWeapon = player.getModelSubWeapon();
m_data.models[0] = player.getModelForSlot( Inventory::EquipSlot::Head );
m_data.models[1] = player.getModelForSlot( Inventory::EquipSlot::Body );
m_data.models[2] = player.getModelForSlot( Inventory::EquipSlot::Hands );
m_data.models[3] = player.getModelForSlot( Inventory::EquipSlot::Legs );
m_data.models[4] = player.getModelForSlot( Inventory::EquipSlot::Feet );
};
};
2017-08-08 13:53:47 +02:00
2017-12-11 16:55:05 +11:00
} // namespace Server
} // namespace Packets
} // namespace Network
} // namespace Core
2017-08-08 13:53:47 +02:00
#endif /*_MODELEQUIPPACKET_H*/