DB/AreaTrigger: Difference between revisions

From wowdev
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;
};