shadow

package
v0.1.8 Latest Latest
Warning

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

Go to latest
Published: Dec 23, 2022 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var P1Gear = core.EquipmentSpecFromJsonString(`{"items": [
	{
		"id": 40562,
		"enchant": 3820,
		"gems": [
			41285,
			39998
		]
	},
	{
		"id": 44661,
		"gems": [
			40026
		]
	},
	{
		"id": 40459,
		"enchant": 3810,
		"gems": [
			39998
		]
	},
	{
		"id": 44005,
		"enchant": 3722,
		"gems": [
			40026
		]
	},
	{
		"id": 44002,
		"enchant": 1144,
		"gems": [
			39998,
			39998
		]
	},
	{
		"id": 44008,
		"enchant": 2332,
		"gems": [
			39998,
			0
		]
	},
	{
		"id": 40454,
		"enchant": 3604,
		"gems": [
			40049,
			0
		]
	},
	{
		"id": 40561,
		"gems": [
			39998
		]
	},
	{
		"id": 40560,
		"enchant": 3719
	},
	{
		"id": 40558,
		"enchant": 3606
	},
	{
		"id": 40719
	},
	{
		"id": 40399
	},
	{
		"id": 40255
	},
	{
		"id": 40432
	},
	{
		"id": 40395,
		"enchant": 3834
	},
	{
		"id": 40273
	},
	{
		"id": 39712
	}
]}`)
View Source
var PlayerOptionsBasic = &proto.Player_ShadowPriest{
	ShadowPriest: &proto.ShadowPriest{
		Talents: StandardTalents,
		Options: &proto.ShadowPriest_Options{
			Armor:              proto.ShadowPriest_Options_InnerFire,
			UseShadowfiend:     true,
			UseMindBlast:       true,
			UseShadowWordDeath: true,
		},
		Rotation: &proto.ShadowPriest_Rotation{
			RotationType: proto.ShadowPriest_Rotation_Basic,
			Latency:      50,
		},
	},
}
View Source
var PlayerOptionsClipping = &proto.Player_ShadowPriest{
	ShadowPriest: &proto.ShadowPriest{
		Talents: StandardTalents,
		Options: &proto.ShadowPriest_Options{
			Armor:              proto.ShadowPriest_Options_InnerFire,
			UseShadowfiend:     true,
			UseMindBlast:       true,
			UseShadowWordDeath: true,
		},
		Rotation: &proto.ShadowPriest_Rotation{
			RotationType: proto.ShadowPriest_Rotation_Clipping,
			PrecastVt:    true,
			Latency:      50,
		},
	},
}
View Source
var PlayerOptionsIdeal = &proto.Player_ShadowPriest{
	ShadowPriest: &proto.ShadowPriest{
		Talents: StandardTalents,
		Options: &proto.ShadowPriest_Options{
			Armor:              proto.ShadowPriest_Options_InnerFire,
			UseShadowfiend:     true,
			UseMindBlast:       true,
			UseShadowWordDeath: true,
		},
		Rotation: &proto.ShadowPriest_Rotation{
			RotationType: proto.ShadowPriest_Rotation_Ideal,
			PrecastVt:    true,
			Latency:      50,
		},
	},
}
View Source
var StandardTalents = &proto.PriestTalents{
	TwinDisciplines:            5,
	ImprovedInnerFire:          3,
	ImprovedPowerWordFortitude: 2,
	Meditation:                 3,
	InnerFocus:                 true,

	SpiritTap:               3,
	ImprovedSpiritTap:       2,
	Darkness:                5,
	ImprovedShadowWordPain:  2,
	ShadowFocus:             3,
	ImprovedMindBlast:       5,
	MindFlay:                true,
	VeiledShadows:           2,
	ShadowReach:             2,
	ShadowWeaving:           3,
	VampiricEmbrace:         true,
	FocusedMind:             3,
	MindMelt:                2,
	ImprovedDevouringPlague: 3,
	Shadowform:              true,
	ShadowPower:             5,
	ImprovedShadowform:      1,
	Misery:                  3,
	VampiricTouch:           true,
	PainAndSuffering:        3,
	TwistedFaith:            5,
	Dispersion:              true,
}

Functions

func RegisterShadowPriest

func RegisterShadowPriest()

Types

type ShadowPriest

type ShadowPriest struct {
	PrevTicks float64

	DPstatH  float64
	DPstatpH float64
	DPstatSp float64

	VTstatH  float64
	VTstatpH float64
	VTstatSp float64

	*priest.Priest
	// contains filtered or unexported fields
}

func NewShadowPriest

func NewShadowPriest(character core.Character, options *proto.Player) *ShadowPriest

func (*ShadowPriest) BasicMindflayRotation

func (spriest *ShadowPriest) BasicMindflayRotation(sim *core.Simulation, allCDs []time.Duration, gcd time.Duration, tickLength time.Duration) int

Returns the number of MF ticks to use, or 0 to wait for next CD.

func (*ShadowPriest) ClippingMindflayRotation

func (spriest *ShadowPriest) ClippingMindflayRotation(sim *core.Simulation, allCDs []time.Duration, gcd time.Duration, tickLength time.Duration) int

func (*ShadowPriest) GetPriest

func (spriest *ShadowPriest) GetPriest() *priest.Priest

func (*ShadowPriest) IdealMindflayRotation

func (spriest *ShadowPriest) IdealMindflayRotation(sim *core.Simulation, allCDs []time.Duration, gcd time.Duration, tickLength time.Duration,
	currentWait time.Duration, mfDamage, mbDamage, dpDamage, vtDamage, swdDamage, overwriteDPS float64) int

Returns the number of MF ticks to use, or 0 to wait for next CD.

func (*ShadowPriest) OnGCDReady

func (spriest *ShadowPriest) OnGCDReady(sim *core.Simulation)

func (*ShadowPriest) OnManaTick

func (spriest *ShadowPriest) OnManaTick(sim *core.Simulation)

func (*ShadowPriest) Reset

func (spriest *ShadowPriest) Reset(sim *core.Simulation)

Jump to

Keyboard shortcuts

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