DB/ItemSubClass
Jump to navigation
Jump to search
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 };