Documentation ¶
Index ¶
- Constants
- Variables
- func BFS[K comparable, T any](g graph.Graph[K, T], adjacencyMap map[K]map[K]graph.Edge[K], start K, ...) ([]K, error)
- func DamageStatsForType(t int) []string
- func FromJSONGz[T any](data []byte) T
- func RawToSkillTypes(types []*raw.ActiveSkillType) map[SkillType]bool
- type Ailment
- type Ascendancy
- type AscendancyName
- type CharacterAttributes
- type Class
- type ClassName
- type Classes
- type Constants
- type Coord
- type DamageType
- type ExpansionJewel
- type ExtraImage
- type FlavourTextRect
- type GameVersion
- type Group
- type ItemClassName
- type MasteryEffect
- type Node
- type NonDamagingAilmentData
- type OilType
- type Points
- type SkillType
- type Sprite
- type Sprites
- type Tree
- type TreeVersion
- type TreeVersionData
- type WeaponTypeInfo
Constants ¶
View Source
const ( DamageTypePhysical = DamageType("Physical") DamageTypeLightning = DamageType("Lightning") DamageTypeCold = DamageType("Cold") DamageTypeFire = DamageType("Fire") DamageTypeElemental = DamageType("Elemental") DamageTypeChaos = DamageType("Chaos") )
View Source
const ( AilmentIgnite = Ailment("Ignite") AilmentChill = Ailment("Chill") AilmentFreeze = Ailment("Freeze") AilmentShock = Ailment("Shock") AilmentScorch = Ailment("Scorch") AilmentBrittle = Ailment("Brittle") AilmentSap = Ailment("Sap") )
View Source
const ( ServerTickTime = 0.033 ServerTickRate = 1 / 0.033 TemporalChainsEffectCap = float64(75) DamageReductionCap = 90 ResistFloor = -200 MaxResistCap = 90 EvadeChanceCap = 95 DodgeChanceCap = 75 SuppressionChanceCap = 100 SuppressionEffect = 50 AvoidChanceCap = 75 EnergyShieldRechargeBase = 0.33 EnergyShieldRechargeDelay = 2 WardRechargeDelay = 5 Transfiguration = 0.3 EnemyMaxResist = 75 LeechRateBase = 0.02 BleedPercentBase = 70 BleedDurationBase = 5 PoisonPercentBase = 0.30 PoisonDurationBase = 2 IgnitePercentBase = 0.9 IgniteDurationBase = 4 IgniteMinDuration = 0.3 ImpaleStoredDamageBase = 0.1 BuffExpirationSlowCap = 0.25 TrapTriggerRadiusBase = 10 MineDetonationRadiusBase = 60 MineAuraRadiusBase = 35 MaxEnemyLevel = 85 LowPoolThreshold = 0.5 AccuracyPerDexBase = float64(2) BrandAttachmentRangeBase = 30 ProjectileDistanceCap = 150 )
View Source
const ( SkillTypeAttack = SkillType("Attack") SkillTypeSpell = SkillType("Spell") SkillTypeProjectile = SkillType("Projectile") // Specifically skills which fire projectiles SkillTypeDualWieldOnly = SkillType("DualWieldOnly") // Attack requires dual wielding only used on Dual Strike SkillTypeBuff = SkillType("Buff") SkillTypeRemoved6 = SkillType("Removed6") // Now removed was CanDualWield: Attack can be used while dual wielding SkillTypeMainHandOnly = SkillType("MainHandOnly") // Attack only uses the main hand; removed in 3.5 but still needed for 2.6 SkillTypeRemoved8 = SkillType("Removed8") // Now removed was only used on Cleave SkillTypeMinion = SkillType("Minion") SkillTypeDamage = SkillType("Damage") // Skill hits (not used on attacks because all of them hit) SkillTypeArea = SkillType("Area") SkillTypeDuration = SkillType("Duration") SkillTypeRequiresShield = SkillType("RequiresShield") SkillTypeProjectileSpeed = SkillType("ProjectileSpeed") SkillTypeHasReservation = SkillType("HasReservation") SkillTypeReservationBecomesCost = SkillType("ReservationBecomesCost") SkillTypeTrappable = SkillType("Trappable") // Skill can be turned into a trap SkillTypeTotemable = SkillType("Totemable") // Skill can be turned into a totem SkillTypeMineable = SkillType("Mineable") // Skill can be turned into a mine SkillTypeElementalStatus = SkillType("ElementalStatus") // Causes elemental status effects but doesn't hit (used on Herald of Ash to allow Elemental Proliferation to apply) SkillTypeMinionsCanExplode = SkillType("MinionsCanExplode") SkillTypeRemoved22 = SkillType("Removed22") // Now removed was AttackCanTotem SkillTypeChains = SkillType("Chains") SkillTypeMelee = SkillType("Melee") SkillTypeMeleeSingleTarget = SkillType("MeleeSingleTarget") SkillTypeMulticastable = SkillType("Multicastable") // Spell can repeat via Spell Echo SkillTypeTotemCastsAlone = SkillType("TotemCastsAlone") SkillTypeMultistrikeable = SkillType("Multistrikeable") // Attack can repeat via Multistrike SkillTypeCausesBurning = SkillType("CausesBurning") // Deals burning damage SkillTypeSummonsTotem = SkillType("SummonsTotem") SkillTypeTotemCastsWhenNotDetached = SkillType("TotemCastsWhenNotDetached") SkillTypeFire = SkillType("Fire") SkillTypeCold = SkillType("Cold") SkillTypeLightning = SkillType("Lightning") SkillTypeTriggerable = SkillType("Triggerable") SkillTypeTrapped = SkillType("Trapped") SkillTypeMovement = SkillType("Movement") SkillTypeRemoved39 = SkillType("Removed39") // Now removed was Cast SkillTypeDamageOverTime = SkillType("DamageOverTime") SkillTypeRemoteMined = SkillType("RemoteMined") SkillTypeTriggered = SkillType("Triggered") SkillTypeVaal = SkillType("Vaal") SkillTypeAura = SkillType("Aura") SkillTypeRemoved45 = SkillType("Removed45") // Now removed was LightningSpell SkillTypeCanTargetUnusableCorpse = SkillType("CanTargetUnusableCorpse") // Doesn't appear to be used at all SkillTypeRemoved47 = SkillType("Removed47") // Now removed was TriggeredAttack SkillTypeRangedAttack = SkillType("RangedAttack") SkillTypeRemoved49 = SkillType("Removed49") // Now removed was MinionSpell SkillTypeChaos = SkillType("Chaos") SkillTypeFixedSpeedProjectile = SkillType("FixedSpeedProjectile") // Not used by any skill SkillTypeRemoved52 = SkillType("Removed52") SkillTypeThresholdJewelArea = SkillType("ThresholdJewelArea") // Allows Burning Arrow and Vigilant Strike to be supported by Inc AoE and Conc Effect SkillTypeThresholdJewelProjectile = SkillType("ThresholdJewelProjectile") SkillTypeThresholdJewelDuration = SkillType("ThresholdJewelDuration") // Allows Burning Arrow to be supported by Inc/Less Duration and Rapid Decay SkillTypeThresholdJewelRangedAttack = SkillType("ThresholdJewelRangedAttack") SkillTypeRemoved57 = SkillType("Removed57") SkillTypeChannel = SkillType("Channel") SkillTypeDegenOnlySpellDamage = SkillType("DegenOnlySpellDamage") // Allows Contagion Blight and Scorching Ray to be supported by Controlled Destruction SkillTypeRemoved60 = SkillType("Removed60") // Now removed was ColdSpell SkillTypeInbuiltTrigger = SkillType("InbuiltTrigger") // Skill granted by item that is automatically triggered prevents trigger gems and trap/mine/totem from applying SkillTypeGolem = SkillType("Golem") SkillTypeHerald = SkillType("Herald") SkillTypeAuraAffectsEnemies = SkillType("AuraAffectsEnemies") // Used by Death Aura added by Blasphemy SkillTypeNoRuthless = SkillType("NoRuthless") SkillTypeThresholdJewelSpellDamage = SkillType("ThresholdJewelSpellDamage") SkillTypeCascadable = SkillType("Cascadable") // Spell can cascade via Spell Cascade SkillTypeProjectilesFromUser = SkillType("ProjectilesFromUser") // Skill can be supported by Volley SkillTypeMirageArcherCanUse = SkillType("MirageArcherCanUse") // Skill can be supported by Mirage Archer SkillTypeProjectileSpiral = SkillType("ProjectileSpiral") // Excludes Volley from Vaal Fireball and Vaal Spark SkillTypeSingleMainProjectile = SkillType("SingleMainProjectile") // Excludes Volley from Spectral Shield Throw SkillTypeMinionsPersistWhenSkillRemoved = SkillType("MinionsPersistWhenSkillRemoved") // Excludes Summon Phantasm on Kill from Manifest Dancing Dervish SkillTypeProjectileNumber = SkillType("ProjectileNumber") // Allows LMP/GMP on Rain of Arrows and Toxic Rain SkillTypeWarcry = SkillType("Warcry") // Warcry SkillTypeInstant = SkillType("Instant") // Instant cast skill SkillTypeBrand = SkillType("Brand") SkillTypeDestroysCorpse = SkillType("DestroysCorpse") // Consumes corpses on use SkillTypeNonHitChill = SkillType("NonHitChill") SkillTypeChillingArea = SkillType("ChillingArea") SkillTypeAppliesCurse = SkillType("AppliesCurse") SkillTypeCanRapidFire = SkillType("CanRapidFire") SkillTypeAuraDuration = SkillType("AuraDuration") SkillTypeAreaSpell = SkillType("AreaSpell") SkillTypeOR = SkillType("OR") SkillTypeAND = SkillType("AND") SkillTypeNOT = SkillType("NOT") SkillTypePhysical = SkillType("Physical") SkillTypeAppliesMaim = SkillType("AppliesMaim") SkillTypeCreatesMinion = SkillType("CreatesMinion") SkillTypeGuard = SkillType("Guard") SkillTypeTravel = SkillType("Travel") SkillTypeBlink = SkillType("Blink") SkillTypeCanHaveBlessing = SkillType("CanHaveBlessing") SkillTypeProjectilesNotFromUser = SkillType("ProjectilesNotFromUser") SkillTypeAttackInPlaceIsDefault = SkillType("AttackInPlaceIsDefault") SkillTypeNova = SkillType("Nova") SkillTypeInstantNoRepeatWhenHeld = SkillType("InstantNoRepeatWhenHeld") SkillTypeInstantShiftAttackForLeftMouse = SkillType("InstantShiftAttackForLeftMouse") SkillTypeAuraNotOnCaster = SkillType("AuraNotOnCaster") SkillTypeBanner = SkillType("Banner") SkillTypeRain = SkillType("Rain") SkillTypeCooldown = SkillType("Cooldown") SkillTypeThresholdJewelChaining = SkillType("ThresholdJewelChaining") SkillTypeSlam = SkillType("Slam") SkillTypeStance = SkillType("Stance") SkillTypeNonRepeatable = SkillType("NonRepeatable") // Blood and Sand + Flesh and Stone SkillTypeOtherThingUsesSkill = SkillType("OtherThingUsesSkill") SkillTypeSteel = SkillType("Steel") SkillTypeHex = SkillType("Hex") SkillTypeMark = SkillType("Mark") SkillTypeAegis = SkillType("Aegis") SkillTypeOrb = SkillType("Orb") SkillTypeKillNoDamageModifiers = SkillType("KillNoDamageModifiers") SkillTypeRandomElement = SkillType("RandomElement") // means elements cannot repeat SkillTypeLateConsumeCooldown = SkillType("LateConsumeCooldown") SkillTypeArcane = SkillType("Arcane") // means it is reliant on amount of mana spent SkillTypeFixedCastTime = SkillType("FixedCastTime") SkillTypeRequiresOffHandNotWeapon = SkillType("RequiresOffHandNotWeapon") SkillTypeLink = SkillType("Link") SkillTypeBlessing = SkillType("Blessing") SkillTypeZeroReservation = SkillType("ZeroReservation") )
View Source
const ( TreeVersion3_10 = TreeVersion("3_10") TreeVersion3_11 = TreeVersion("3_11") TreeVersion3_12 = TreeVersion("3_12") TreeVersion3_13 = TreeVersion("3_13") TreeVersion3_14 = TreeVersion("3_14") TreeVersion3_15 = TreeVersion("3_15") TreeVersion3_16 = TreeVersion("3_16") TreeVersion3_17 = TreeVersion("3_17") TreeVersion3_18 = TreeVersion("3_18") )
View Source
const DefaultTreeVersion = TreeVersion3_10
View Source
const (
GameVersion3_0 = GameVersion("3_0")
)
View Source
const LatestTreeVersion = TreeVersion3_18
View Source
const LiveTargetVersion = GameVersion3_0
Variables ¶
View Source
var ClassAscendancies = map[ClassName][]AscendancyName{ Duelist: {Slayer, Gladiator, Champion}, Marauder: {Juggernaut, Berserker, Chieftain}, Ranger: {Deadeye, Pathfinder, Raider}, Scion: {Ascendant}, Shadow: {Assassin, Trickster, Saboteur}, Templar: {Hierophant, Inquisitor, Guardian}, Witch: {Elementalist, Necromancer, Occultist}, }
View Source
var ClassIDs = map[ClassName]int{ Duelist: 4, Marauder: 1, Ranger: 2, Scion: 0, Shadow: 6, Templar: 5, Witch: 3, }
View Source
var DamageTypeFlags = map[DamageType]int{ DamageTypePhysical: 0x01, DamageTypeLightning: 0x02, DamageTypeCold: 0x04, DamageTypeFire: 0x08, DamageTypeElemental: 0x0E, DamageTypeChaos: 0x10, }
View Source
var MonsterAccuracyTable = []float64{} /* 101 elements not displayed */
View Source
var MonsterAllyLifeTable = []float64{} /* 101 elements not displayed */
View Source
var MonsterArmourTable = []float64{} /* 101 elements not displayed */
View Source
var MonsterDamageTable = []float64{} /* 101 elements not displayed */
View Source
var MonsterEvasionTable = []float64{} /* 101 elements not displayed */
View Source
var MonsterLifeTable = []float64{} /* 101 elements not displayed */
View Source
var NonDamagingAilments = map[Ailment]NonDamagingAilmentData{ AilmentChill: { AssociatedType: DamageTypeCold, Alt: false, Default: utils.Ptr[float64](10), Min: 5, Max: 30, Precision: 0, Duration: utils.Ptr[float64](2), }, AilmentFreeze: { AssociatedType: DamageTypeCold, Alt: false, Default: nil, Min: 0.3, Max: 3, Precision: 2, Duration: nil, }, AilmentShock: { AssociatedType: DamageTypeLightning, Alt: false, Default: utils.Ptr[float64](15), Min: 5, Max: 50, Precision: 0, Duration: utils.Ptr[float64](2), }, AilmentScorch: { AssociatedType: DamageTypeFire, Alt: true, Default: utils.Ptr[float64](10), Min: 0, Max: 30, Precision: 0, Duration: utils.Ptr[float64](4), }, AilmentBrittle: { AssociatedType: DamageTypeCold, Alt: true, Default: utils.Ptr[float64](5), Min: 0, Max: 15, Precision: 2, Duration: utils.Ptr[float64](4), }, AilmentSap: { AssociatedType: DamageTypeLightning, Alt: true, Default: utils.Ptr[float64](6), Min: 0, Max: 20, Precision: 0, Duration: utils.Ptr[float64](4), }, }
View Source
var TreeVersions = make(map[TreeVersion]*TreeVersionData)
View Source
var UnarmedWeaponData = map[int]map[string]interface{}{ 0: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(6)}, 1: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(8)}, 2: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(5)}, 3: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(5)}, 4: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(6)}, 5: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(6)}, 6: {"type": "None", "AttackRate": 1.2, "CritChance": float64(0), "PhysicalMin": float64(2), "PhysicalMax": float64(5)}, }
View Source
var WeaponTypes = map[ItemClassName]*WeaponTypeInfo{ None: {OneHand: true, Melee: true, Flag: "Unarmed", ModFlag: mod.MFlagUnarmed}, Bow: {OneHand: false, Melee: false, Flag: "Bow", ModFlag: mod.MFlagBow}, Claw: {OneHand: true, Melee: true, Flag: "Claw", ModFlag: mod.MFlagClaw}, Dagger: {OneHand: true, Melee: true, Flag: "Dagger", ModFlag: mod.MFlagDagger}, Staff: {OneHand: false, Melee: true, Flag: "Staff", ModFlag: mod.MFlagStaff}, Wand: {OneHand: true, Melee: false, Flag: "Wand", ModFlag: mod.MFlagWand}, OneHandAxe: {OneHand: true, Melee: true, Flag: "Axe", ModFlag: mod.MFlagAxe}, OneHandMace: {OneHand: true, Melee: true, Flag: "Mace", ModFlag: mod.MFlagMace}, OneHandSword: {OneHand: true, Melee: true, Flag: "Sword", ModFlag: mod.MFlagSword}, Sceptre: {OneHand: true, Melee: true, Flag: "Mace", Label: "One Handed Mace", ModFlag: mod.MFlagMace}, ThrustingOneHandSword: {OneHand: true, Melee: true, Flag: "Sword", Label: "One Handed Sword", ModFlag: mod.MFlagSword}, FishingRod: {OneHand: false, Melee: true, Flag: "Fishing", ModFlag: mod.MFlagFishing}, TwoHandAxe: {OneHand: false, Melee: true, Flag: "Axe", ModFlag: mod.MFlagAxe}, TwoHandMace: {OneHand: false, Melee: true, Flag: "Mace", ModFlag: mod.MFlagMace}, TwoHandSword: {OneHand: false, Melee: true, Flag: "Sword", ModFlag: mod.MFlagSword}, }
Functions ¶
func BFS ¶
func BFS[K comparable, T any](g graph.Graph[K, T], adjacencyMap map[K]map[K]graph.Edge[K], start K, visit func(K) bool) ([]K, error)
BFS is an adapted version of graph.BFS that also returns the traversal path
func DamageStatsForType ¶
func FromJSONGz ¶
func RawToSkillTypes ¶
func RawToSkillTypes(types []*raw.ActiveSkillType) map[SkillType]bool
Types ¶
type Ascendancy ¶
type Ascendancy struct { ID AscendancyName `json:"id"` Name AscendancyName `json:"name"` FlavourText *string `json:"flavourText,omitempty"` FlavourTextColour *string `json:"flavourTextColour,omitempty"` FlavourTextRect *FlavourTextRect `json:"flavourTextRect,omitempty"` }
type AscendancyName ¶
type AscendancyName string
const ( Ascendant AscendancyName = "Ascendant" Assassin AscendancyName = "Assassin" Berserker AscendancyName = "Berserker" Champion AscendancyName = "Champion" Chieftain AscendancyName = "Chieftain" Deadeye AscendancyName = "Deadeye" Elementalist AscendancyName = "Elementalist" Gladiator AscendancyName = "Gladiator" Guardian AscendancyName = "Guardian" Hierophant AscendancyName = "Hierophant" Inquisitor AscendancyName = "Inquisitor" Juggernaut AscendancyName = "Juggernaut" Necromancer AscendancyName = "Necromancer" Occultist AscendancyName = "Occultist" Pathfinder AscendancyName = "Pathfinder" Raider AscendancyName = "Raider" Saboteur AscendancyName = "Saboteur" Slayer AscendancyName = "Slayer" Trickster AscendancyName = "Trickster" )
type CharacterAttributes ¶
type Class ¶
type Class struct { Name ClassName `json:"name"` BaseStr int64 `json:"base_str"` BaseDex int64 `json:"base_dex"` BaseInt int64 `json:"base_int"` Ascendancies []Ascendancy `json:"ascendancies"` }
type Constants ¶
type Constants struct { Classes Classes `json:"classes"` CharacterAttributes CharacterAttributes `json:"characterAttributes"` PSSCentreInnerRadius int64 `json:"PSSCentreInnerRadius"` SkillsPerOrbit []int64 `json:"skillsPerOrbit"` OrbitRadii []int64 `json:"orbitRadii"` }
type DamageType ¶
type DamageType string
func (DamageType) IsElemental ¶
func (t DamageType) IsElemental() bool
func (DamageType) Values ¶
func (DamageType) Values() []DamageType
type ExpansionJewel ¶
type ExtraImage ¶
type FlavourTextRect ¶
type GameVersion ¶
type GameVersion string
type ItemClassName ¶
type ItemClassName string
const ( None ItemClassName = "None" Bow ItemClassName = "Bow" Claw ItemClassName = "Claw" Dagger ItemClassName = "Dagger" FishingRod ItemClassName = "FishingRod" OneHandAxe ItemClassName = "One Hand Axe" OneHandMace ItemClassName = "One Hand Mace" OneHandSword ItemClassName = "One Hand Sword" RuneDagger ItemClassName = "Rune Dagger" Sceptre ItemClassName = "Sceptre" Shield ItemClassName = "Shield" Staff ItemClassName = "Staff" ThrustingOneHandSword ItemClassName = "Thrusting One Hand Sword" TwoHandAxe ItemClassName = "Two Hand Axe" TwoHandMace ItemClassName = "Two Hand Mace" TwoHandSword ItemClassName = "Two Hand Sword" Unarmed ItemClassName = "Unarmed" Wand ItemClassName = "Wand" Warstaff ItemClassName = "Warstaff" )
type MasteryEffect ¶
type Node ¶
type Node struct { Skill *int64 `json:"skill,omitempty"` Name *string `json:"name,omitempty"` Icon *string `json:"icon,omitempty"` IsNotable *bool `json:"isNotable,omitempty"` Recipe []OilType `json:"recipe,omitempty"` Stats []string `json:"stats,omitempty"` Group *int64 `json:"group,omitempty"` Orbit *int64 `json:"orbit,omitempty"` OrbitIndex *int64 `json:"orbitIndex,omitempty"` Out []string `json:"out,omitempty"` In []string `json:"in,omitempty"` ReminderText []string `json:"reminderText,omitempty"` IsMastery *bool `json:"isMastery,omitempty"` InactiveIcon *string `json:"inactiveIcon,omitempty"` ActiveIcon *string `json:"activeIcon,omitempty"` ActiveEffectImage *string `json:"activeEffectImage,omitempty"` MasteryEffects []MasteryEffect `json:"masteryEffects,omitempty"` GrantedStrength *int64 `json:"grantedStrength,omitempty"` AscendancyName *string `json:"ascendancyName,omitempty"` GrantedDexterity *int64 `json:"grantedDexterity,omitempty"` IsAscendancyStart *bool `json:"isAscendancyStart,omitempty"` IsMultipleChoice *bool `json:"isMultipleChoice,omitempty"` GrantedIntelligence *int64 `json:"grantedIntelligence,omitempty"` IsJewelSocket *bool `json:"isJewelSocket,omitempty"` ExpansionJewel *ExpansionJewel `json:"expansionJewel,omitempty"` GrantedPassivePoints *int64 `json:"grantedPassivePoints,omitempty"` IsKeystone *bool `json:"isKeystone,omitempty"` FlavourText []string `json:"flavourText,omitempty"` IsProxy *bool `json:"isProxy,omitempty"` IsMultipleChoiceOption *bool `json:"isMultipleChoiceOption,omitempty"` IsBlighted *bool `json:"isBlighted,omitempty"` ClassStartIndex *int64 `json:"classStartIndex,omitempty"` }
type NonDamagingAilmentData ¶
type Sprites ¶
type Sprites struct { Background map[string]Sprite `json:"background"` NormalActive map[string]Sprite `json:"normalActive"` NotableActive map[string]Sprite `json:"notableActive"` KeystoneActive map[string]Sprite `json:"keystoneActive"` NormalInactive map[string]Sprite `json:"normalInactive"` NotableInactive map[string]Sprite `json:"notableInactive"` KeystoneInactive map[string]Sprite `json:"keystoneInactive"` Mastery map[string]Sprite `json:"mastery"` MasteryConnected map[string]Sprite `json:"masteryConnected"` MasteryActiveSelected map[string]Sprite `json:"masteryActiveSelected"` MasteryInactive map[string]Sprite `json:"masteryInactive"` MasteryActiveEffect map[string]Sprite `json:"masteryActiveEffect"` AscendancyBackground map[string]Sprite `json:"ascendancyBackground"` Ascendancy map[string]Sprite `json:"ascendancy"` StartNode map[string]Sprite `json:"startNode"` GroupBackground map[string]Sprite `json:"groupBackground"` Frame map[string]Sprite `json:"frame"` Jewel map[string]Sprite `json:"jewel"` Line map[string]Sprite `json:"line"` JewelRadius map[string]Sprite `json:"jewelRadius"` }
type Tree ¶
type Tree struct { Tree string `json:"tree"` Classes []Class `json:"classes"` Groups map[string]Group `json:"groups"` Nodes map[string]Node `json:"nodes"` ExtraImages map[string]ExtraImage `json:"extraImages"` JewelSlots []int64 `json:"jewelSlots"` MinX int64 `json:"min_x"` MinY int64 `json:"min_y"` MaxX int64 `json:"max_x"` MaxY int64 `json:"max_y"` Constants Constants `json:"constants"` Sprites Sprites `json:"sprites"` ImageZoomLevels []float64 `json:"imageZoomLevels"` Points Points `json:"points"` }
type TreeVersion ¶
type TreeVersion string
type TreeVersionData ¶
type TreeVersionData struct { Display string Num float64 URL string // contains filtered or unexported fields }
func (*TreeVersionData) CalculateTreePath ¶
func (v *TreeVersionData) CalculateTreePath(activeNodes []int64, target int64) []int64
func (*TreeVersionData) RawTree ¶
func (v *TreeVersionData) RawTree() []byte
func (*TreeVersionData) Tree ¶
func (v *TreeVersionData) Tree() *Tree
Source Files ¶
Click to show internal directories.
Click to hide internal directories.