mirror of
https://github.com/mangosfour/server.git
synced 2025-12-18 10:37:01 +00:00
Update ObjectGuid to cata, remove ref in ByteBuffer::WriteGuid*
Signed-off-by: Yaki Khadafi <elsoldollo@gmail.com> Signed-off-by: Salja <salja2012@hotmail.de>
This commit is contained in:
parent
2cc326182a
commit
936404c101
3 changed files with 27 additions and 30 deletions
|
|
@ -92,7 +92,7 @@ class MANGOS_DLL_SPEC ObjectGuid
|
||||||
public: // constructors
|
public: // constructors
|
||||||
ObjectGuid() : m_guid(0) {}
|
ObjectGuid() : m_guid(0) {}
|
||||||
explicit ObjectGuid(uint64 guid) : m_guid(guid) {}
|
explicit ObjectGuid(uint64 guid) : m_guid(guid) {}
|
||||||
ObjectGuid(HighGuid hi, uint32 entry, uint32 counter) : m_guid(counter ? uint64(counter) | (uint64(entry) << 24) | (uint64(hi) << 52) : 0) {}
|
ObjectGuid(HighGuid hi, uint32 entry, uint32 counter) : m_guid(counter ? uint64(counter) | (uint64(entry) << 32) | (uint64(hi) << 52) : 0) {}
|
||||||
ObjectGuid(HighGuid hi, uint32 counter) : m_guid(counter ? uint64(counter) | (uint64(hi) << 52) : 0) {}
|
ObjectGuid(HighGuid hi, uint32 counter) : m_guid(counter ? uint64(counter) | (uint64(hi) << 52) : 0) {}
|
||||||
|
|
||||||
operator uint64() const { return m_guid; }
|
operator uint64() const { return m_guid; }
|
||||||
|
|
@ -111,19 +111,19 @@ class MANGOS_DLL_SPEC ObjectGuid
|
||||||
public: // accessors
|
public: // accessors
|
||||||
uint64 GetRawValue() const { return m_guid; }
|
uint64 GetRawValue() const { return m_guid; }
|
||||||
HighGuid GetHigh() const { return HighGuid((m_guid >> 52) & 0x00000FFF); }
|
HighGuid GetHigh() const { return HighGuid((m_guid >> 52) & 0x00000FFF); }
|
||||||
uint32 GetEntry() const { return HasEntry() ? uint32((m_guid >> 24) & UI64LIT(0x0000000000FFFFFF)) : 0; }
|
uint32 GetEntry() const { return HasEntry() ? uint32((m_guid >> 32) & UI64LIT(0x0000000000FFFFFF)) : 0; }
|
||||||
uint32 GetCounter() const
|
uint32 GetCounter() const
|
||||||
{
|
{
|
||||||
return HasEntry()
|
return HasEntry()
|
||||||
? uint32(m_guid & UI64LIT(0x0000000000FFFFFF))
|
? uint32(m_guid & UI64LIT(0x00000000FFFFFFFF))
|
||||||
: uint32(m_guid & UI64LIT(0x00000000FFFFFFFF));
|
: uint32(m_guid & UI64LIT(0x000000FFFFFFFFFF));
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32 GetMaxCounter(HighGuid high)
|
static uint32 GetMaxCounter(HighGuid high)
|
||||||
{
|
{
|
||||||
return HasEntry(high)
|
return HasEntry(high)
|
||||||
? uint32(0x00FFFFFF)
|
? uint32(0x00FFFFFFFF)
|
||||||
: uint32(0xFFFFFFFF);
|
: uint32(0xFFFFFFFFFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32 GetMaxCounter() const { return GetMaxCounter(GetHigh()); }
|
uint32 GetMaxCounter() const { return GetMaxCounter(GetHigh()); }
|
||||||
|
|
@ -311,7 +311,7 @@ HASH_NAMESPACE_END
|
||||||
}
|
}
|
||||||
|
|
||||||
#define DEFINE_WRITEGUIDMASK(T1, T2) template <T1> \
|
#define DEFINE_WRITEGUIDMASK(T1, T2) template <T1> \
|
||||||
void ByteBuffer::WriteGuidMask(ObjectGuid& guid) \
|
void ByteBuffer::WriteGuidMask(ObjectGuid guid) \
|
||||||
{ \
|
{ \
|
||||||
uint8 maskArr[] = { T2 }; \
|
uint8 maskArr[] = { T2 }; \
|
||||||
for (uint8 i = 0; i < countof(maskArr); ++i) \
|
for (uint8 i = 0; i < countof(maskArr); ++i) \
|
||||||
|
|
@ -328,7 +328,7 @@ HASH_NAMESPACE_END
|
||||||
}
|
}
|
||||||
|
|
||||||
#define DEFINE_WRITEGUIDBYTES(T1, T2) template <T1> \
|
#define DEFINE_WRITEGUIDBYTES(T1, T2) template <T1> \
|
||||||
void ByteBuffer::WriteGuidBytes(ObjectGuid& guid) \
|
void ByteBuffer::WriteGuidBytes(ObjectGuid guid) \
|
||||||
{ \
|
{ \
|
||||||
uint8 maskArr[] = { T2 }; \
|
uint8 maskArr[] = { T2 }; \
|
||||||
for (uint8 i = 0; i < countof(maskArr); ++i) \
|
for (uint8 i = 0; i < countof(maskArr); ++i) \
|
||||||
|
|
|
||||||
|
|
@ -164,8 +164,8 @@ namespace Movement
|
||||||
case MoveSplineFlag::Final_Target:
|
case MoveSplineFlag::Final_Target:
|
||||||
{
|
{
|
||||||
data.WriteBits(2, 2);
|
data.WriteBits(2, 2);
|
||||||
ObjectGuid guid = ObjectGuid(move_spline.facing.target);
|
|
||||||
data.WriteGuidMask<4, 3, 7, 2, 6, 1, 0, 5>(guid);
|
data.WriteGuidMask<4, 3, 7, 2, 6, 1, 0, 5>(ObjectGuid(move_spline.facing.target));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case MoveSplineFlag::Final_Angle:
|
case MoveSplineFlag::Final_Angle:
|
||||||
|
|
@ -198,10 +198,7 @@ namespace Movement
|
||||||
if (move_spline.splineflags & MoveSplineFlag::Final_Angle)
|
if (move_spline.splineflags & MoveSplineFlag::Final_Angle)
|
||||||
data << move_spline.facing.angle;
|
data << move_spline.facing.angle;
|
||||||
else if (move_spline.splineflags & MoveSplineFlag::Final_Target)
|
else if (move_spline.splineflags & MoveSplineFlag::Final_Target)
|
||||||
{
|
data.WriteGuidBytes<5, 3, 7, 1, 6, 4, 2, 0>(ObjectGuid(move_spline.facing.target));
|
||||||
ObjectGuid guid = ObjectGuid(move_spline.facing.target);
|
|
||||||
data.WriteGuidMask<5, 3, 7, 1, 6, 4, 2, 0>(guid);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (uint32 i = 0; i < nodes; ++i)
|
for (uint32 i = 0; i < nodes; ++i)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -253,21 +253,21 @@ class ByteBuffer
|
||||||
void ReadGuidMask(ObjectGuid& guid);
|
void ReadGuidMask(ObjectGuid& guid);
|
||||||
|
|
||||||
template<BITS_1>
|
template<BITS_1>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_2>
|
template<BITS_2>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_3>
|
template<BITS_3>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_4>
|
template<BITS_4>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_5>
|
template<BITS_5>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_6>
|
template<BITS_6>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_7>
|
template<BITS_7>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
template<BITS_8>
|
template<BITS_8>
|
||||||
void WriteGuidMask(ObjectGuid& guid);
|
void WriteGuidMask(ObjectGuid guid);
|
||||||
|
|
||||||
template<BITS_1>
|
template<BITS_1>
|
||||||
void ReadGuidBytes(ObjectGuid& guid);
|
void ReadGuidBytes(ObjectGuid& guid);
|
||||||
|
|
@ -287,21 +287,21 @@ class ByteBuffer
|
||||||
void ReadGuidBytes(ObjectGuid& guid);
|
void ReadGuidBytes(ObjectGuid& guid);
|
||||||
|
|
||||||
template<BITS_1>
|
template<BITS_1>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_2>
|
template<BITS_2>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_3>
|
template<BITS_3>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_4>
|
template<BITS_4>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_5>
|
template<BITS_5>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_6>
|
template<BITS_6>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_7>
|
template<BITS_7>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
template<BITS_8>
|
template<BITS_8>
|
||||||
void WriteGuidBytes(ObjectGuid& guid);
|
void WriteGuidBytes(ObjectGuid guid);
|
||||||
|
|
||||||
template <typename T> void put(size_t pos, T value)
|
template <typename T> void put(size_t pos, T value)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue