Documentation ¶
Index ¶
- Constants
- Variables
- type APLActionCastPaladinPrimarySeal
- func (x *APLActionCastPaladinPrimarySeal) Execute(sim *core.Simulation)
- func (x *APLActionCastPaladinPrimarySeal) Finalize(*core.APLRotation)
- func (x *APLActionCastPaladinPrimarySeal) GetAPLValues() []core.APLValue
- func (x *APLActionCastPaladinPrimarySeal) GetInnerActions() []*core.APLAction
- func (x *APLActionCastPaladinPrimarySeal) GetNextAction(*core.Simulation) *core.APLAction
- func (x *APLActionCastPaladinPrimarySeal) IsReady(sim *core.Simulation) bool
- func (x *APLActionCastPaladinPrimarySeal) Reset(*core.Simulation)
- func (x *APLActionCastPaladinPrimarySeal) String() string
- type APLValueCurrentSealRemainingTime
- type Paladin
- func (paladin *Paladin) AddPartyBuffs(_ *proto.PartyBuffs)
- func (paladin *Paladin) AddRaidBuffs(_ *proto.RaidBuffs)
- func (paladin *Paladin) ApplyRunes()
- func (paladin *Paladin) ApplyTalents()
- func (paladin *Paladin) GetCharacter() *core.Character
- func (paladin *Paladin) GetPaladin() *Paladin
- func (paladin *Paladin) Initialize()
- func (paladin *Paladin) NewAPLAction(rot *core.APLRotation, config *proto.APLAction) core.APLActionImpl
- func (paladin *Paladin) NewAPLValue(rot *core.APLRotation, config *proto.APLValue) core.APLValue
- func (paladin *Paladin) Reset(_ *core.Simulation)
- func (paladin *Paladin) ResetCurrentPaladinAura()
- func (paladin *Paladin) ResetPrimarySeal(primarySeal proto.PaladinSeal)
- type PaladinAgent
- type SealJudgeCode
Constants ¶
View Source
const ( PaladinT1Prot2P = 456536 PaladinT1Prot4P = 456538 PaladinT1Prot6P = 456541 PaladinT2Prot2P = 467531 PaladinT2Prot4P = 467532 PaladinT2Prot6P = 467536 PaladinTAQProt2P = 1213410 PaladinTAQProt4P = 1213413 PaladinT1Holy2P = 456488 PaladinT1Holy4P = 457323 PaladinT1Holy6P = 456492 PaladinT2Holy2P = 467506 PaladinT2Holy4P = 467507 PaladinT2Holy6P = 467513 PaladinTAQHoly2P = 1213349 PaladinTAQHoly4P = 1213353 PaladinT1Ret2P = 456494 PaladinT1Ret4P = 456489 PaladinT1Ret6P = 456533 PaladinT2Ret2P = 467518 PaladinT2Ret4P = 467526 PaladinT2Ret6P = 467529 PaladinTAQRet2P = 1213397 PaladinTAQRet4P = 1213406 PaladinZG2P = 468401 PaladinZG3P = 468428 PaladinZG5P = 468431 PaladinRAQ3P = 1213467 )
Soul Related Set Bonus IDs
View Source
const ( SanctifiedOrb = 20512 LibramOfHope = 22401 LibramOfFervor = 23203 LibramDiscardedTenetsOfTheSilverHand = 209574 LibramOfBenediction = 215435 LibramOfDraconicDestruction = 221457 LibramOfTheDevoted = 228174 LibramOfAvenging = 232421 Truthbearer2H = 229749 Truthbearer1H = 229806 HammerOfTheLightbringer = 230003 ScrollsOfBlindingLight = 230272 GrileksCharmOfValor = 231285 HerosBrand = 231328 ZandalarFreethinkersBreastplate = 231329 ZandalarFreethinkersBelt = 231330 LibramOfWrath = 232420 LibramOfTheExorcist = 234475 LibramOfSanctity = 234476 LibramOfRighteousness = 234477 )
Libram IDs
View Source
const ( SpellFlag_RV = core.SpellFlagAgentReserved1 SpellFlag_Forbearance = core.SpellFlagAgentReserved2 )
View Source
const ( SpellCode_PaladinNone = iota SpellCode_PaladinExorcism SpellCode_PaladinHolyShock SpellCode_PaladinHolyWrath SpellCode_PaladinJudgementOfCommand SpellCode_PaladinConsecration SpellCode_PaladinAvengersShield SpellCode_PaladinHolyShield SpellCode_PaladinHolyShieldProc SpellCode_PaladinLayOnHands SpellCode_PaladinHammerOfWrath SpellCode_PaladinCrusaderStrike SpellCode_PaladinHammerOfTheRighteous SpellCode_PaladinShieldOfRighteousness )
View Source
const RVTicks = 4
Variables ¶
View Source
var HolyShieldValues = []struct { level int32 spellID int32 procID int32 manaCost float64 damage float64 }{ {/* contains filtered or unexported fields */}, {/* contains filtered or unexported fields */}, {/* contains filtered or unexported fields */}, }
View Source
var ItemSetAvengersRadiance = core.NewItemSet(core.ItemSet{ Name: "Avenger's Radiance", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinTAQRet2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinTAQRet4P() }, }, })
View Source
var ItemSetBattlegearOfEternalJustice = core.NewItemSet(core.ItemSet{ Name: "Battlegear of Eternal Justice", Bonuses: map[int32]core.ApplyEffect{ 3: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinRAQ3P() }, }, })
View Source
var ItemSetFreethinkersArmor = core.NewItemSet(core.ItemSet{ Name: "Freethinker's Armor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinZG2P() }, 3: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinZG3P() }, 5: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinZG5P() }, }, })
View Source
var ItemSetLawbringerMercy = core.NewItemSet(core.ItemSet{ Name: "Lawbringer Mercy", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Holy2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Holy4P() }, 6: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Holy6P() }, }, })
View Source
var ItemSetLawbringerRadiance = core.NewItemSet(core.ItemSet{ Name: "Lawbringer Radiance", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Ret2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Ret4P() }, 6: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Ret6P() }, }, })
View Source
var ItemSetLawbringerWill = core.NewItemSet(core.ItemSet{ Name: "Lawbringer Will", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Prot2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Prot4P() }, 6: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT1Prot6P() }, }, })
View Source
var ItemSetLieutenantCommandersRedemption = core.NewItemSet(core.ItemSet{ Name: "Lieutenant Commander's Redemption", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.HealingPower, 44) }, 4: func(agent core.Agent) { }, 6: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.Stamina, 20) }, }, })
View Source
var ItemSetLieutenantCommandersVindication = core.NewItemSet(core.ItemSet{ Name: "Lieutenant Commander's Vindication", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { c := agent.GetCharacter() c.AddStats(stats.Stats{ stats.AttackPower: 40, stats.RangedAttackPower: 40, }) }, 4: func(agent core.Agent) { }, 6: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.Stamina, 20) }, }, })
View Source
var ItemSetMercifulJudgement = core.NewItemSet(core.ItemSet{ Name: "Merciful Judgement", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Holy2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Holy4P() }, 6: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Holy6P() }, }, })
View Source
var ItemSetObsessedProphetsPlate = core.NewItemSet(core.ItemSet{ Name: "Obsessed Prophet's Plate", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.MeleeCrit, 1*core.CritRatingPerCritChance) c.AddStat(stats.SpellCrit, 1*core.SpellCritRatingPerCritChance) }, 3: func(agent core.Agent) { c := agent.GetCharacter() c.PseudoStats.SchoolBonusCritChance[stats.SchoolIndexHoly] += 3 * core.SpellCritRatingPerCritChance }, }, })
View Source
var ItemSetRadiantJudgement = core.NewItemSet(core.ItemSet{ Name: "Radiant Judgement", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Ret2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Ret4P() }, 6: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Ret6P() }, }, })
View Source
var ItemSetRedemptionArmor = core.NewItemSet(core.ItemSet{ Name: "Redemption Armor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasHoly2PBonus() }, 4: func(agent core.Agent) { }, 6: func(agent core.Agent) { }, }, })
View Source
var ItemSetRedemptionBulwark = core.NewItemSet(core.ItemSet{ Name: "Redemption Bulwark", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasProtection2PBonus() }, 4: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasProtection4PBonus() }, 6: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasProtection6PBonus() }, }, })
View Source
var ItemSetRedemptionWarplate = core.NewItemSet(core.ItemSet{ Name: "Redemption Warplate", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasRetribution2PBonus() }, 4: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasRetribution4PBonus() }, 6: func(agent core.Agent) { paladin := agent.(PaladinAgent).GetPaladin() paladin.applyNaxxramasRetribution6PBonus() }, }, })
View Source
var ItemSetSoulforgeArmor = core.NewItemSet(core.ItemSet{ Name: "Soulforge Armor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { c := agent.GetCharacter() c.AddStats(stats.Stats{ stats.AttackPower: 40, stats.RangedAttackPower: 40, stats.HealingPower: 40, }) }, 4: func(agent core.Agent) { c := agent.GetCharacter() actionID := core.ActionID{SpellID: 450625} procAura := c.NewTemporaryStatsAura("Crusader's Wrath", core.ActionID{SpellID: 27499}, stats.Stats{stats.SpellPower: 95}, time.Second*10) handler := func(sim *core.Simulation, spell *core.Spell, _ *core.SpellResult) { procAura.Activate(sim) } core.MakeProcTriggerAura(&c.Unit, core.ProcTrigger{ ActionID: actionID, Name: "Item - Crusader's Wrath Proc - Lightforge Armor (Melee Auto)", Callback: core.CallbackOnSpellHitDealt, Outcome: core.OutcomeLanded, ProcMask: core.ProcMaskMeleeWhiteHit, ProcChance: 0.06, Handler: handler, }) core.MakeProcTriggerAura(&c.Unit, core.ProcTrigger{ ActionID: actionID, Name: "Item - Crusader's Wrath Proc - Lightforge Armor (Spell Cast)", Callback: core.CallbackOnCastComplete, ProcMask: core.ProcMaskSpellDamage | core.ProcMaskSpellHealing, ProcChance: 0.04, Handler: handler, }) }, 6: func(agent core.Agent) { c := agent.GetCharacter() c.AddResistances(8) }, 8: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.Armor, 200) }, }, })
View Source
var ItemSetWilfullJudgement = core.NewItemSet(core.ItemSet{ Name: "Wilfull Judgement", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Prot2P() }, 4: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Prot4P() }, 6: func(agent core.Agent) { agent.(PaladinAgent).GetPaladin().applyPaladinT2Prot6P() }, }, })
View Source
var KnightLieutenantsImbuedPlate = core.NewItemSet(core.ItemSet{ Name: "Knight-Lieutenant's Imbued Plate", Bonuses: map[int32]core.ApplyEffect{ 3: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.Stamina, 15) }, 6: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.HealingPower, 33) }, }, })
View Source
var KnightLieutenantsLamellarPlate = core.NewItemSet(core.ItemSet{ Name: "Knight-Lieutenant's Lamellar Plate", Bonuses: map[int32]core.ApplyEffect{ 3: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.Stamina, 15) }, 6: func(agent core.Agent) { c := agent.GetCharacter() c.AddStat(stats.SpellPower, 18) }, }, })
View Source
var TalentTreeSizes = [3]int{14, 15, 15}
Functions ¶
This section is empty.
Types ¶
type APLActionCastPaladinPrimarySeal ¶
type APLActionCastPaladinPrimarySeal struct {
// contains filtered or unexported fields
}
func (*APLActionCastPaladinPrimarySeal) Execute ¶
func (x *APLActionCastPaladinPrimarySeal) Execute(sim *core.Simulation)
func (*APLActionCastPaladinPrimarySeal) Finalize ¶
func (x *APLActionCastPaladinPrimarySeal) Finalize(*core.APLRotation)
func (*APLActionCastPaladinPrimarySeal) GetAPLValues ¶
func (x *APLActionCastPaladinPrimarySeal) GetAPLValues() []core.APLValue
func (*APLActionCastPaladinPrimarySeal) GetInnerActions ¶
func (x *APLActionCastPaladinPrimarySeal) GetInnerActions() []*core.APLAction
func (*APLActionCastPaladinPrimarySeal) GetNextAction ¶
func (x *APLActionCastPaladinPrimarySeal) GetNextAction(*core.Simulation) *core.APLAction
func (*APLActionCastPaladinPrimarySeal) IsReady ¶
func (x *APLActionCastPaladinPrimarySeal) IsReady(sim *core.Simulation) bool
func (*APLActionCastPaladinPrimarySeal) Reset ¶
func (x *APLActionCastPaladinPrimarySeal) Reset(*core.Simulation)
func (*APLActionCastPaladinPrimarySeal) String ¶
func (x *APLActionCastPaladinPrimarySeal) String() string
type APLValueCurrentSealRemainingTime ¶
type APLValueCurrentSealRemainingTime struct { core.DefaultAPLValueImpl // contains filtered or unexported fields }
func (*APLValueCurrentSealRemainingTime) GetDuration ¶
func (x *APLValueCurrentSealRemainingTime) GetDuration(sim *core.Simulation) time.Duration
func (*APLValueCurrentSealRemainingTime) String ¶
func (x *APLValueCurrentSealRemainingTime) String() string
func (*APLValueCurrentSealRemainingTime) Type ¶
func (x *APLValueCurrentSealRemainingTime) Type() proto.APLValueType
type Paladin ¶
type Paladin struct { core.Character Talents *proto.PaladinTalents Options *proto.PaladinOptions // contains filtered or unexported fields }
func NewPaladin ¶
func NewPaladin(character *core.Character, options *proto.Player, paladinOptions *proto.PaladinOptions) *Paladin
maybe need to add stat dependencies
func (*Paladin) AddPartyBuffs ¶
func (paladin *Paladin) AddPartyBuffs(_ *proto.PartyBuffs)
func (*Paladin) AddRaidBuffs ¶
func (*Paladin) ApplyRunes ¶
func (paladin *Paladin) ApplyRunes()
func (*Paladin) ApplyTalents ¶
func (paladin *Paladin) ApplyTalents()
func (*Paladin) GetCharacter ¶
func (*Paladin) GetPaladin ¶
func (*Paladin) Initialize ¶
func (paladin *Paladin) Initialize()
func (*Paladin) NewAPLAction ¶
func (paladin *Paladin) NewAPLAction(rot *core.APLRotation, config *proto.APLAction) core.APLActionImpl
The APLAction for casting the current Seal
func (*Paladin) NewAPLValue ¶
func (*Paladin) Reset ¶
func (paladin *Paladin) Reset(_ *core.Simulation)
func (*Paladin) ResetCurrentPaladinAura ¶ added in v0.0.17
func (paladin *Paladin) ResetCurrentPaladinAura()
func (*Paladin) ResetPrimarySeal ¶ added in v0.0.7
func (paladin *Paladin) ResetPrimarySeal(primarySeal proto.PaladinSeal)
type PaladinAgent ¶
type PaladinAgent interface {
GetPaladin() *Paladin
}
Implemented by each Paladin spec.
type SealJudgeCode ¶ added in v0.0.24
type SealJudgeCode uint8
const ( SealJudgeCodeNone SealJudgeCode = 0 SealJudgeOfMartyrdomCode SealJudgeCode = 1 << iota SealJudgeOfRighteousnessCode SealJudgeOfCommandCode SealJudgeOfTheCrusaderCode )
Source Files ¶
- apl_values.go
- aura_mastery.go
- avengers_shield.go
- avenging_wrath.go
- blessing_of_sanctuary.go
- consecration.go
- crusader_strike.go
- divine_favor.go
- divine_storm.go
- exorcism.go
- forbearance.go
- hammer_of_the_righteous.go
- hammer_of_wrath.go
- holy_shield.go
- holy_shock.go
- holy_wrath.go
- item_sets_pve.go
- item_sets_pve_phase_7.go
- item_sets_pvp.go
- items.go
- judgement.go
- lay_on_hands.go
- paladin.go
- righteous_fury.go
- righteous_vengeance.go
- runes.go
- shield_of_righteousness.go
- soc.go
- som.go
- sor.go
- sotc.go
- talents.go
Click to show internal directories.
Click to hide internal directories.