mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-03 08:03:50 +00:00
Update opcode data and movement integration docs/code
This commit is contained in:
parent
69b23f4edd
commit
73e7c86621
11 changed files with 41 additions and 15 deletions
|
|
@ -105,6 +105,13 @@ public:
|
|||
|
||||
bool isEntityMoving() const { return isMoving_; }
|
||||
|
||||
// Returns the latest server-authoritative position: destination if moving, current if not.
|
||||
// Unlike getX/Y/Z (which only update via updateMovement), this always reflects the
|
||||
// last known server position regardless of distance culling.
|
||||
float getLatestX() const { return isMoving_ ? moveEndX_ : x; }
|
||||
float getLatestY() const { return isMoving_ ? moveEndY_ : y; }
|
||||
float getLatestZ() const { return isMoving_ ? moveEndZ_ : z; }
|
||||
|
||||
// Object type
|
||||
ObjectType getType() const { return type; }
|
||||
void setType(ObjectType t) { type = t; }
|
||||
|
|
|
|||
|
|
@ -1049,6 +1049,7 @@ private:
|
|||
|
||||
// ---- Creature movement handler ----
|
||||
void handleMonsterMove(network::Packet& packet);
|
||||
void handleCompressedMoves(network::Packet& packet);
|
||||
void handleMonsterMoveTransport(network::Packet& packet);
|
||||
|
||||
// ---- Other player movement (MSG_MOVE_* from server) ----
|
||||
|
|
|
|||
|
|
@ -157,6 +157,7 @@ enum class LogicalOpcode : uint16_t {
|
|||
|
||||
// ---- Creature Movement ----
|
||||
SMSG_MONSTER_MOVE,
|
||||
SMSG_COMPRESSED_MOVES, // Vanilla/Classic batch movement packet (0x6B)
|
||||
|
||||
// ---- Phase 2: Combat Core ----
|
||||
CMSG_ATTACKSWING,
|
||||
|
|
|
|||
|
|
@ -1450,7 +1450,11 @@ struct MonsterMoveData {
|
|||
|
||||
class MonsterMoveParser {
|
||||
public:
|
||||
// WotLK 3.3.5a format: PackedGUID + uint8 unk + float[3] + uint32 splineId + uint8 moveType + ...
|
||||
static bool parse(network::Packet& packet, MonsterMoveData& data);
|
||||
// Vanilla 1.12 format: PackedGUID + float[3] + uint32 timeInMs + uint8 moveType + ...
|
||||
// Used for Classic/TBC/Turtle WoW servers (no splineId, timeInMs before moveType)
|
||||
static bool parseVanilla(network::Packet& packet, MonsterMoveData& data);
|
||||
};
|
||||
|
||||
/** SMSG_ATTACKSTART data */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue