Core/Movement: Updated spline flags

This commit is contained in:
Shauren
2015-04-29 09:32:24 +02:00
parent 4e93345fbe
commit 4f7b76bb83
2 changed files with 20 additions and 20 deletions

View File

@@ -32,12 +32,12 @@ namespace Movement
{
None = 0x00000000,
// x00-x07 used as animation Ids storage in pair with Animation flag
Unknown0 = 0x00000008, // NOT VERIFIED
Unknown0 = 0x00000008, // NOT VERIFIED - does someting related to falling/fixed orientation
FallingSlow = 0x00000010,
Done = 0x00000020,
Falling = 0x00000040, // Affects elevation computation, can't be combined with Parabolic flag
No_Spline = 0x00000080,
Unknown2 = 0x00000100, // NOT VERIFIED
Unknown1 = 0x00000100, // NOT VERIFIED
Flying = 0x00000200, // Smooth movement(Catmullrom interpolation mode), flying animation
OrientationFixed = 0x00000400, // Model orientation fixed
Catmullrom = 0x00000800, // Used Catmullrom interpolation mode
@@ -46,21 +46,21 @@ namespace Movement
Frozen = 0x00004000, // Will never arrive
TransportEnter = 0x00008000,
TransportExit = 0x00010000,
Unknown3 = 0x00020000, // NOT VERIFIED
Unknown4 = 0x00040000, // NOT VERIFIED
Unknown2 = 0x00020000, // NOT VERIFIED
Unknown3 = 0x00040000, // NOT VERIFIED
OrientationInversed = 0x00080000,
SmoothGroundPath = 0x00100000,
Walkmode = 0x00200000,
UncompressedPath = 0x00400000,
Unknown6 = 0x00800000, // NOT VERIFIED
Animation = 0x01000000, // Plays animation after some time passed
Parabolic = 0x02000000, // Affects elevation computation, can't be combined with Falling flag
Final_Point = 0x04000000,
Final_Target = 0x08000000,
Final_Angle = 0x10000000,
Unknown7 = 0x20000000, // NOT VERIFIED
Unknown8 = 0x40000000, // NOT VERIFIED
Unknown9 = 0x80000000, // NOT VERIFIED
Unknown4 = 0x00800000, // NOT VERIFIED
Unknown5 = 0x01000000, // NOT VERIFIED
Animation = 0x02000000, // Plays animation after some time passed
Parabolic = 0x04000000, // Affects elevation computation, can't be combined with Falling flag
Final_Point = 0x08000000,
Final_Target = 0x10000000,
Final_Angle = 0x20000000,
Unknown6 = 0x40000000, // NOT VERIFIED
Unknown7 = 0x80000000, // NOT VERIFIED
// Masks
Mask_Final_Facing = Final_Point | Final_Target | Final_Angle,
@@ -69,7 +69,7 @@ namespace Movement
// flags that shouldn't be appended into SMSG_MONSTER_MOVE\SMSG_MONSTER_MOVE_TRANSPORT packet, should be more probably
Mask_No_Monster_Move = Mask_Final_Facing | Mask_Animations | Done,
// Unused, not suported flags
Mask_Unused = No_Spline|Enter_Cycle|Frozen|Unknown0|Unknown2|Unknown3|Unknown4|Unknown6|Unknown7|Unknown8|Unknown9
Mask_Unused = No_Spline|Enter_Cycle|Frozen|Unknown0|Unknown1|Unknown2|Unknown3|Unknown4|Unknown5|Unknown6|Unknown7
};
inline uint32& raw() { return (uint32&)*this; }
@@ -114,7 +114,7 @@ namespace Movement
bool done : 1;
bool falling : 1;
bool no_spline : 1;
bool unknown2 : 1;
bool unknown1 : 1;
bool flying : 1;
bool orientationFixed : 1;
bool catmullrom : 1;
@@ -123,21 +123,21 @@ namespace Movement
bool frozen : 1;
bool transportEnter : 1;
bool transportExit : 1;
bool unknown2 : 1;
bool unknown3 : 1;
bool unknown4 : 1;
bool orientationInversed : 1;
bool smoothGroundPath : 1;
bool walkmode : 1;
bool uncompressedPath : 1;
bool unknown6 : 1;
bool unknown4 : 1;
bool unknown5 : 1;
bool animation : 1;
bool parabolic : 1;
bool final_point : 1;
bool final_target : 1;
bool final_angle : 1;
bool unknown6 : 1;
bool unknown7 : 1;
bool unknown8 : 1;
bool unknown9 : 1;
};
#pragma pack(pop)
}

View File

@@ -198,9 +198,9 @@ ByteBuffer& WorldPackets::operator<<(ByteBuffer& data, Movement::MonsterSplineFi
data << monsterSplineFilter.BaseSpeed;
data << monsterSplineFilter.StartOffset;
data << monsterSplineFilter.DistToPrevFilterKey;
data << monsterSplineFilter.AddedToStart;
for (WorldPackets::Movement::MonsterSplineFilterKey const& filterKey : monsterSplineFilter.FilterKeys)
data << filterKey;
data << monsterSplineFilter.AddedToStart;
data.WriteBits(monsterSplineFilter.FilterFlags, 2);
data.FlushBits();