Core/Misc: Minor header cleanup

This commit is contained in:
Shauren
2025-12-27 16:21:11 +01:00
parent e654f0a15b
commit 61ce403d6f
7 changed files with 62 additions and 35 deletions

View File

@@ -637,7 +637,7 @@ void BaseEntity::ClearUpdateMask(bool remove)
void BaseEntity::BuildFieldsUpdate(Player* player, UpdateDataMapType& data_map) const
{
UpdateDataMapType::iterator iter = data_map.try_emplace(player, player->GetMapId()).first;
UpdateDataMapType::iterator iter = data_map.emplace(player, player->GetMapId()).first;
BuildValuesUpdateBlockForPlayer(&iter->second, iter->first);
}

View File

@@ -18,6 +18,13 @@
#include "SmoothPhasing.h"
#include "MapUtils.h"
SmoothPhasing::SmoothPhasing() = default;
SmoothPhasing::SmoothPhasing(SmoothPhasing const&) = default;
SmoothPhasing::SmoothPhasing(SmoothPhasing&&) noexcept = default;
SmoothPhasing& SmoothPhasing::operator=(SmoothPhasing const&) = default;
SmoothPhasing& SmoothPhasing::operator=(SmoothPhasing&&) noexcept = default;
SmoothPhasing::~SmoothPhasing() = default;
void SmoothPhasing::SetViewerDependentInfo(ObjectGuid seer, SmoothPhasingInfo const& info)
{
if (!std::holds_alternative<SmoothPhasingInfoViewerDependent>(_storage))

View File

@@ -37,6 +37,13 @@ struct SmoothPhasingInfo
class TC_GAME_API SmoothPhasing
{
public:
SmoothPhasing();
SmoothPhasing(SmoothPhasing const&);
SmoothPhasing(SmoothPhasing&&) noexcept;
SmoothPhasing& operator=(SmoothPhasing const&);
SmoothPhasing& operator=(SmoothPhasing&&) noexcept;
~SmoothPhasing();
void SetViewerDependentInfo(ObjectGuid seer, SmoothPhasingInfo const& info);
void ClearViewerDependentInfo(ObjectGuid seer);

View File

@@ -18,20 +18,38 @@
#include "UpdateData.h"
#include "Errors.h"
#include "WorldPacket.h"
#include "Opcodes.h"
#include <utility>
UpdateData::UpdateData(uint32 map) : m_map(map), m_blockCount(0) { }
UpdateData::UpdateData(UpdateData&& right) noexcept :
m_map(right.m_map), m_blockCount(std::exchange(right.m_blockCount, 0)),
m_destroyGUIDs(std::move(right.m_destroyGUIDs)),
m_outOfRangeGUIDs(std::move(right.m_outOfRangeGUIDs)),
m_data(std::move(right.m_data))
{
}
UpdateData& UpdateData::operator=(UpdateData&& right) noexcept
{
if (this != &right)
{
m_map = right.m_map;
m_blockCount = std::exchange(right.m_blockCount, 0);
m_destroyGUIDs = std::move(right.m_destroyGUIDs);
m_outOfRangeGUIDs = std::move(right.m_outOfRangeGUIDs);
m_data = std::move(right.m_data);
}
return *this;
}
UpdateData::~UpdateData() = default;
void UpdateData::AddDestroyObject(ObjectGuid guid)
{
m_destroyGUIDs.insert(guid);
}
void UpdateData::AddOutOfRangeGUID(GuidSet& guids)
{
m_outOfRangeGUIDs.insert(guids.begin(), guids.end());
}
void UpdateData::AddOutOfRangeGUID(ObjectGuid guid)
{
m_outOfRangeGUIDs.insert(guid);

View File

@@ -15,13 +15,13 @@
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __UPDATEDATA_H
#define __UPDATEDATA_H
#ifndef TRINITYCORE_UPDATE_DATA_H
#define TRINITYCORE_UPDATE_DATA_H
#include "Define.h"
#include "ByteBuffer.h"
#include "Define.h"
#include "FlatSet.h"
#include "ObjectGuid.h"
#include <set>
class WorldPacket;
@@ -37,14 +37,11 @@ class UpdateData
{
public:
UpdateData(uint32 map);
UpdateData(UpdateData&& right) noexcept : m_map(right.m_map), m_blockCount(right.m_blockCount),
m_outOfRangeGUIDs(std::move(right.m_outOfRangeGUIDs)),
m_data(std::move(right.m_data))
{
}
UpdateData(UpdateData&& right) noexcept;
UpdateData& operator=(UpdateData&& right) noexcept;
~UpdateData();
void AddDestroyObject(ObjectGuid guid);
void AddOutOfRangeGUID(GuidSet& guids);
void AddOutOfRangeGUID(ObjectGuid guid);
void AddUpdateBlock() { ++m_blockCount; }
ByteBuffer& GetBuffer() { return m_data; }
@@ -52,16 +49,15 @@ class UpdateData
bool HasData() const { return m_blockCount > 0 || !m_outOfRangeGUIDs.empty() || !m_destroyGUIDs.empty(); }
void Clear();
GuidSet const& GetOutOfRangeGUIDs() const { return m_outOfRangeGUIDs; }
protected:
uint32 m_map;
uint32 m_blockCount;
GuidSet m_destroyGUIDs;
GuidSet m_outOfRangeGUIDs;
Trinity::Containers::FlatSet<ObjectGuid> m_destroyGUIDs;
Trinity::Containers::FlatSet<ObjectGuid> m_outOfRangeGUIDs;
ByteBuffer m_data;
UpdateData(UpdateData const& right) = delete;
UpdateData& operator=(UpdateData const& right) = delete;
};
#endif
#endif // TRINITYCORE_UPDATE_DATA_H

View File

@@ -34,6 +34,18 @@
#include "Unit.h"
#include <sstream>
class VehicleJoinEvent : public BasicEvent
{
public:
VehicleJoinEvent(Vehicle* v, Unit* u) : Target(v), Passenger(u), Seat(Target->Seats.end()) { }
bool Execute(uint64, uint32) override;
void Abort(uint64) override;
Vehicle* Target;
Unit* Passenger;
SeatMap::iterator Seat;
};
Vehicle::Vehicle(Unit* unit, VehicleEntry const* vehInfo, uint32 creatureEntry) :
UsableSeatNum(0), _me(unit), _vehicleInfo(vehInfo), _creatureEntry(creatureEntry), _status(STATUS_NONE)
{

View File

@@ -122,17 +122,4 @@ class TC_GAME_API Vehicle final : public TransportBase
PendingJoinEventContainer _pendingJoinEvents; ///< Collection of delayed join events for prospective passengers
};
class TC_GAME_API VehicleJoinEvent : public BasicEvent
{
friend class Vehicle;
protected:
VehicleJoinEvent(Vehicle* v, Unit* u) : Target(v), Passenger(u), Seat(Target->Seats.end()) { }
bool Execute(uint64, uint32) override;
void Abort(uint64) override;
Vehicle* Target;
Unit* Passenger;
SeatMap::iterator Seat;
};
#endif