DB/AreaTrigger: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
Line 2: | Line 2: | ||
==0.5.3.3368== | ==0.5.3.3368== | ||
struct AreaTriggerRec | struct AreaTriggerRec { | ||
uint32_t m_ID; | uint32_t m_ID; | ||
uint32_t m_ContinentID; | uint32_t m_ContinentID; |
Revision as of 15:00, 5 June 2016
Defines certain areas on the map that presumably tell the server to fire a certain event. IE in BWL, telling the goblins around vael to run away is a trigger defined here. There are also misc triggers out in the middle of space which have 0 size, which are most likely used by the server for certain things. One such use could be remembering settings per instance (ie dracnoid colors in on Nef)?
0.5.3.3368
struct AreaTriggerRec { uint32_t m_ID; uint32_t m_ContinentID; float m_x; float m_y; float m_z; float m_radius; };
Structure
Column Field Type Notes 1 ID Integer 2 iRefID_Map Integer 3 X Float 4 Y Float 5 Z Float + phaseshift Integer New with wotlk or cataclysm 6 radius Float Seems to be a box of size yards with center at x,y,z 7 box_x Float Most commonly used when size is 0, but not always 8 box_y Float " 9 box_z Float " 10 box_orientation Float "
6.0.1.18179
struct AreaTriggerRec { uint32_t m_ID; foreign_keyⁱ<uint32_t, &MapRec::m_ID> m_ContinentID; C3Vectorⁱ m_pos; uint32_t m_phaseUseFlags; uint32_t m_phaseID; foreign_keyⁱ<uint32_t, &PhaseXPhaseGroupRec::m_phaseGroupID> m_phaseGroupID; float m_radius; float m_box_length; float m_box_width; float m_box_height; float m_box_yaw; enum { shape_type_sphere = 0, shape_type_box = 1, shape_type_polygon = 3, shape_type_cylinder = 4, }; uint32_t m_shapeType; uint32_t m_shapeID; union { // depending on m_shapeType foreign_keyⁱ<uint32_t, &AreaTriggerSphereRec::m_ID> m_shapeID; foreign_keyⁱ<uint32_t, &AreaTriggerBoxRec::m_ID> m_shapeID; foreign_keyⁱ<uint32_t, &PathRec::m_ID> m_shapeID; foreign_keyⁱ<uint32_t, &AreaTriggerCylinderRec::m_ID> m_shapeID; }; foreign_keyⁱ<uint32_t, &AreaTriggerActionSetRec::m_ID> m_areaTriggerActionSetID; uint32_t m_flags; };