shared

package
v0.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 26, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateDevensiveStatActive

func CreateDevensiveStatActive(itemID int32, duration time.Duration, cooldown time.Duration, stats stats.Stats)

func CreateOffensiveStatActive

func CreateOffensiveStatActive(itemID int32, duration time.Duration, cooldown time.Duration, stats stats.Stats)

func GetOutcome

func GetOutcome(spell *core.Spell, outcome OutcomeType) core.OutcomeApplier

func NewAgilityActive

func NewAgilityActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewCritActive

func NewCritActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewDodgeActive

func NewDodgeActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewHasteActive

func NewHasteActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewHealthActive

func NewHealthActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewIntActive

func NewIntActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewMasteryActive

func NewMasteryActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewParryActive

func NewParryActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewProcDamageEffect

func NewProcDamageEffect(config ProcDamageEffect)

func NewProcStatBonusEffect

func NewProcStatBonusEffect(config ProcStatBonusEffect)

func NewProcStatBonusEffectWithCustomCondition

func NewProcStatBonusEffectWithCustomCondition(config ProcStatBonusEffect, condition ProcCondition)

func NewProcStatBonusEffectWithDamageProc

func NewProcStatBonusEffectWithDamageProc(config ProcStatBonusEffect, damage DamageEffect)

func NewSpellPowerActive

func NewSpellPowerActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewSpiritActive

func NewSpiritActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

func NewStackingStatBonusCD

func NewStackingStatBonusCD(config StackingStatBonusCD)

func NewStackingStatBonusEffect

func NewStackingStatBonusEffect(config StackingStatBonusEffect)

func NewStrengthActive

func NewStrengthActive(itemID int32, bonus float64, duration time.Duration, cooldown time.Duration)

Types

type CustomProcHandler

type CustomProcHandler func(sim *core.Simulation, spell *core.Spell, result *core.SpellResult, procAura *core.Aura)

type DamageEffect

type DamageEffect struct {
	SpellID          int32
	School           core.SpellSchool
	MinDmg           float64
	MaxDmg           float64
	BonusCoefficient float64
}

type ExtraSpellInfo

type ExtraSpellInfo struct {
	Spell   *core.Spell
	Trigger func(sim *core.Simulation, spell *core.Spell, result *core.SpellResult)
}

type OutcomeType

type OutcomeType uint64
const (
	OutcomeDefault                  = 0
	OutcomeMeleeCanCrit OutcomeType = iota
	OutcomeMeleeNoCrit
	OutcomeMeleeNoBlockDodgeParryCrit
	OutcomeSpellCanCrit
	OutcomeSpellNoCrit
	OutcomeSpellNoMissCanCrit
)

type ProcCondition

type ProcCondition func(sim *core.Simulation, spell *core.Spell, result *core.SpellResult) bool

type ProcDamageEffect

type ProcDamageEffect struct {
	ItemID  int32
	SpellID int32
	Trigger core.ProcTrigger

	School  core.SpellSchool
	MinDmg  float64
	MaxDmg  float64
	Flags   core.SpellFlag
	Outcome OutcomeType
}

type ProcStatBonusEffect

type ProcStatBonusEffect struct {
	Name       string
	ID         int32
	AuraID     int32
	Bonus      stats.Stats
	Duration   time.Duration
	Callback   core.AuraCallback
	ProcMask   core.ProcMask
	Outcome    core.HitOutcome
	Harmful    bool
	ProcChance float64
	PPM        float64
	ICD        time.Duration

	// For ignoring a hardcoded spell.
	IgnoreSpellID int32
}

type StackingStatBonusCD

type StackingStatBonusCD struct {
	Name        string
	ID          int32
	AuraID      int32
	Bonus       stats.Stats
	Duration    time.Duration
	MaxStacks   int32
	CD          time.Duration
	Callback    core.AuraCallback
	ProcMask    core.ProcMask
	SpellFlags  core.SpellFlag
	Outcome     core.HitOutcome
	Harmful     bool
	ProcChance  float64
	IsDefensive bool

	// The stacks will only be granted as long as the trinket is active
	TrinketLimitsDuration bool
}

type StackingStatBonusEffect

type StackingStatBonusEffect struct {
	Name       string
	ID         int32
	AuraID     int32
	Bonus      stats.Stats
	Duration   time.Duration
	MaxStacks  int32
	Callback   core.AuraCallback
	ProcMask   core.ProcMask
	SpellFlags core.SpellFlag
	Outcome    core.HitOutcome
	Harmful    bool
	ProcChance float64
	Icd        time.Duration
}

type StatCDFactory

type StatCDFactory func(itemID int32, duration time.Duration, cooldown time.Duration)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL