mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 15:50:20 +00:00
Some checks are pending
Build / Build (arm64) (push) Waiting to run
Build / Build (x86-64) (push) Waiting to run
Build / Build (macOS arm64) (push) Waiting to run
Build / Build (windows-arm64) (push) Waiting to run
Build / Build (windows-x86-64) (push) Waiting to run
Security / CodeQL (C/C++) (push) Waiting to run
Security / Semgrep (push) Waiting to run
Security / Sanitizer Build (ASan/UBSan) (push) Waiting to run
- WDT parser detects WMO-only maps (dungeons/raids/BGs) via MPHD flag 0x01 - WMO-only loading branch in loadOnlineWorldTerrain loads root WMO directly - Area trigger system: loads AreaTrigger.dbc, checks player proximity, sends CMSG_AREATRIGGER - BG queue acceptance via /join command sending CMSG_BATTLEFIELD_PORT - SMSG_INSTANCE_DIFFICULTY handler stub - Map change cleanup (clear old WMO/M2/terrain on map transfer) - 5-second area trigger cooldown after map transfer to prevent ping-pong loops
26 lines
631 B
C++
26 lines
631 B
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
namespace wowee {
|
|
namespace pipeline {
|
|
|
|
struct WDTInfo {
|
|
uint32_t mphdFlags = 0;
|
|
bool isWMOOnly() const { return mphdFlags & 0x01; } // WDTF_GLOBAL_WMO
|
|
|
|
std::string rootWMOPath; // from MWMO chunk (null-terminated string)
|
|
|
|
// MODF placement (only valid for WMO-only maps):
|
|
float position[3] = {}; // ADT placement space coords
|
|
float rotation[3] = {}; // degrees
|
|
uint16_t flags = 0;
|
|
uint16_t doodadSet = 0;
|
|
};
|
|
|
|
WDTInfo parseWDT(const std::vector<uint8_t>& data);
|
|
|
|
} // namespace pipeline
|
|
} // namespace wowee
|