Documentation ¶
Index ¶
- Constants
- Variables
- type PoisonProcSource
- type Rogue
- func (rogue *Rogue) AddPartyBuffs(_ *proto.PartyBuffs)
- func (rogue *Rogue) AddRaidBuffs(_ *proto.RaidBuffs)
- func (rogue *Rogue) ApplyCutToTheChase(sim *core.Simulation)
- func (rogue *Rogue) ApplyEnergyTickMultiplier(multiplier float64)
- func (rogue *Rogue) ApplyRunes()
- func (rogue *Rogue) ApplyTalents()
- func (rogue *Rogue) BreakStealth(sim *core.Simulation)
- func (rogue *Rogue) CrimsonTempestDamage(comboPoints int32) float64
- func (rogue *Rogue) EnvenomDuration(comboPoints int32) time.Duration
- func (rogue *Rogue) GetCharacter() *core.Character
- func (rogue *Rogue) GetDeadlyPoisonProcChance() float64
- func (rogue *Rogue) GetInstantPoisonProcChance() float64
- func (rogue *Rogue) GetRogue() *Rogue
- func (rogue *Rogue) GetWoundPoisonProcChance() float64
- func (rogue *Rogue) HasDagger(hand core.Hand) bool
- func (rogue *Rogue) HasRune(rune proto.RogueRune) bool
- func (rogue *Rogue) Initialize()
- func (rogue *Rogue) IsStealthed() bool
- func (rogue *Rogue) RegisterEvasionSpell()
- func (rogue *Rogue) Reset(_ *core.Simulation)
- func (rogue *Rogue) RuptureDamage(comboPoints int32) float64
- func (rogue *Rogue) RuptureDuration(comboPoints int32) time.Duration
- func (rogue *Rogue) RuptureTicks(comboPoints int32) int32
- type RogueAgent
Constants ¶
View Source
const ( BloodSpatteredStilletto = 216522 ShadowflameSword = 228143 DreamEater = 224122 VenomousTotem = 230250 RenatakisCharmofTrickery = 231287 ZandalarianShadowMasteryTalisman = 231336 )
View Source
const ( SpellFlagBuilder = core.SpellFlagAgentReserved1 SpellFlagColdBlooded = core.SpellFlagAgentReserved2 SpellFlagDeadlyBrewed = core.SpellFlagAgentReserved3 SpellFlagCarnage = core.SpellFlagAgentReserved4 // for Carnage SpellFlagRoguePoison = core.SpellFlagAgentReserved5 // RogueT1 )
View Source
const ( SpellCode_RogueNone int32 = iota SpellCode_RogueAmbush SpellCode_RogueAdrenalineRush SpellCode_RogueBackstab SpellCode_RogueBetweentheEyes SpellCode_RogueBladeDance SpellCode_RogueBladeFlurry SpellCode_RogueCrimsonTempest SpellCode_RogueDeadlyPoisonTick SpellCode_RogueEnvenom SpellCode_RogueEviscerate SpellCode_RogueExposeArmor SpellCode_RogueGarrote SpellCode_RogueGhostlyStrike SpellCode_RogueHemorrhage SpellCode_RogueInstantPoison SpellCode_RogueMainGauche SpellCode_RogueMutilate SpellCode_RogueOccultPoisonTick SpellCode_RoguePoisonedKnife SpellCode_RogueRupture SpellCode_RogueSaberSlash SpellCode_RogueShadowStrike SpellCode_RogueSinisterStrike SpellCode_RogueSliceandDice )
View Source
const FanOfKnivesSpellID int32 = 409240
View Source
const RogueBleedTag = "RogueBleed"
Variables ¶
View Source
var AdrenalineRushActionID = core.ActionID{SpellID: 13750}
View Source
var ItemSetBloodfangBattlearmor = core.NewItemSet(core.ItemSet{ Name: "Bloodfang Battlearmor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT2Tank2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT2Tank4PBonus() }, 6: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT2Tank6PBonus() }, }, })
View Source
var ItemSetBloodfangThrill = core.NewItemSet(core.ItemSet{ Name: "Bloodfang Thrill", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT2Damage2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT2Damage4PBonus() }, 6: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT2Damage6PBonus() }, }, })
View Source
var ItemSetBonescytheArmor = core.NewItemSet(core.ItemSet{ Name: "Bonescythe Armor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyNaxxramasDamage2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyNaxxramasDamage4PBonus() }, 6: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyNaxxramasDamage6PBonus() }, }, })
View Source
var ItemSetBonescytheLeathers = core.NewItemSet(core.ItemSet{ Name: "Bonescythe Leathers", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyNaxxramasTank2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyNaxxramasTank4PBonus() }, 6: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyNaxxramasTank6PBonus() }, }, })
View Source
var ItemSetChampionsVestments = core.NewItemSet(core.ItemSet{ Name: "Champion's Vestments", 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 ItemSetDarkmantleArmor = core.NewItemSet(core.ItemSet{ Name: "Darkmantle Armor", 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) { c := agent.GetCharacter() actionID := core.ActionID{SpellID: 27787} energyMetrics := c.NewEnergyMetrics(actionID) core.MakeProcTriggerAura(&c.Unit, core.ProcTrigger{ ActionID: actionID, Name: "Rogue Armor Energize", Callback: core.CallbackOnSpellHitDealt, Outcome: core.OutcomeLanded, ProcMask: core.ProcMaskMeleeWhiteHit, PPM: 1, Handler: func(sim *core.Simulation, spell *core.Spell, _ *core.SpellResult) { if c.HasEnergyBar() { c.AddEnergy(sim, 35, energyMetrics) } }, }) }, 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 ItemSetDeathdealersBattlearmor = core.NewItemSet(core.ItemSet{ Name: "Deathdealer's Battlearmor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyTAQTank2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyTAQTank4PBonus() }, }, })
View Source
var ItemSetDeathdealersThrill = core.NewItemSet(core.ItemSet{ Name: "Deathdealer's Thrill", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyTAQDamage2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyTAQDamage4PBonus() }, }, })
View Source
var ItemSetEmblemsofVeiledShadows = core.NewItemSet(core.ItemSet{ Name: "Emblems of Veiled Shadows", Bonuses: map[int32]core.ApplyEffect{ 3: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyRAQDamage3PBonus() }, }, })
View Source
var ItemSetLieutenantCommandersVestments = core.NewItemSet(core.ItemSet{ Name: "Lieutenant Commander's Vestments", 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 ItemSetMadCapsOutfit = core.NewItemSet(core.ItemSet{ Name: "Madcap's Outfit", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { c := agent.GetCharacter() c.AddStats(stats.Stats{ stats.AttackPower: 20, stats.RangedAttackPower: 20, }) }, 3: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyZGDagger3PBonus() }, 5: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyZGDagger5PBonus() }, }, })
View Source
var ItemSetNightSlayerBattlearmor = core.NewItemSet(core.ItemSet{ Name: "Nightslayer Battlearmor", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT1Tank2PBonus() }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT1Tank4PBonus() }, 6: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT1Tank6PBonus() }, }, })
View Source
var ItemSetNightSlayerThrill = core.NewItemSet(core.ItemSet{ Name: "Nightslayer Thrill", Bonuses: map[int32]core.ApplyEffect{ 2: func(agent core.Agent) { }, 4: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT1Damage4PBonus() }, 6: func(agent core.Agent) { rogue := agent.(RogueAgent).GetRogue() rogue.applyT1Damage6PBonus() }, }, })
View Source
var TalentTreeSizes = [3]int{15, 19, 17}
Functions ¶
This section is empty.
Types ¶
type PoisonProcSource ¶
type PoisonProcSource int
const ( NormalProc PoisonProcSource = iota ShivProc DeadlyBrewProc )
type Rogue ¶
type Rogue struct { core.Character Talents *proto.RogueTalents Options *proto.RogueOptions AdrenalineRush *core.Spell Backstab *core.Spell BladeFlurry *core.Spell Feint *core.Spell Garrote *core.Spell Ambush *core.Spell Hemorrhage *core.Spell GhostlyStrike *core.Spell HungerForBlood *core.Spell Mutilate *core.Spell MutilateMH *core.Spell MutilateOH *core.Spell Shiv *core.Spell SinisterStrike *core.Spell SaberSlash *core.Spell MainGauche *core.Spell Shadowstep *core.Spell Preparation *core.Spell Premeditation *core.Spell ColdBlood *core.Spell Vanish *core.Spell Shadowstrike *core.Spell QuickDraw *core.Spell ShurikenToss *core.Spell BetweenTheEyes *core.Spell PoisonedKnife *core.Spell Blunderbuss *core.Spell FanOfKnives *core.Spell CrimsonTempest *core.Spell CrimsonTempestBleed *core.Spell Envenom *core.Spell Eviscerate *core.Spell ExposeArmor *core.Spell Rupture *core.Spell SliceAndDice *core.Spell Finishers []*core.Spell Evasion *core.Spell BladeDance *core.Spell DeadlyPoison [3]*core.Spell InstantPoison [3]*core.Spell WoundPoison [2]*core.Spell OccultPoison [3]*core.Spell SebaciousPoison [2]*core.Spell AtrophicPoison [2]*core.Spell NumbingPoison [2]*core.Spell AdrenalineRushAura *core.Aura BladeDanceAura *core.Aura BladeFlurryAura *core.Aura CutthroatProcAura *core.Aura EnvenomAura *core.Aura ExposeArmorAuras core.AuraArray EvasionAura *core.Aura JustAFleshWoundAura *core.Aura MasterOfSubtletyAura *core.Aura RollingWithThePunchesAura *core.Aura RollingWithThePunchesProcAura *core.Aura ShadowstepAura *core.Aura ShadowDanceAura *core.Aura SliceAndDiceAura *core.Aura StealthAura *core.Aura WaylayAuras core.AuraArray HonorAmongThieves *core.Aura // contains filtered or unexported fields }
func (*Rogue) AddPartyBuffs ¶
func (rogue *Rogue) AddPartyBuffs(_ *proto.PartyBuffs)
func (*Rogue) AddRaidBuffs ¶
func (*Rogue) ApplyCutToTheChase ¶ added in v0.0.3
func (rogue *Rogue) ApplyCutToTheChase(sim *core.Simulation)
Apply the effects of the Cut to the Chase talent
func (*Rogue) ApplyEnergyTickMultiplier ¶
func (*Rogue) ApplyRunes ¶
func (rogue *Rogue) ApplyRunes()
func (*Rogue) ApplyTalents ¶
func (rogue *Rogue) ApplyTalents()
func (*Rogue) BreakStealth ¶
func (rogue *Rogue) BreakStealth(sim *core.Simulation)
Deactivate Stealth if it is active. This must be added to all abilities that cause Stealth to fade.
func (*Rogue) CrimsonTempestDamage ¶ added in v0.0.16
func (*Rogue) EnvenomDuration ¶
func (*Rogue) GetCharacter ¶
func (*Rogue) GetDeadlyPoisonProcChance ¶
Used for all 30% proc poisons (Sebacious and others)
func (*Rogue) GetInstantPoisonProcChance ¶
func (*Rogue) GetWoundPoisonProcChance ¶
func (*Rogue) HasDagger ¶
Does the rogue have a dagger equipped in the specified hand (main or offhand)?
func (*Rogue) Initialize ¶
func (rogue *Rogue) Initialize()
func (*Rogue) IsStealthed ¶
Check if the rogue is considered in "stealth" for the purpose of casting abilities
func (*Rogue) RegisterEvasionSpell ¶ added in v0.0.14
func (rogue *Rogue) RegisterEvasionSpell()
func (*Rogue) Reset ¶
func (rogue *Rogue) Reset(_ *core.Simulation)
func (*Rogue) RuptureDamage ¶
func (*Rogue) RuptureDuration ¶
func (*Rogue) RuptureTicks ¶
type RogueAgent ¶
type RogueAgent interface {
GetRogue() *Rogue
}
Agent is a generic way to access underlying rogue on any of the agents.
Source Files ¶
- ambush.go
- backstab.go
- between_the_eyes.go
- blunderbuss.go
- carnage.go
- crimson_tempest.go
- envenom.go
- evasion.go
- eviscerate.go
- expose_armor.go
- fan_of_knives.go
- feint.go
- garrote.go
- ghostly_strike.go
- hemorrhage.go
- item_sets_phase_4.go
- item_sets_phase_5.go
- item_sets_phase_6.go
- item_sets_phase_7.go
- items.go
- items_sets_pve.go
- items_sets_pvp.go
- main_gauche.go
- master_of_subtlety.go
- mutilate.go
- poisoned_knife.go
- poisons.go
- premeditation.go
- preparation.go
- quick_draw.go
- riposte.go
- rogue.go
- runes.go
- rupture.go
- saber_slash.go
- shadowstep.go
- shadowstrike.go
- shuriken_toss.go
- sinister_strike.go
- slice_and_dice.go
- stealth.go
- sword_specialization.go
- talents.go
- thistle_tea.go
- unfair_advantage.go
- vanish.go
- waylay.go
Click to show internal directories.
Click to hide internal directories.