DB/ItemSubClass: Difference between revisions
Jump to navigation
Jump to search
Barncastle (talk | contribs) mNo edit summary |
Barncastle (talk | contribs) m (→m_displayFlags: official names) |
||
(11 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==0.5.3.3368== | ==0.5.3.3368, 1.12.1.5875== | ||
struct ItemSubClassRec { | struct ItemSubClassRec { | ||
uint32_t m_classID; | uint32_t m_classID; | ||
Line 7: | Line 7: | ||
uint32_t m_flags; | uint32_t m_flags; | ||
uint32_t m_displayFlags; | uint32_t m_displayFlags; | ||
uint32_t m_weaponParrySeq; | uint32_t m_weaponParrySeq; // index into s_anims_parry, WEAPONPARRYSEQ enum | ||
uint32_t m_weaponReadySeq; | uint32_t m_weaponReadySeq; // index into s_anims_ready, WEAPONREADYSEQ enum | ||
uint32_t m_weaponAttackSeq; | uint32_t m_weaponAttackSeq; // index into s_anims_attack, WEAPONATTACKSEQ enum | ||
uint32_t m_WeaponSwingSize; | uint32_t m_WeaponSwingSize; // match with [[WeaponSwingSounds2.dbc|WeaponSwingSounds2Rec]]::m_SwingType | ||
{{Template:Type|langstringref}} m_displayName_lang; | {{Template:Type|langstringref}} m_displayName_lang; | ||
{{Template:Type|langstringref}} m_verboseName_lang; | {{Template:Type|langstringref}} m_verboseName_lang; | ||
}; | }; | ||
enum WEAPONSWING_SOUNDTYPES | |||
{ | |||
WEAPONSWING_LIGHT = 0x0, | |||
WEAPONSWING_MEDIUM = 0x1, | |||
WEAPONSWING_HEAVY = 0x2, | |||
NUM_WEAPONSWINGSOUNDTYPES = 0x3, | |||
WEAPONSWING_UNUSED = 0xFFFFFFFF, | |||
}; | }; | ||
ANIMENUMERATION s_anims_parry[4] = { ANIM_PARRY2HTIGHT, ANIM_PARRY2HLOOSE, ANIM_PARRY1H, ANIM_STAND }; | |||
ANIMENUMERATION s_anims_ready[6] = { ANIM_READY2HTIGHT, ANIM_READY2HLOOSE, ANIM_READY1H, ANIM_READYBOW, ANIM_READYRIFLE, ANIM_READYTHROWN }; | |||
ANIMENUMERATION s_anims_attack[6] = { ANIM_ATTACK2HTIGHT, ANIM_ATTACK2HLOOSE, ANIM_ATTACKBOW, ANIM_ATTACK1H, ANIM_ATTACKRIFLE, ANIM_ATTACKTHROWN }; | |||
==Structure== | ==Structure== | ||
'''Column Field | '''Column Field Type Notes''' | ||
1 iRefID_[[ItemClass.dbc|ItemClass]] | 1 iRefID_[[ItemClass.dbc|ItemClass]] Integer | ||
2 subClassID | 2 subClassID Integer Index, non-unique, type. | ||
3 prerequisiteProficiency | 3 prerequisiteProficiency Integer | ||
4 postrequisiteProficiency | 4 postrequisiteProficiency Integer | ||
5 flags | 5 flags Integer | ||
6 displayFlags | 6 displayFlags Integer | ||
7 weaponParrySeq | 7 weaponParrySeq Integer | ||
8 weaponReadySeq | 8 weaponReadySeq Integer | ||
9 weaponAttackSeq Integer | 9 weaponAttackSeq Integer | ||
10 WeaponSwingSize Integer Melee slots required. | 10 WeaponSwingSize Integer Melee slots required. | ||
11-27 displayName | 11-27 displayName String + [[Loc]] | ||
28-44 verboseName | 28-44 verboseName String + [[Loc]] | ||
==6.0.1.18179== | ==6.0.1.18179== | ||
Line 63: | Line 61: | ||
=m_flags= | =m_flags= | ||
enum { | enum { | ||
flag_melee = 0x1, | |||
flag_affect_hand_state = 0x2, // ClientDBWeaponSubclassSetsFingerSeq | |||
flag_unk_0x200 = 0x200, | flag_unarmed = 0x4, // is the default unarmed subclass | ||
flag_forcealternate = 0x20, // CGPlayer_C::AttachObjComponent CGUnit_C::AttachVirtualComponent | |||
flag_skip_reagent_subclass_check = 0x40, // Spell_C_HaveEquippedSpellItems : skips item subclass validation for spell reagents | |||
flag_unk_0x200 = 0x200, // Script_GetAuctionInvTypes | |||
}; | }; | ||
=m_displayFlags= | =m_displayFlags= | ||
enum { | enum { | ||
HideSubClassInTooltip = 1, // CGContainerInfo::IsSearchFiltered, SendItemInfo, {{Template:Sandbox/PrettyVersion|expansionlevel=0|build=0.5.3.3368}} excludes m_displayName_lang from tooltips | |||
HideSubClassInAuction = 2, // Script_QueryAuctionItems, Script_GetDetailColumnString, Script_GetAuctionItemSubClasses, Script_GetAuctionInvTypes | |||
ShowItemCount = 4, // Script_GetInventoryItemCount | |||
}; | }; | ||
Latest revision as of 12:10, 20 November 2018
0.5.3.3368, 1.12.1.5875
struct ItemSubClassRec { uint32_t m_classID; uint32_t m_subClassID; uint32_t m_prerequisiteProficiency; uint32_t m_postrequisiteProficiency; uint32_t m_flags; uint32_t m_displayFlags; uint32_t m_weaponParrySeq; // index into s_anims_parry, WEAPONPARRYSEQ enum uint32_t m_weaponReadySeq; // index into s_anims_ready, WEAPONREADYSEQ enum uint32_t m_weaponAttackSeq; // index into s_anims_attack, WEAPONATTACKSEQ enum uint32_t m_WeaponSwingSize; // match with WeaponSwingSounds2Rec::m_SwingType langstringrefⁱ m_displayName_lang; langstringrefⁱ m_verboseName_lang; }; enum WEAPONSWING_SOUNDTYPES { WEAPONSWING_LIGHT = 0x0, WEAPONSWING_MEDIUM = 0x1, WEAPONSWING_HEAVY = 0x2, NUM_WEAPONSWINGSOUNDTYPES = 0x3, WEAPONSWING_UNUSED = 0xFFFFFFFF, }; ANIMENUMERATION s_anims_parry[4] = { ANIM_PARRY2HTIGHT, ANIM_PARRY2HLOOSE, ANIM_PARRY1H, ANIM_STAND }; ANIMENUMERATION s_anims_ready[6] = { ANIM_READY2HTIGHT, ANIM_READY2HLOOSE, ANIM_READY1H, ANIM_READYBOW, ANIM_READYRIFLE, ANIM_READYTHROWN }; ANIMENUMERATION s_anims_attack[6] = { ANIM_ATTACK2HTIGHT, ANIM_ATTACK2HLOOSE, ANIM_ATTACKBOW, ANIM_ATTACK1H, ANIM_ATTACKRIFLE, ANIM_ATTACKTHROWN };
Structure
Column Field Type Notes 1 iRefID_ItemClass Integer 2 subClassID Integer Index, non-unique, type. 3 prerequisiteProficiency Integer 4 postrequisiteProficiency Integer 5 flags Integer 6 displayFlags Integer 7 weaponParrySeq Integer 8 weaponReadySeq Integer 9 weaponAttackSeq Integer 10 WeaponSwingSize Integer Melee slots required. 11-27 displayName String + Loc 28-44 verboseName String + Loc
6.0.1.18179
struct ItemSubClassRec { uint8_t padding_0[4]; foreign_keyⁱ<uint32_t, &ItemClassRec::m_classID> m_classID; uint32_t m_subClassID; uint32_t m_prerequisiteProficiency; uint32_t m_postrequisiteProficiency; uint32_t m_flags; uint32_t m_displayFlags; uint32_t m_weaponParrySeq; uint32_t m_weaponReadySeq; uint32_t m_weaponAttackSeq; uint32_t m_WeaponSwingSize; // match with WeaponSwingSounds2Rec::m_SwingType langstringrefⁱ m_displayName_lang; langstringrefⁱ m_verboseName_lang; };
m_flags
enum { flag_melee = 0x1, flag_affect_hand_state = 0x2, // ClientDBWeaponSubclassSetsFingerSeq flag_unarmed = 0x4, // is the default unarmed subclass flag_forcealternate = 0x20, // CGPlayer_C::AttachObjComponent CGUnit_C::AttachVirtualComponent flag_skip_reagent_subclass_check = 0x40, // Spell_C_HaveEquippedSpellItems : skips item subclass validation for spell reagents flag_unk_0x200 = 0x200, // Script_GetAuctionInvTypes };
m_displayFlags
enum { HideSubClassInTooltip = 1, // CGContainerInfo::IsSearchFiltered, SendItemInfo, (0.5.3.3368) excludes m_displayName_lang from tooltips HideSubClassInAuction = 2, // Script_QueryAuctionItems, Script_GetDetailColumnString, Script_GetAuctionItemSubClasses, Script_GetAuctionInvTypes ShowItemCount = 4, // Script_GetInventoryItemCount };