elemental

package
v0.1.44 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterElementalShaman

func RegisterElementalShaman()

Types

type AdaptiveRotation

type AdaptiveRotation struct {
	// contains filtered or unexported fields
}

################################################################

ADAPTIVE

################################################################

func NewAdaptiveRotation

func NewAdaptiveRotation(options *proto.ElementalShaman_Rotation) *AdaptiveRotation

func (*AdaptiveRotation) DoAction

func (rotation *AdaptiveRotation) DoAction(eleShaman *ElementalShaman, sim *core.Simulation)

func (*AdaptiveRotation) Reset

func (rotation *AdaptiveRotation) Reset(eleShaman *ElementalShaman, sim *core.Simulation)

type AgentAction

type AgentAction interface {
	GetActionID() core.ActionID

	// TODO: Maybe change this to 'ResourceCost'
	// Amount of mana required to perform the action.
	GetManaCost() float64

	// Do the action. Returns whether the action was successful. An unsuccessful
	// action indicates that the prerequisites, like resource cost, were not met.
	Cast(sim *core.Simulation) bool
}

A single action that an Agent can take.

type ElementalShaman

type ElementalShaman struct {
	*shaman.Shaman
	// contains filtered or unexported fields
}

func NewElementalShaman

func NewElementalShaman(character core.Character, options *proto.Player) *ElementalShaman

func (*ElementalShaman) GetShaman

func (eleShaman *ElementalShaman) GetShaman() *shaman.Shaman

func (*ElementalShaman) OnGCDReady

func (eleShaman *ElementalShaman) OnGCDReady(sim *core.Simulation)

func (*ElementalShaman) Reset

func (eleShaman *ElementalShaman) Reset(sim *core.Simulation)

type ManualRotation

type ManualRotation struct {
	// contains filtered or unexported fields
}

################################################################

MANUAL

################################################################

func NewManualRotation

func NewManualRotation(options *proto.ElementalShaman_Rotation) *ManualRotation

func (*ManualRotation) DoAction

func (rotation *ManualRotation) DoAction(eleShaman *ElementalShaman, sim *core.Simulation)

func (*ManualRotation) Reset

func (rotation *ManualRotation) Reset(eleShaman *ElementalShaman, sim *core.Simulation)

type Rotation

type Rotation interface {

	// Returns the action this rotation would like to take next.
	DoAction(*ElementalShaman, *core.Simulation)

	// Returns this rotation to its initial state. Called before each Sim iteration.
	Reset(*ElementalShaman, *core.Simulation)
}

Picks which attacks / abilities the Shaman does.

Jump to

Keyboard shortcuts

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