140 lines
4.3 KiB
Go
140 lines
4.3 KiB
Go
package spells
|
|
|
|
// Spell target types
|
|
const (
|
|
SpellTargetSelf = 0
|
|
SpellTargetEnemy = 1
|
|
SpellTargetGroupAE = 2
|
|
SpellTargetCasterPet = 3
|
|
SpellTargetEnemyPet = 4
|
|
SpellTargetEnemyCorpse = 5
|
|
SpellTargetGroupCorpse = 6
|
|
SpellTargetNone = 7
|
|
SpellTargetRaidAE = 8
|
|
SpellTargetOtherGroupAE = 9
|
|
)
|
|
|
|
// Spell book types
|
|
const (
|
|
SpellBookTypeSpell = 0
|
|
SpellBookTypeCombatArt = 1
|
|
SpellBookTypeAbility = 2
|
|
SpellBookTypeTradeskill = 3
|
|
SpellBookTypeNotShown = 4
|
|
)
|
|
|
|
// Spell cast types
|
|
const (
|
|
SpellCastTypeNormal = 0
|
|
SpellCastTypeToggle = 1
|
|
)
|
|
|
|
// Spell error codes
|
|
const (
|
|
SpellErrorNotEnoughKnowledge = 1
|
|
SpellErrorInterrupted = 2
|
|
SpellErrorTakeEffectMorePowerful = 3
|
|
SpellErrorTakeEffectSameSpell = 4
|
|
SpellErrorCannotCastDead = 5
|
|
SpellErrorNotAlive = 6
|
|
SpellErrorNotDead = 7
|
|
SpellErrorCannotCastSitting = 8
|
|
SpellErrorCannotCastUncon = 9
|
|
SpellErrorAlreadyCasting = 10
|
|
SpellErrorRecovering = 11
|
|
SpellErrorNonCombatOnly = 12
|
|
SpellErrorCannotCastStunned = 13
|
|
SpellErrorCannotCastStiffled = 14
|
|
SpellErrorCannotCastCharmed = 15
|
|
SpellErrorNotWhileMounted = 16
|
|
SpellErrorNotWhileFlying = 17
|
|
SpellErrorNotWhileClimbing = 18
|
|
SpellErrorNotReady = 19
|
|
SpellErrorCantSeeTarget = 20
|
|
SpellErrorIncorrectStance = 21
|
|
SpellErrorCannotCastFeignDeath = 22
|
|
SpellErrorInventoryFull = 23
|
|
SpellErrorNotEnoughCoin = 24
|
|
SpellErrorNotAllowedHere = 25
|
|
SpellErrorNotWhileCrafting = 26
|
|
SpellErrorOnlyWhenCrafting = 27
|
|
SpellErrorItemNotAttuned = 28
|
|
SpellErrorItemWornOut = 29
|
|
SpellErrorMustEquipWeapon = 30
|
|
SpellErrorWeaponBroken = 31
|
|
SpellErrorCannotCastFeared = 32
|
|
SpellErrorTargetImmuneHostile = 33
|
|
SpellErrorTargetImmuneBeneficial = 34
|
|
SpellErrorNoTauntSpells = 35
|
|
SpellErrorCannotUseInBattlegrounds = 36
|
|
SpellErrorCannotPrepare = 37
|
|
SpellErrorNoEligibleTarget = 38
|
|
SpellErrorNoTargetsInRange = 39
|
|
SpellErrorTooClose = 40
|
|
SpellErrorTooFarAway = 41
|
|
SpellErrorTargetTooWeak = 42
|
|
SpellErrorTargetTooPowerful = 43
|
|
SpellErrorTargetNotPlayer = 44
|
|
SpellErrorTargetNotNPC = 45
|
|
SpellErrorTargetNotOwner = 46
|
|
SpellErrorTargetNotGrouped = 47
|
|
SpellErrorCannotCastInCombat = 48
|
|
SpellErrorCannotCastOutOfCombat = 49
|
|
SpellErrorTargetNotCorrectType = 50
|
|
SpellErrorTargetNotCorrectClass = 51
|
|
SpellErrorTargetNotCorrectRace = 52
|
|
SpellErrorNoCaster = 53
|
|
SpellErrorCannotCastOnCorpse = 54
|
|
SpellErrorCannotCastOnGuild = 55
|
|
SpellErrorCannotCastOnRaid = 56
|
|
SpellErrorCannotCastOnGroup = 57
|
|
SpellErrorCannotCastOnSelf = 58
|
|
SpellErrorTargetNotInGroup = 59
|
|
SpellErrorTargetNotInRaid = 60
|
|
SpellErrorCannotCastThatOnYourself = 61
|
|
SpellErrorAbilityUnavailable = 62
|
|
SpellErrorCannotPrepareWhileCasting = 63
|
|
SpellErrorNoPowerRegaining = 64
|
|
)
|
|
|
|
// Control effect types (moved from entity package)
|
|
const (
|
|
ControlEffectStun = iota
|
|
ControlEffectRoot
|
|
ControlEffectMez
|
|
ControlEffectDaze
|
|
ControlEffectFear
|
|
ControlEffectSlow
|
|
ControlEffectSnare
|
|
ControlEffectCharm
|
|
)
|
|
|
|
const (
|
|
ControlMaxEffects = 8 // Maximum number of control effect types
|
|
)
|
|
|
|
// GivenByType represents how a spell was acquired
|
|
type GivenByType int8
|
|
|
|
const (
|
|
GivenByUnset GivenByType = 0
|
|
GivenByTradeskillClass GivenByType = 1
|
|
GivenBySpellScroll GivenByType = 2
|
|
GivenByAltAdvancement GivenByType = 3
|
|
GivenByRace GivenByType = 4
|
|
GivenByRacialInnate GivenByType = 5
|
|
GivenByRacialTradition GivenByType = 6
|
|
GivenByClass GivenByType = 7
|
|
GivenByCharacterTrait GivenByType = 8
|
|
GivenByFocusAbility GivenByType = 9
|
|
GivenByClassTraining GivenByType = 10
|
|
GivenByWarderSpell GivenByType = 11
|
|
)
|
|
|
|
// Spell component types for LUA data
|
|
const (
|
|
SpellLUADataTypeInt = 0
|
|
SpellLUADataTypeFloat = 1
|
|
SpellLUADataTypeBool = 2
|
|
SpellLUADataTypeString = 3
|
|
) |