Filter WMO decorative geometry from collision, fix tram portal trigger IDs

Parse MOPY per-triangle flags in WMO groups and exclude detail/decorative
triangles (flag 0x04) from collision detection. This prevents invisible
walls from objects like gears and railings in WMO interiors.

Add WotLK area trigger IDs 2173/2175 to extended-range tram triggers.
This commit is contained in:
Kelsi 2026-03-06 10:37:32 -08:00
parent cefb05c027
commit ee4e6a31ce
4 changed files with 30 additions and 3 deletions

View file

@ -8812,8 +8812,9 @@ void GameHandler::checkAreaTriggers() {
// Deeprun Tram entrance triggers need extended range because WMO
// collision walls block the player from reaching the trigger center.
static const std::unordered_set<uint32_t> extendedRangeTriggers = {
712, 713, // Stormwind/Ironforge → Deeprun Tram
712, 713, // Stormwind/Ironforge → Deeprun Tram (classic IDs)
2166, 2171, // Tram interior exit triggers
2173, 2175, // Stormwind/Ironforge tram entrance (WotLK IDs)
};
for (const auto& at : areaTriggers_) {