Documentation ¶
Index ¶
- Variables
- func GetBestRegexIntValue(srcStr string, patterns []*regexp.Regexp, matchIdx int) int
- func GetRegexIntValue(srcStr string, pattern *regexp.Regexp, matchIdx int) int
- func GetRegexStringValue(srcStr string, pattern *regexp.Regexp, matchIdx int) string
- func ParseItemFactionRestrictionsFromWagoDB(dbContents string) map[int32]proto.UIItem_FactionRestriction
- type BlizzardAuthResponse
- type BlizzardItemResponse
- type EnchantDBKey
- type ItemResponse
- type Stats
- type TooltipManager
- type WeaponSkills
- type WowDatabase
- func (db *WowDatabase) AddItemIcon(id int32, tooltips map[int32]WowheadItemResponse)
- func (db *WowDatabase) AddRune(id int32, tooltip WowheadItemResponse)
- func (db *WowDatabase) AddSpellIcon(id int32, tooltips map[int32]WowheadItemResponse)
- func (db *WowDatabase) Clone() *WowDatabase
- func (db *WowDatabase) MergeEnchant(src *proto.UIEnchant)
- func (db *WowDatabase) MergeEnchants(arr []*proto.UIEnchant)
- func (db *WowDatabase) MergeItem(src *proto.UIItem)
- func (db *WowDatabase) MergeItems(arr []*proto.UIItem)
- func (db *WowDatabase) MergeNpc(src *proto.UINPC)
- func (db *WowDatabase) MergeNpcs(arr []*proto.UINPC)
- func (db *WowDatabase) MergeRune(src *proto.UIRune)
- func (db *WowDatabase) MergeRunes(arr []*proto.UIRune)
- func (db *WowDatabase) MergeZone(src *proto.UIZone)
- func (db *WowDatabase) MergeZones(arr []*proto.UIZone)
- func (db *WowDatabase) ToUIProto() *proto.UIDatabase
- func (db *WowDatabase) WriteBinary(binFilePath string)
- func (db *WowDatabase) WriteBinaryAndJson(binFilePath, jsonFilePath string)
- func (db *WowDatabase) WriteJson(jsonFilePath string)
- type WowheadDatabase
- type WowheadItem
- type WowheadItemResponse
- func (item WowheadItemResponse) GetArmorType() proto.ArmorType
- func (item WowheadItemResponse) GetArmorValues() (int, int)
- func (item WowheadItemResponse) GetClassAllowlist() []proto.Class
- func (item WowheadItemResponse) GetHandType() proto.HandType
- func (item WowheadItemResponse) GetIcon() string
- func (item WowheadItemResponse) GetIntValue(pattern *regexp.Regexp) int
- func (item WowheadItemResponse) GetItemLevel() int
- func (item WowheadItemResponse) GetItemSetName() string
- func (item WowheadItemResponse) GetItemType() proto.ItemType
- func (item WowheadItemResponse) GetName() string
- func (item WowheadItemResponse) GetPhase() int
- func (item WowheadItemResponse) GetQuality() int
- func (item WowheadItemResponse) GetRangedWeaponType() proto.RangedWeaponType
- func (item WowheadItemResponse) GetRequiredClass() proto.Class
- func (item WowheadItemResponse) GetRequiredItemSlot() proto.ItemType
- func (item WowheadItemResponse) GetRequiredProfession() proto.Profession
- func (item WowheadItemResponse) GetRequiresLevel() int
- func (item WowheadItemResponse) GetSpellRank() int
- func (item WowheadItemResponse) GetStats() Stats
- func (item WowheadItemResponse) GetTooltipRegexString(pattern *regexp.Regexp, matchIdx int) string
- func (item WowheadItemResponse) GetTooltipRegexValue(pattern *regexp.Regexp, matchIdx int) int
- func (item WowheadItemResponse) GetUnique() bool
- func (item WowheadItemResponse) GetWeaponDamage() (float64, float64)
- func (item WowheadItemResponse) GetWeaponSkills() WeaponSkills
- func (item WowheadItemResponse) GetWeaponSpeed() float64
- func (item WowheadItemResponse) GetWeaponType() proto.WeaponType
- func (item WowheadItemResponse) IsEquippable() bool
- func (item WowheadItemResponse) IsHeroic() bool
- func (item WowheadItemResponse) IsPattern() bool
- func (item WowheadItemResponse) IsRandomEnchant() bool
- func (item WowheadItemResponse) IsScalableArmorSlot() bool
- func (item WowheadItemResponse) ToItemProto() *proto.UIItem
- func (item WowheadItemResponse) TooltipWithoutSetBonus() string
- type WowheadItemSource
- type WowheadItemStats
- type WowheadRandomSuffix
- type WowheadRandomSuffixStats
- type WowheadTooltipManager
Constants ¶
This section is empty.
Variables ¶
View Source
var AtlasLootDifficulties = map[string]proto.DungeonDifficulty{ "NORMAL_DIFF": proto.DungeonDifficulty_DifficultyNormal, }
View Source
var AtlasLootPVPFactions = map[int]map[string]proto.RepFaction{ 3277: { "ALLIANCE": proto.RepFaction_RepFactionSilverwingSentinels, "HORDE": proto.RepFaction_RepFactionWarsongOutriders, }, 3358: { "ALLIANCE": proto.RepFaction_RepFactionLeagueOfArathor, "HORDE": proto.RepFaction_RepFactionDefilers, }, 2597: { "ALLIANCE": proto.RepFaction_RepFactionStormpikeGuard, "HORDE": proto.RepFaction_RepFactionFrostwolfClan, }, }
View Source
var AtlasLootProfessionIDs = map[int]proto.Profession{ 3: proto.Profession_Leatherworking, 5: proto.Profession_Blacksmithing, 6: proto.Profession_Leatherworking, 7: proto.Profession_Alchemy, 10: proto.Profession_Mining, 11: proto.Profession_Tailoring, 12: proto.Profession_Engineering, 13: proto.Profession_Enchanting, }
View Source
var AtlasLootRepLevels = map[string]proto.RepLevel{ "Hated": proto.RepLevel_RepLevelHated, "Hostile": proto.RepLevel_RepLevelHostile, "Unfriendly": proto.RepLevel_RepLevelUnfriendly, "Neutral": proto.RepLevel_RepLevelNeutral, "Friendly": proto.RepLevel_RepLevelFriendly, "Honored": proto.RepLevel_RepLevelHonored, "Revered": proto.RepLevel_RepLevelRevered, "Exalted": proto.RepLevel_RepLevelExalted, }
View Source
var DenyListNameRegexes = []*regexp.Regexp{ regexp.MustCompile(`30 Epic`), regexp.MustCompile(`63 Blue`), regexp.MustCompile(`63 Green`), regexp.MustCompile(`66 Epic`), regexp.MustCompile(`90 Epic`), regexp.MustCompile(`90 Green`), regexp.MustCompile(`Boots 1`), regexp.MustCompile(`Boots 2`), regexp.MustCompile(`Boots 3`), regexp.MustCompile(`Bracer 1`), regexp.MustCompile(`Bracer 2`), regexp.MustCompile(`Bracer 3`), regexp.MustCompile(`DB\d`), regexp.MustCompile(`DEPRECATED`), regexp.MustCompile(`Deprecated: Keanna`), regexp.MustCompile(`Indalamar`), regexp.MustCompile(`Monster -`), regexp.MustCompile(`NEW`), regexp.MustCompile(`PH`), regexp.MustCompile(`QR XXXX`), regexp.MustCompile(`TEST`), regexp.MustCompile(`Test`), regexp.MustCompile(`zOLD`), }
If any of these match the item name, don't include it.
View Source
var EnchantOverrides = []*proto.UIEnchant{ {EffectId: 15, ItemId: 2304, SpellId: 2831, Name: "Light Armor Kit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.BonusArmor: 8}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest, ExtraTypes: []proto.ItemType{proto.ItemType_ItemTypeLegs, proto.ItemType_ItemTypeHands, proto.ItemType_ItemTypeFeet}, EnchantType: proto.EnchantType_EnchantTypeKit}, {EffectId: 16, ItemId: 2313, SpellId: 2832, Name: "Medium Armor Kit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.BonusArmor: 16}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest, ExtraTypes: []proto.ItemType{proto.ItemType_ItemTypeLegs, proto.ItemType_ItemTypeHands, proto.ItemType_ItemTypeFeet}, EnchantType: proto.EnchantType_EnchantTypeKit}, {EffectId: 17, ItemId: 4265, SpellId: 2833, Name: "Heavy Armor Kit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.BonusArmor: 24}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest, ExtraTypes: []proto.ItemType{proto.ItemType_ItemTypeLegs, proto.ItemType_ItemTypeHands, proto.ItemType_ItemTypeFeet}, EnchantType: proto.EnchantType_EnchantTypeKit}, {EffectId: 18, ItemId: 8173, SpellId: 10344, Name: "Thick Armor Kit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.BonusArmor: 32}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest, ExtraTypes: []proto.ItemType{proto.ItemType_ItemTypeLegs, proto.ItemType_ItemTypeHands, proto.ItemType_ItemTypeFeet}, EnchantType: proto.EnchantType_EnchantTypeKit}, {EffectId: 1843, ItemId: 15564, SpellId: 19057, Name: "Rugged Armor Kit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.BonusArmor: 40}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest, ExtraTypes: []proto.ItemType{proto.ItemType_ItemTypeLegs, proto.ItemType_ItemTypeHands, proto.ItemType_ItemTypeFeet}, EnchantType: proto.EnchantType_EnchantTypeKit}, {EffectId: 2, SpellId: 7454, Name: "Enchant Cloak - Minor Resistance", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.ArcaneResistance: 1, stats.FrostResistance: 1, stats.FireResistance: 1, stats.NatureResistance: 1, stats.ShadowResistance: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 783, SpellId: 7771, Name: "Enchant Cloak - Minor Protection", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Armor: 10}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 247, SpellId: 13419, Name: "Enchant Cloak - Minor Agility", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Agility: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 744, SpellId: 13421, Name: "Enchant Cloak - Lesser Protection", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Armor: 20}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 256, SpellId: 7861, Name: "Enchant Cloak - Lesser Fire Resistance", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.FireResistance: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 804, SpellId: 13522, Name: "Enchant Cloak - Lesser Shadow Resistance", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.ShadowResistance: 10}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 848, SpellId: 13635, Name: "Enchant Cloak - Defense", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Armor: 30}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 2463, SpellId: 13657, Name: "Enchant Cloak - Fire Resistance", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.FireResistance: 7}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 884, SpellId: 13746, Name: "Enchant Cloak - Greater Defense", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Armor: 50}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 903, SpellId: 13794, Name: "Enchant Cloak - Resistance", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.ArcaneResistance: 3, stats.FireResistance: 3, stats.FrostResistance: 3, stats.NatureResistance: 3, stats.ShadowResistance: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 849, SpellId: 13882, Name: "Enchant Cloak - Lesser Agility", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Agility: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeBack}, {EffectId: 41, SpellId: 7420, Name: "Enchant Chest - Minor Health", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Health: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 24, SpellId: 7443, Name: "Enchant Chest - Minor Mana", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Mana: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 44, SpellId: 7426, Name: "Enchant Chest - Minor Absorption", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 242, SpellId: 7748, Name: "Enchant Chest - Lesser Health", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Health: 15}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 246, SpellId: 7776, Name: "Enchant Chest - Lesser Mana", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Mana: 20}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 254, SpellId: 7857, Name: "Enchant Chest - Health", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Health: 25}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 63, SpellId: 13538, Name: "Enchant Chest - Lesser Absorption", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 843, SpellId: 13607, Name: "Enchant Chest - Mana", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Mana: 30}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 847, SpellId: 13626, Name: "Enchant Chest - Minor Stats", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 1, stats.Agility: 1, stats.Strength: 1, stats.Intellect: 1, stats.Spirit: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 850, SpellId: 13640, Name: "Enchant Chest - Greater Health", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Health: 35}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 857, SpellId: 13663, Name: "Enchant Chest - Greater Mana", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Mana: 50}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 7223, SpellId: 435903, Name: "Enchant Chest - Retricutioner", Quality: proto.ItemQuality_ItemQualityEpic, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 866, SpellId: 13700, Name: "Enchant Chest - Lesser Stats", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 2, stats.Agility: 2, stats.Strength: 2, stats.Intellect: 2, stats.Spirit: 2}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 908, SpellId: 13858, Name: "Enchant Chest - Superior Health", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Health: 50}.ToFloatArray(), Type: proto.ItemType_ItemTypeChest}, {EffectId: 66, SpellId: 7457, Name: "Enchant Bracer - Minor Stamina", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 243, SpellId: 7766, Name: "Enchant Bracer - Minor Spirit", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Spirit: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 41, SpellId: 7418, Name: "Enchant Bracer - Minor Health", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Health: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 924, SpellId: 7428, Name: "Enchant Bracer - Minor Deflect", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Defense: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 247, SpellId: 7779, Name: "Enchant Bracer - Minor Agility", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Agility: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 248, SpellId: 7782, Name: "Enchant Bracer - Minor Strength", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Strength: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 255, SpellId: 7859, Name: "Enchant Bracer - Lesser Spirit", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Spirit: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 724, SpellId: 13501, Name: "Enchant Bracer - Lesser Stamina", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 823, SpellId: 13536, Name: "Enchant Bracer - Lesser Strength", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Strength: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 723, SpellId: 13622, Name: "Enchant Bracer - Lesser Intellect", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Intellect: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 851, SpellId: 13642, Name: "Enchant Bracer - Spirit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Spirit: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 925, SpellId: 13646, Name: "Enchant Bracer - Lesser Deflection", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Defense: 2}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 852, SpellId: 13648, Name: "Enchant Bracer - Stamina", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 856, SpellId: 13661, Name: "Enchant Bracer - Strength", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Strength: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 905, SpellId: 13822, Name: "Enchant Bracer - Intellect", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Intellect: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 907, SpellId: 13846, Name: "Enchant Bracer - Greater Spirit", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Spirit: 7}.ToFloatArray(), Type: proto.ItemType_ItemTypeWrist}, {EffectId: 846, SpellId: 13620, Name: "Enchant Gloves - Fishing", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 845, SpellId: 13617, Name: "Enchant Gloves - Herbalism", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 844, SpellId: 13612, Name: "Enchant Gloves - Mining", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 865, SpellId: 13698, Name: "Enchant Gloves - Skinning", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 904, SpellId: 13815, Name: "Enchant Gloves - Agility", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Agility: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 906, SpellId: 13841, Name: "Enchant Gloves - Advanced Mining", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 909, SpellId: 13868, Name: "Enchant Gloves - Advanced Herbalism", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 856, SpellId: 13887, Name: "Enchant Gloves - Strength", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Strength: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeHands}, {EffectId: 247, SpellId: 7867, Name: "Enchant Boots - Minor Agility", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Agility: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 66, SpellId: 7863, Name: "Enchant Boots - Minor Stamina", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 1}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 849, SpellId: 13637, Name: "Enchant Boots - Lesser Agility", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Agility: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 724, SpellId: 13644, Name: "Enchant Boots - Lesser Stamina", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 255, SpellId: 13687, Name: "Enchant Boots - Lesser Spirit", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Spirit: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 852, SpellId: 13836, Name: "Enchant Boots - Stamina", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Stamina: 5}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 911, SpellId: 13890, Name: "Enchant Boots - Minor Speed", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeFeet}, {EffectId: 249, SpellId: 7786, Name: "Enchant Weapon - Minor Beastslayer", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 250, SpellId: 7788, Name: "Enchant Weapon - Minor Striking", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 241, SpellId: 13503, Name: "Enchant Weapon - Lesser Striking", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 853, SpellId: 13653, Name: "Enchant Weapon - Lesser Beastslayer", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 854, SpellId: 13655, Name: "Enchant Weapon - Lesser Elemental Slayer", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 2443, SpellId: 21931, Name: "Enchant Weapon - Winter's Might", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.FrostPower: 7}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 943, SpellId: 13693, Name: "Enchant Weapon - Striking", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 7210, SpellId: 435481, Name: "Enchant Weapon - Dismantle", Quality: proto.ItemQuality_ItemQualityEpic, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 36, SpellId: 6296, Name: "Fiery Blaze Enchantment", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon}, {EffectId: 723, SpellId: 7793, Name: "Enchant 2H Weapon - Lesser Intellect", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.Intellect: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon, EnchantType: proto.EnchantType_EnchantTypeTwoHand}, {EffectId: 241, SpellId: 7745, Name: "Enchant 2H Weapon - Minor Impact", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon, EnchantType: proto.EnchantType_EnchantTypeTwoHand}, {EffectId: 255, SpellId: 13380, Name: "Enchant 2H Weapon - Lesser Spirit", Quality: proto.ItemQuality_ItemQualityUncommon, Stats: stats.Stats{stats.Spirit: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon, EnchantType: proto.EnchantType_EnchantTypeTwoHand}, {EffectId: 943, SpellId: 13529, Name: "Enchant 2H Weapon - Lesser Impact", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon, EnchantType: proto.EnchantType_EnchantTypeTwoHand}, {EffectId: 1897, SpellId: 13695, Name: "Enchant 2H Weapon - Impact", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon, EnchantType: proto.EnchantType_EnchantTypeTwoHand}, {EffectId: 34, SpellId: 7218, Name: "Iron Counterweight", Quality: proto.ItemQuality_ItemQualityCommon, Stats: stats.Stats{stats.MeleeHaste: 3}.ToFloatArray(), Type: proto.ItemType_ItemTypeWeapon, EnchantType: proto.EnchantType_EnchantTypeTwoHand}, {EffectId: 30, ItemId: 4405, SpellId: 3974, Name: "Crude Scope", Quality: proto.ItemQuality_ItemQualityRare, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeRanged}, {EffectId: 32, ItemId: 4406, SpellId: 3975, Name: "Standard Scope", Quality: proto.ItemQuality_ItemQualityRare, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeRanged}, {EffectId: 33, ItemId: 4407, SpellId: 3976, Name: "Accurate Scope", Quality: proto.ItemQuality_ItemQualityRare, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeRanged}, {EffectId: 663, ItemId: 10546, SpellId: 12459, Name: "Deadly Scope", Quality: proto.ItemQuality_ItemQualityRare, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeRanged}, {EffectId: 664, ItemId: 10548, SpellId: 12460, Name: "Sniper Scope", Quality: proto.ItemQuality_ItemQualityRare, Stats: stats.Stats{}.ToFloatArray(), Type: proto.ItemType_ItemTypeRanged}, }
View Source
var ExtraItemIcons = []int32{
12662,
13180,
11566,
8956,
10646,
18641,
15993,
16040,
13928,
20452,
13931,
18254,
21023,
13813,
13810,
13510,
13511,
13512,
13513,
20079,
8412,
8423,
8424,
8411,
13452,
9187,
20007,
13445,
20004,
9088,
12451,
9206,
12460,
12820,
5206,
13454,
9264,
21546,
17708,
11564,
18284,
18269,
21151,
13444,
7676,
20748,
20749,
12404,
18262,
}
Item icons to include in the DB, so they don't need to be separately loaded in the UI.
View Source
var ItemAllowList = map[int32]struct{}{
11815: {},
12590: {},
15808: {},
18843: {},
18844: {},
18847: {},
18848: {},
19019: {},
19808: {},
20837: {},
20966: {},
21625: {},
21685: {},
24114: {},
28572: {},
28830: {},
29383: {},
29387: {},
29994: {},
29996: {},
30032: {},
30627: {},
30720: {},
31193: {},
32387: {},
32658: {},
33135: {},
33140: {},
33143: {},
33144: {},
33504: {},
33506: {},
33507: {},
33508: {},
33510: {},
33829: {},
33831: {},
34472: {},
34473: {},
37032: {},
37574: {},
38072: {},
38287: {},
38289: {},
39208: {},
41752: {},
6360: {},
8345: {},
9449: {},
211848: {},
211845: {},
215111: {},
215114: {},
}
Keep these sorted by item ID.
View Source
var ItemDenyList = map[int32]struct{}{
9653: {},
12104: {},
12805: {},
17782: {},
17783: {},
17802: {},
20522: {},
215116: {},
33350: {},
34576: {},
34577: {},
34578: {},
34579: {},
34580: {},
}
Keep these sorted by item ID.
View Source
var ItemOverrides = []*proto.UIItem{ {Id: 211848, Name: "Blackfathom Mana Oil", Icon: "inv_potion_99", Stats: stats.Stats{stats.MP5: 12, stats.SpellHit: 2}.ToFloatArray()}, {Id: 211845, Name: "Blackfathom Sharpening Stone", Icon: "inv_misc_rune_04", Stats: stats.Stats{stats.MeleeHit: 2}.ToFloatArray()}, {Id: 10019, Sources: []*proto.UIItemSource{{ Source: &proto.UIItemSource_Crafted{ Crafted: &proto.CraftedSource{ Profession: proto.Profession_Tailoring, SpellId: 3759, }, }, }}}, {Id: 217245, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Tailoring, SpellId: 439085}}}}}, {Id: 217246, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Tailoring, SpellId: 439086}}}}}, {Id: 217257, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Tailoring, SpellId: 439102}}}}}, {Id: 217259, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Leatherworking, SpellId: 439105}}}}}, {Id: 217261, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Leatherworking, SpellId: 439108}}}}}, {Id: 217268, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Leatherworking, SpellId: 439116}}}}}, {Id: 217270, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Leatherworking, SpellId: 439118}}}}}, {Id: 217277, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Blacksmithing, SpellId: 439124}}}}}, {Id: 217279, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Blacksmithing, SpellId: 439126}}}}}, {Id: 217285, Sources: []*proto.UIItemSource{{Source: &proto.UIItemSource_Crafted{Crafted: &proto.CraftedSource{Profession: proto.Profession_Blacksmithing, SpellId: 439132}}}}}, }
View Source
var OtherItemIdsToFetch = []string{}
View Source
var RuneOverrides = []*proto.UIRune{ {Id: 399985, Name: "Engrave Gloves - Shadowstrike", Icon: "ability_rogue_envelopingshadows", Type: proto.ItemType_ItemTypeHands, Class: proto.Class_ClassRogue, RequiresLevel: 1}, {Id: 400029, Name: "Engrave Belt - Shadowstep", Icon: "ability_rogue_shadowstep", Type: proto.ItemType_ItemTypeWaist, Class: proto.Class_ClassRogue, RequiresLevel: 30}, }
Overrides for runes as needed Regen db with "go run ./tools/database/gen_db -outDir=assets -gen=db" And ensure db files are copied from assets/db into dist/sod/database
Raid buffs / debuffs
Functions ¶
func GetBestRegexIntValue ¶
func GetRegexIntValue ¶
func GetRegexStringValue ¶
func ParseItemFactionRestrictionsFromWagoDB ¶
func ParseItemFactionRestrictionsFromWagoDB(dbContents string) map[int32]proto.UIItem_FactionRestriction
Types ¶
type BlizzardAuthResponse ¶
type BlizzardAuthResponse struct {
AccessToken string `json:"access_token"`
}
type BlizzardItemResponse ¶
type BlizzardItemResponse struct { ID int `json:"id"` Name string `json:"name"` Quality struct { Type string `json:"type"` } `json:"quality"` ItemClass struct { Id int `json:"id"` } `json:"item_class"` ItemSubclass struct { Id int `json:"id"` } `json:"item_subclass"` InventoryType struct { Type string `json:"type"` } `json:"inventory_type"` PreviewItem struct { Armor struct { Value int `json:"value"` } `json:"armor"` Stats []struct { Type struct { Type string `json:"type"` } `json:"type"` Value int `json:"value"` } `json:"stats"` } `json:"preview_item"` }
There are more fields, these are just the ones we care about
func (BlizzardItemResponse) GetStatValue ¶
func (item BlizzardItemResponse) GetStatValue(statType string) int
type EnchantDBKey ¶
func EnchantToDBKey ¶
func EnchantToDBKey(enchant *proto.UIEnchant) EnchantDBKey
type ItemResponse ¶
type ItemResponse interface { GetName() string GetQuality() int GetIcon() string TooltipWithoutSetBonus() string GetTooltipRegexString(pattern *regexp.Regexp, matchIdx int) string GetTooltipRegexValue(pattern *regexp.Regexp, matchIdx int) int GetIntValue(pattern *regexp.Regexp) int GetStats() Stats GetWeaponSkills() []float64 GetClassAllowlist() []proto.Class IsEquippable() bool GetItemLevel() int GetRequiresLevel() int GetRequiredClass() proto.Class GetRequiredItemSlot() proto.ItemSlot GetSpellRank() int GetPhase() int GetUnique() bool GetItemType() proto.ItemType GetArmorType() proto.ArmorType GetWeaponType() proto.WeaponType GetHandType() proto.HandType GetRangedWeaponType() proto.RangedWeaponType GetWeaponDamage() (float64, float64) GetWeaponSpeed() float64 GetItemSetName() string IsHeroic() bool GetRequiredProfession() proto.Profession }
type TooltipManager ¶
Generic class for fetching tooltip info from the web.
func (*TooltipManager) Fetch ¶
func (tm *TooltipManager) Fetch(minId, maxId int32, otherIds []string)
func (*TooltipManager) FetchFromWeb ¶
func (tm *TooltipManager) FetchFromWeb(idsToFetch []string) map[string]string
func (*TooltipManager) Read ¶
func (tm *TooltipManager) Read() map[int32]string
type WeaponSkills ¶
type WeaponSkills [15]float64
type WowDatabase ¶
type WowDatabase struct { Items map[int32]*proto.UIItem RandomSuffixes map[int32]*proto.ItemRandomSuffix Enchants map[EnchantDBKey]*proto.UIEnchant Runes map[int32]*proto.UIRune Zones map[int32]*proto.UIZone Npcs map[int32]*proto.UINPC ItemIcons map[int32]*proto.IconData SpellIcons map[int32]*proto.IconData Encounters []*proto.PresetEncounter }
func NewWowDatabase ¶
func NewWowDatabase() *WowDatabase
func ReadAtlasLootData ¶
func ReadAtlasLootData() *WowDatabase
func ReadDatabaseFromJson ¶
func ReadDatabaseFromJson(jsonStr string) *WowDatabase
func (*WowDatabase) AddItemIcon ¶
func (db *WowDatabase) AddItemIcon(id int32, tooltips map[int32]WowheadItemResponse)
func (*WowDatabase) AddRune ¶
func (db *WowDatabase) AddRune(id int32, tooltip WowheadItemResponse)
func (*WowDatabase) AddSpellIcon ¶
func (db *WowDatabase) AddSpellIcon(id int32, tooltips map[int32]WowheadItemResponse)
func (*WowDatabase) Clone ¶
func (db *WowDatabase) Clone() *WowDatabase
func (*WowDatabase) MergeEnchant ¶
func (db *WowDatabase) MergeEnchant(src *proto.UIEnchant)
func (*WowDatabase) MergeEnchants ¶
func (db *WowDatabase) MergeEnchants(arr []*proto.UIEnchant)
func (*WowDatabase) MergeItem ¶
func (db *WowDatabase) MergeItem(src *proto.UIItem)
func (*WowDatabase) MergeItems ¶
func (db *WowDatabase) MergeItems(arr []*proto.UIItem)
func (*WowDatabase) MergeNpc ¶
func (db *WowDatabase) MergeNpc(src *proto.UINPC)
func (*WowDatabase) MergeNpcs ¶
func (db *WowDatabase) MergeNpcs(arr []*proto.UINPC)
func (*WowDatabase) MergeRune ¶
func (db *WowDatabase) MergeRune(src *proto.UIRune)
func (*WowDatabase) MergeRunes ¶
func (db *WowDatabase) MergeRunes(arr []*proto.UIRune)
func (*WowDatabase) MergeZone ¶
func (db *WowDatabase) MergeZone(src *proto.UIZone)
func (*WowDatabase) MergeZones ¶
func (db *WowDatabase) MergeZones(arr []*proto.UIZone)
func (*WowDatabase) ToUIProto ¶
func (db *WowDatabase) ToUIProto() *proto.UIDatabase
func (*WowDatabase) WriteBinary ¶
func (db *WowDatabase) WriteBinary(binFilePath string)
func (*WowDatabase) WriteBinaryAndJson ¶
func (db *WowDatabase) WriteBinaryAndJson(binFilePath, jsonFilePath string)
func (*WowDatabase) WriteJson ¶
func (db *WowDatabase) WriteJson(jsonFilePath string)
type WowheadDatabase ¶
type WowheadDatabase struct { Items map[string]WowheadItem RandomSuffixes map[string]WowheadRandomSuffix }
func ParseWowheadDB ¶
func ParseWowheadDB(dbContents string) WowheadDatabase
type WowheadItem ¶
type WowheadItem struct { ID int32 `json:"id"` Name string `json:"name"` Icon string `json:"icon"` Quality int32 `json:"quality"` Ilvl int32 `json:"itemLevel"` Phase int32 `json:"contentPhase"` RequiresLevel int32 `json:"requiredLevel"` RaceMask int32 `json:"raceMask"` Stats WowheadItemStats `json:"stats"` RandomSuffixOptions []int32 `json:"randomEnchants"` SourceTypes []int32 `json:"source"` // 1 = Crafted, 2 = Dropped by, 3 = sold by zone vendor? barely used, 4 = Quest, 5 = Sold by SourceDetails []WowheadItemSource `json:"sourcemore"` }
func (WowheadItem) ToProto ¶
func (wi WowheadItem) ToProto() *proto.UIItem
type WowheadItemResponse ¶
type WowheadItemResponse struct { ID int32 Name string `json:"name"` Quality int `json:"quality"` Icon string `json:"icon"` Tooltip string `json:"tooltip"` }
func NewWowheadItemResponse ¶
func NewWowheadItemResponse(id int32, tooltip string) WowheadItemResponse
func (WowheadItemResponse) GetArmorType ¶
func (item WowheadItemResponse) GetArmorType() proto.ArmorType
func (WowheadItemResponse) GetArmorValues ¶
func (item WowheadItemResponse) GetArmorValues() (int, int)
func (WowheadItemResponse) GetClassAllowlist ¶
func (item WowheadItemResponse) GetClassAllowlist() []proto.Class
func (WowheadItemResponse) GetHandType ¶
func (item WowheadItemResponse) GetHandType() proto.HandType
func (WowheadItemResponse) GetIcon ¶
func (item WowheadItemResponse) GetIcon() string
func (WowheadItemResponse) GetIntValue ¶
func (item WowheadItemResponse) GetIntValue(pattern *regexp.Regexp) int
func (WowheadItemResponse) GetItemLevel ¶
func (item WowheadItemResponse) GetItemLevel() int
func (WowheadItemResponse) GetItemSetName ¶
func (item WowheadItemResponse) GetItemSetName() string
func (WowheadItemResponse) GetItemType ¶
func (item WowheadItemResponse) GetItemType() proto.ItemType
func (WowheadItemResponse) GetName ¶
func (item WowheadItemResponse) GetName() string
func (WowheadItemResponse) GetPhase ¶
func (item WowheadItemResponse) GetPhase() int
func (WowheadItemResponse) GetQuality ¶
func (item WowheadItemResponse) GetQuality() int
func (WowheadItemResponse) GetRangedWeaponType ¶
func (item WowheadItemResponse) GetRangedWeaponType() proto.RangedWeaponType
func (WowheadItemResponse) GetRequiredClass ¶
func (item WowheadItemResponse) GetRequiredClass() proto.Class
func (WowheadItemResponse) GetRequiredItemSlot ¶
func (item WowheadItemResponse) GetRequiredItemSlot() proto.ItemType
func (WowheadItemResponse) GetRequiredProfession ¶
func (item WowheadItemResponse) GetRequiredProfession() proto.Profession
func (WowheadItemResponse) GetRequiresLevel ¶
func (item WowheadItemResponse) GetRequiresLevel() int
func (WowheadItemResponse) GetSpellRank ¶
func (item WowheadItemResponse) GetSpellRank() int
func (WowheadItemResponse) GetStats ¶
func (item WowheadItemResponse) GetStats() Stats
func (WowheadItemResponse) GetTooltipRegexString ¶
func (item WowheadItemResponse) GetTooltipRegexString(pattern *regexp.Regexp, matchIdx int) string
func (WowheadItemResponse) GetTooltipRegexValue ¶
func (item WowheadItemResponse) GetTooltipRegexValue(pattern *regexp.Regexp, matchIdx int) int
func (WowheadItemResponse) GetUnique ¶
func (item WowheadItemResponse) GetUnique() bool
func (WowheadItemResponse) GetWeaponDamage ¶
func (item WowheadItemResponse) GetWeaponDamage() (float64, float64)
Returns min/max of weapon damage
func (WowheadItemResponse) GetWeaponSkills ¶
func (item WowheadItemResponse) GetWeaponSkills() WeaponSkills
func (WowheadItemResponse) GetWeaponSpeed ¶
func (item WowheadItemResponse) GetWeaponSpeed() float64
func (WowheadItemResponse) GetWeaponType ¶
func (item WowheadItemResponse) GetWeaponType() proto.WeaponType
func (WowheadItemResponse) IsEquippable ¶
func (item WowheadItemResponse) IsEquippable() bool
func (WowheadItemResponse) IsHeroic ¶
func (item WowheadItemResponse) IsHeroic() bool
func (WowheadItemResponse) IsPattern ¶
func (item WowheadItemResponse) IsPattern() bool
func (WowheadItemResponse) IsRandomEnchant ¶
func (item WowheadItemResponse) IsRandomEnchant() bool
func (WowheadItemResponse) IsScalableArmorSlot ¶
func (item WowheadItemResponse) IsScalableArmorSlot() bool
func (WowheadItemResponse) ToItemProto ¶
func (item WowheadItemResponse) ToItemProto() *proto.UIItem
func (WowheadItemResponse) TooltipWithoutSetBonus ¶
func (item WowheadItemResponse) TooltipWithoutSetBonus() string
type WowheadItemSource ¶
type WowheadItemSource struct { C int32 `json:"c"` Name string `json:"n"` // Name of crafting spell Icon string `json:"icon"` // Icon corresponding to the named entity EntityID int32 `json:"ti"` // Crafting Spell ID / NPC ID / ?? / Quest ID ZoneID int32 `json:"z"` // Only for drop / sold by sources }
type WowheadItemStats ¶
type WowheadItemStats struct {
Armor int32 `json:"armor"`
}
type WowheadRandomSuffix ¶
type WowheadRandomSuffix struct { ID int32 `json:"id"` Name string `json:"name"` Stats WowheadRandomSuffixStats `json:"stats"` }
func (WowheadRandomSuffix) ToProto ¶
func (wrs WowheadRandomSuffix) ToProto() *proto.ItemRandomSuffix
type WowheadRandomSuffixStats ¶
type WowheadRandomSuffixStats struct { Armor int32 `json:"armor"` Strength int32 `json:"str"` Agility int32 `json:"agi"` Stamina int32 `json:"sta"` Intellect int32 `json:"int"` Spirit int32 `json:"spi"` SpellPower int32 `json:"spldmg"` ArcanePower int32 `json:"arcsplpwr"` FirePower int32 `json:"firsplpwr"` FrostPower int32 `json:"frosplpwr"` HolyPower int32 `json:"holsplpwr"` NaturePower int32 `json:"natsplpwr"` ShadowPower int32 `json:"shasplpwr"` MeleeCrit int32 `json:"mlecritstrkpct"` MP5 int32 `json:"manargn"` AttackPower int32 `json:"mleatkpwr"` RangedAttackPower int32 `json:"rgdatkpwr"` Defense int32 `json:"def"` Block int32 `json:"blockpct"` Dodge int32 `json:"dodgepct"` ArcaneResistance int32 `json:"arcres"` FireResistance int32 `json:"firres"` FrostResistance int32 `json:"frores"` NatureResistance int32 `json:"natres"` ShadowResistance int32 `json:"shares"` Healing int32 `json:"splheal"` }
type WowheadTooltipManager ¶
type WowheadTooltipManager struct {
TooltipManager
}
func NewWowheadItemTooltipManager ¶
func NewWowheadItemTooltipManager(filePath string) *WowheadTooltipManager
func NewWowheadSpellTooltipManager ¶
func NewWowheadSpellTooltipManager(filePath string) *WowheadTooltipManager
func (*WowheadTooltipManager) Read ¶
func (wtm *WowheadTooltipManager) Read() map[int32]WowheadItemResponse
Source Files ¶
Click to show internal directories.
Click to hide internal directories.