AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
SmartAction Struct Reference

#include "SmartScriptMgr.h"

Public Attributes

SMART_ACTION type
 
union {
   struct {
      uint32   textGroupID
 
      uint32   duration
 
      SAIBool   useTalkTarget
 
   }   talk
 
   struct {
      uint32   textGroupID
 
      uint32   duration
 
   }   simpleTalk
 
   struct {
      uint32   factionID
 
   }   faction
 
   struct {
      uint32   creature
 
      uint32   model
 
   }   morphOrMount
 
   struct {
      uint32   sound
 
      SAIBool   onlySelf
 
      uint32   distance
 
   }   sound
 
   struct {
      uint32   sound1
 
      uint32   sound2
 
      uint32   sound3
 
      uint32   sound4
 
      SAIBool   onlySelf
 
      uint32   distance
 
   }   randomSound
 
   struct {
      uint32   sound
 
      uint32   onlySelf
 
      uint32   type
 
   }   music
 
   struct {
      uint32   sound1
 
      uint32   sound2
 
      uint32   sound3
 
      uint32   sound4
 
      uint32   onlySelf
 
      uint32   type
 
   }   randomMusic
 
   struct {
      uint32   emote
 
   }   emote
 
   struct {
      uint32   quest
 
   }   quest
 
   struct {
      uint32   questID
 
      SAIBool   directAdd
 
   }   questOffer
 
   struct {
      uint32   state
 
   }   react
 
   struct {
      std::array< uint32, SMART_ACTION_PARAM_COUNT >   emotes
 
   }   randomEmote
 
   struct {
      uint32   spell
 
      uint32   flags
 
      uint32   targetsLimit
 
   }   cast
 
   struct {
      uint32   spell
 
      uint32   flags
 
      uint32   targetType
 
      uint32   targetParam1
 
      uint32   targetParam2
 
      uint32   targetParam3
 
   }   crossCast
 
   struct {
      uint32   alternative
 
   }   activateObject
 
   struct {
      uint32   range
 
   }   combatZone
 
   struct {
      uint32   creature
 
      uint32   type
 
      uint32   duration
 
      SAIBool   attackInvoker
 
      uint32   attackScriptOwner
 
      uint32   flags
 
   }   summonCreature
 
   struct {
      uint32   threatINC
 
      uint32   threatDEC
 
   }   threatPCT
 
   struct {
      uint32   threatINC
 
      uint32   threatDEC
 
   }   threat
 
   struct {
      SAIBool   attack
 
   }   autoAttack
 
   struct {
      SAIBool   move
 
   }   combatMove
 
   struct {
      uint32   phase
 
   }   setEventPhase
 
   struct {
      uint32   inc
 
      uint32   dec
 
   }   incEventPhase
 
   struct {
      uint32   spell
 
   }   addAura
 
   struct {
      uint32   spell
 
      uint32   charges
 
   }   removeAura
 
   struct {
      uint32   dist
 
      uint32   angle
 
      uint32   entry
 
      uint32   credit
 
      uint32   creditType
 
      uint32   aliveState
 
   }   follow
 
   struct {
      std::array< uint32, SMART_ACTION_PARAM_COUNT >   phases
 
   }   randomPhase
 
   struct {
      uint32   phaseMin
 
      uint32   phaseMax
 
   }   randomPhaseRange
 
   struct {
      uint32   creature
 
   }   killedMonster
 
   struct {
      uint32   field
 
      uint32   data
 
      uint32   type
 
   }   setInstanceData
 
   struct {
      uint32   field
 
   }   setInstanceData64
 
   struct {
      uint32   creature
 
      SAIBool   updateLevel
 
   }   updateTemplate
 
   struct {
      uint32   range
 
      SAIBool   withEmote
 
   }   callHelp
 
   struct {
      uint32   sheath
 
   }   setSheath
 
   struct {
      uint32   delay
 
      uint32   forceRespawnTimer
 
   }   forceDespawn
 
   struct {
      uint32   minHP
 
      uint32   percent
 
   }   invincHP
 
   struct {
      uint32   mask
 
   }   ingamePhaseMask
 
   struct {
      uint32   field
 
      uint32   data
 
   }   setData
 
   struct {
      uint32   distance
 
   }   moveRandom
 
   struct {
      SAIBool   state
 
   }   visibility
 
   struct {
      uint32   state
 
   }   setActive
 
   struct {
      uint32   entry
 
      uint32   despawnTime
 
      uint32   targetsummon
 
      uint32   summonType
 
   }   summonGO
 
   struct {
      uint32   id
 
   }   taxi
 
   struct {
      SAIBool   run
 
      uint32   pathID
 
      SAIBool   repeat
 
      uint32   quest
 
      uint32   despawnTime
 
      uint32   reactState
 
   }   wpStart
 
   struct {
      uint32   delay
 
   }   wpPause
 
   struct {
      uint32   despawnTime
 
      uint32   quest
 
      SAIBool   fail
 
   }   wpStop
 
   struct {
      uint32   entry
 
      uint32   count
 
   }   item
 
   struct {
      uint32   id
 
      uint32   param1
 
      uint32   param2
 
      uint32   param3
 
      uint32   param4
 
      uint32   param5
 
   }   installTtemplate
 
   struct {
      SAIBool   run
 
   }   setRun
 
   struct {
      SAIBool   fly
 
      uint32   speed
 
      uint32   disableGravity
 
   }   setFly
 
   struct {
      SAIBool   swim
 
   }   setSwim
 
   struct {
      uint32   mapID
 
   }   teleport
 
   struct {
      uint32   counterId
 
      uint32   value
 
      SAIBool   reset
 
      uint32   subtract
 
   }   setCounter
 
   struct {
      uint32   id
 
   }   storeTargets
 
   struct {
      uint32   id
 
      uint32   min
 
      uint32   max
 
      uint32   repeatMin
 
      uint32   repeatMax
 
      uint32   chance
 
   }   timeEvent
 
   struct {
      uint32   entry
 
   }   movie
 
   struct {
      uint32   entry
 
      uint32   mask
 
      std::array< uint32, MAX_EQUIPMENT_ITEMS >   slots
 
   }   equip
 
   struct {
      uint32   flag
 
      uint32   type
 
   }   unitFlag
 
   struct {
      uint32   flag
 
   }   flag
 
   struct {
      uint32   byte1
 
      uint32   type
 
   }   setunitByte
 
   struct {
      uint32   byte1
 
      uint32   type
 
   }   delunitByte
 
   struct {
      uint32   id
 
      uint32   timerType
 
      SAIBool   allowOverride
 
   }   timedActionList
 
   struct {
      std::array< uint32, SMART_ACTION_PARAM_COUNT >   actionLists
 
   }   randTimedActionList
 
   struct {
      uint32   idMin
 
      uint32   idMax
 
   }   randRangeTimedActionList
 
   struct {
      SAIBool   withDelayed
 
      uint32   spell_id
 
      SAIBool   withInstant
 
   }   interruptSpellCasting
 
   struct {
      uint32   anim
 
   }   sendGoCustomAnim
 
   struct {
      uint32   speedxy
 
      uint32   speedz
 
      uint32   selfJump
 
   }   jump
 
   struct {
      uint32   flag
 
   }   movementFlag
 
   struct {
      uint32   withEmote
 
   }   flee
 
   struct {
      uint32   goRespawnTime
 
   }   RespawnTarget
 
   struct {
      uint32   pointId
 
      SAIBool   transport
 
      uint32   controlled
 
      uint32   ContactDistance
 
   }   moveToPos
 
   struct {
      uint32   gossipMenuId
 
      uint32   gossipNpcTextId
 
   }   sendGossipMenu
 
   struct {
      uint32   state
 
   }   setGoLootState
 
   struct {
      uint32   id
 
   }   sendTargetToTarget
 
   struct {
      uint32   distance
 
      uint32   angle
 
   }   setRangedMovement
 
   struct {
      SAIBool   regenHealth
 
   }   setHealthRegen
 
   struct {
      SAIBool   root
 
   }   setRoot
 
   struct {
      uint32   flag
 
   }   goFlag
 
   struct {
      uint32   state
 
   }   goState
 
   struct {
      uint32   group
 
      uint32   attackInvoker
 
      uint32   attackScriptOwner
 
   }   creatureGroup
 
   struct {
      uint32   powerType
 
      uint32   newPower
 
   }   power
 
   struct {
      uint32   id
 
   }   gameEventStop
 
   struct {
      uint32   id
 
   }   gameEventStart
 
   struct {
      std::array< uint32, SMART_ACTION_PARAM_COUNT >   wps
 
   }   closestWaypointFromList
 
   struct {
      uint32   dist
 
   }   combatDistance
 
   struct {
      uint32   dist
 
   }   sightDistance
 
   struct {
      uint32   dist
 
      uint32   reset
 
   }   casterDistance
 
   struct {
      uint32   spawnPos
 
   }   setHomePos
 
   struct {
      uint32   id
 
      SAIBool   force
 
   }   loadEquipment
 
   struct {
      uint32   minId
 
      uint32   maxId
 
   }   randomTimedEvent
 
   struct {
      uint32   state
 
   }   setHover
 
   struct {
      uint32   type
 
      uint32   id
 
      uint32   value
 
   }   immunity
 
   struct {
      uint32   quickChange
 
      uint32   random
 
   }   orientation
 
   struct {
      uint32   stopMovement
 
      uint32   movementExpired
 
   }   stopMotion
 
   struct {
      uint32   summonEntry
 
      uint32   summonDuration
 
      uint32   distanceBetweenRings
 
      uint32   distanceBetweenSummons
 
      uint32   coneLength
 
      uint32   coneAngle
 
   }   coneSummon
 
   struct {
      uint32   textId
 
      uint32   flag
 
   }   playerTalk
 
   struct {
      uint32   spell
 
      uint32   flags
 
      uint32   bp1
 
      uint32   bp2
 
      uint32   bp3
 
   }   castCustom
 
   struct {
      uint32   summonEntry
 
      uint32   summonDuration
 
      uint32   a
 
      uint32   k
 
      uint32   r_max
 
      uint32   phi_delta
 
   }   summonVortex
 
   struct {
      uint32   actionId
 
      uint32   isNegative
 
      uint32   instanceTarget
 
   }   doAction
 
   struct {
      SAIBool   disable
 
   }   disableEvade
 
   struct {
      uint32   timer
 
   }   corpseDelay
 
   struct {
      uint32   movementType
 
      uint32   speedInteger
 
      uint32   speedFraction
 
   }   movementSpeed
 
   struct {
      uint32   percent
 
   }   setHealthPct
 
   struct {
      uint32   entry
 
   }   cinematic
 
   struct {
      uint32   param1
 
      uint32   param2
 
      uint32   param3
 
      uint32   param4
 
      uint32   param5
 
      uint32   param6
 
   }   raw
 
}; 
 

Detailed Description

Member Data Documentation

◆ 

union { ... } SmartAction::@74

◆ a

uint32 SmartAction::a

◆ actionId

uint32 SmartAction::actionId

◆ actionLists

std::array<uint32, SMART_ACTION_PARAM_COUNT> SmartAction::actionLists

◆ 

struct { ... } SmartAction::activateObject

◆ 

struct { ... } SmartAction::addAura

◆ aliveState

uint32 SmartAction::aliveState

◆ allowOverride

SAIBool SmartAction::allowOverride

◆ alternative

uint32 SmartAction::alternative

◆ angle

uint32 SmartAction::angle

◆ anim

uint32 SmartAction::anim

◆ attack

SAIBool SmartAction::attack

◆ attackInvoker [1/2]

SAIBool SmartAction::attackInvoker

◆ attackInvoker [2/2]

uint32 SmartAction::attackInvoker

◆ attackScriptOwner

uint32 SmartAction::attackScriptOwner

◆ 

struct { ... } SmartAction::autoAttack

◆ bp1

uint32 SmartAction::bp1

◆ bp2

uint32 SmartAction::bp2

◆ bp3

uint32 SmartAction::bp3

◆ byte1

uint32 SmartAction::byte1

◆ 

struct { ... } SmartAction::callHelp

◆ 

◆ 

struct { ... } SmartAction::castCustom

◆ 

struct { ... } SmartAction::casterDistance

◆ chance

uint32 SmartAction::chance

◆ charges

uint32 SmartAction::charges

◆ 

struct { ... } SmartAction::cinematic

◆ 

struct { ... } SmartAction::closestWaypointFromList

◆ 

struct { ... } SmartAction::combatDistance

◆ 

struct { ... } SmartAction::combatMove

◆ 

struct { ... } SmartAction::combatZone

◆ coneAngle

uint32 SmartAction::coneAngle

◆ coneLength

uint32 SmartAction::coneLength

◆ 

struct { ... } SmartAction::coneSummon

◆ ContactDistance

uint32 SmartAction::ContactDistance

◆ controlled

uint32 SmartAction::controlled

◆ 

struct { ... } SmartAction::corpseDelay

◆ count

uint32 SmartAction::count

◆ counterId

uint32 SmartAction::counterId

◆ creature

uint32 SmartAction::creature

◆ 

struct { ... } SmartAction::creatureGroup

◆ credit

uint32 SmartAction::credit

◆ creditType

uint32 SmartAction::creditType

◆ 

struct { ... } SmartAction::crossCast

◆ data

uint32 SmartAction::data

◆ dec

uint32 SmartAction::dec

◆ delay

uint32 SmartAction::delay

◆ 

struct { ... } SmartAction::delunitByte

◆ despawnTime

uint32 SmartAction::despawnTime

◆ directAdd

SAIBool SmartAction::directAdd

◆ disable

SAIBool SmartAction::disable

◆ 

struct { ... } SmartAction::disableEvade

◆ disableGravity

uint32 SmartAction::disableGravity

◆ dist

uint32 SmartAction::dist

◆ distance

uint32 SmartAction::distance

◆ distanceBetweenRings

uint32 SmartAction::distanceBetweenRings

◆ distanceBetweenSummons

uint32 SmartAction::distanceBetweenSummons

◆ 

struct { ... } SmartAction::doAction

◆ duration

uint32 SmartAction::duration

◆ emote [1/2]

◆  [2/2]

struct { ... } SmartAction::emote

◆ emotes

std::array<uint32, SMART_ACTION_PARAM_COUNT> SmartAction::emotes

◆ entry

uint32 SmartAction::entry

◆ 

struct { ... } SmartAction::equip

◆ 

struct { ... } SmartAction::faction

◆ factionID

uint32 SmartAction::factionID

◆ fail

SAIBool SmartAction::fail

◆ field

uint32 SmartAction::field

◆ flag [1/2]

◆  [2/2]

struct { ... } SmartAction::flag

◆ flags

uint32 SmartAction::flags

◆ 

struct { ... } SmartAction::flee

◆ fly

SAIBool SmartAction::fly

◆ 

struct { ... } SmartAction::follow

◆ force

SAIBool SmartAction::force

◆ 

struct { ... } SmartAction::forceDespawn

◆ forceRespawnTimer

uint32 SmartAction::forceRespawnTimer

◆ 

struct { ... } SmartAction::gameEventStart

◆ 

struct { ... } SmartAction::gameEventStop

◆ 

struct { ... } SmartAction::goFlag

◆ goRespawnTime

uint32 SmartAction::goRespawnTime

◆ gossipMenuId

uint32 SmartAction::gossipMenuId

◆ gossipNpcTextId

uint32 SmartAction::gossipNpcTextId

◆ 

struct { ... } SmartAction::goState

◆ group

uint32 SmartAction::group

◆ id

◆ idMax

uint32 SmartAction::idMax

◆ idMin

uint32 SmartAction::idMin

◆ 

struct { ... } SmartAction::immunity

◆ inc

uint32 SmartAction::inc

◆ 

struct { ... } SmartAction::incEventPhase

◆ 

struct { ... } SmartAction::ingamePhaseMask

◆ 

struct { ... } SmartAction::installTtemplate

◆ instanceTarget

uint32 SmartAction::instanceTarget

◆ 

struct { ... } SmartAction::interruptSpellCasting

◆ 

struct { ... } SmartAction::invincHP

◆ isNegative

uint32 SmartAction::isNegative

◆ 

◆ 

struct { ... } SmartAction::jump

◆ k

uint32 SmartAction::k

◆ 

struct { ... } SmartAction::killedMonster

◆ 

struct { ... } SmartAction::loadEquipment

◆ mapID

uint32 SmartAction::mapID

◆ mask

uint32 SmartAction::mask

◆ max

uint32 SmartAction::max

◆ maxId

uint32 SmartAction::maxId

◆ min

uint32 SmartAction::min

◆ minHP

uint32 SmartAction::minHP

◆ minId

uint32 SmartAction::minId

◆ model

uint32 SmartAction::model

◆ 

struct { ... } SmartAction::morphOrMount

◆ move

SAIBool SmartAction::move

◆ movementExpired

uint32 SmartAction::movementExpired

◆ 

struct { ... } SmartAction::movementFlag

◆ 

struct { ... } SmartAction::movementSpeed

◆ movementType

uint32 SmartAction::movementType

◆ 

struct { ... } SmartAction::moveRandom

◆ 

struct { ... } SmartAction::moveToPos

◆ 

struct { ... } SmartAction::movie

◆ 

◆ newPower

uint32 SmartAction::newPower

◆ onlySelf [1/2]

SAIBool SmartAction::onlySelf

◆ onlySelf [2/2]

uint32 SmartAction::onlySelf

◆ 

struct { ... } SmartAction::orientation

◆ param1

◆ param2

◆ param3

◆ param4

◆ param5

◆ param6

◆ pathID

uint32 SmartAction::pathID

◆ percent

uint32 SmartAction::percent

◆ phase

uint32 SmartAction::phase

◆ phaseMax

uint32 SmartAction::phaseMax

◆ phaseMin

uint32 SmartAction::phaseMin

◆ phases

std::array<uint32, SMART_ACTION_PARAM_COUNT> SmartAction::phases

◆ phi_delta

uint32 SmartAction::phi_delta

◆ 

struct { ... } SmartAction::playerTalk

◆ pointId

uint32 SmartAction::pointId

◆ 

struct { ... } SmartAction::power

◆ powerType

uint32 SmartAction::powerType

◆ quest [1/2]

◆  [2/2]

struct { ... } SmartAction::quest

◆ questID

uint32 SmartAction::questID

◆ 

struct { ... } SmartAction::questOffer

◆ quickChange

uint32 SmartAction::quickChange

◆ r_max

uint32 SmartAction::r_max

◆ random

uint32 SmartAction::random

◆ 

struct { ... } SmartAction::randomEmote

◆ 

struct { ... } SmartAction::randomMusic

◆ 

struct { ... } SmartAction::randomPhase

◆ 

struct { ... } SmartAction::randomPhaseRange

◆ 

struct { ... } SmartAction::randomSound

◆ 

struct { ... } SmartAction::randomTimedEvent

◆ 

struct { ... } SmartAction::randRangeTimedActionList

◆ 

struct { ... } SmartAction::randTimedActionList

◆ range

uint32 SmartAction::range

◆ 

struct { ... } SmartAction::raw

Note for any new future actions All parameters must have type uint32

Referenced by SmartAIMgr::CheckUnusedActionParams(), SmartScript::CreateSmartEvent(), and SmartAIMgr::LoadSmartAIFromDB().

◆ 

◆ reactState

uint32 SmartAction::reactState

◆ regenHealth

SAIBool SmartAction::regenHealth

◆ 

struct { ... } SmartAction::removeAura

◆ repeat

SAIBool SmartAction::repeat

◆ repeatMax

uint32 SmartAction::repeatMax

◆ repeatMin

uint32 SmartAction::repeatMin

◆ reset [1/2]

SAIBool SmartAction::reset

◆ reset [2/2]

uint32 SmartAction::reset

◆ 

struct { ... } SmartAction::RespawnTarget

◆ root

SAIBool SmartAction::root

◆ run

SAIBool SmartAction::run

◆ selfJump

uint32 SmartAction::selfJump

◆ 

struct { ... } SmartAction::sendGoCustomAnim

◆ 

struct { ... } SmartAction::sendGossipMenu

◆ 

struct { ... } SmartAction::sendTargetToTarget

◆ 

struct { ... } SmartAction::setActive

◆ 

struct { ... } SmartAction::setCounter

◆ 

struct { ... } SmartAction::setData

◆ 

struct { ... } SmartAction::setEventPhase

◆ 

◆ 

struct { ... } SmartAction::setGoLootState

◆ 

struct { ... } SmartAction::setHealthPct

◆ 

struct { ... } SmartAction::setHealthRegen

◆ 

struct { ... } SmartAction::setHomePos

◆ 

struct { ... } SmartAction::setHover

◆ 

struct { ... } SmartAction::setInstanceData

◆ 

struct { ... } SmartAction::setInstanceData64

◆ 

struct { ... } SmartAction::setRangedMovement

◆ 

struct { ... } SmartAction::setRoot

◆ 

◆ 

struct { ... } SmartAction::setSheath

◆ 

struct { ... } SmartAction::setSwim

◆ 

struct { ... } SmartAction::setunitByte

◆ sheath

uint32 SmartAction::sheath

◆ 

struct { ... } SmartAction::sightDistance

◆ 

struct { ... } SmartAction::simpleTalk

◆ slots

std::array<uint32, MAX_EQUIPMENT_ITEMS> SmartAction::slots

◆ sound [1/2]

◆  [2/2]

struct { ... } SmartAction::sound

◆ sound1

uint32 SmartAction::sound1

◆ sound2

uint32 SmartAction::sound2

◆ sound3

uint32 SmartAction::sound3

◆ sound4

uint32 SmartAction::sound4

◆ spawnPos

uint32 SmartAction::spawnPos

◆ speed

uint32 SmartAction::speed

◆ speedFraction

uint32 SmartAction::speedFraction

◆ speedInteger

uint32 SmartAction::speedInteger

◆ speedxy

uint32 SmartAction::speedxy

◆ speedz

uint32 SmartAction::speedz

◆ spell

uint32 SmartAction::spell

◆ spell_id

uint32 SmartAction::spell_id

◆ state [1/2]

uint32 SmartAction::state

◆ state [2/2]

SAIBool SmartAction::state

◆ 

struct { ... } SmartAction::stopMotion

◆ stopMovement

uint32 SmartAction::stopMovement

◆ 

struct { ... } SmartAction::storeTargets

◆ subtract

uint32 SmartAction::subtract

◆ 

struct { ... } SmartAction::summonCreature

◆ summonDuration

uint32 SmartAction::summonDuration

◆ summonEntry

uint32 SmartAction::summonEntry

◆ 

struct { ... } SmartAction::summonGO

◆ summonType

uint32 SmartAction::summonType

◆ 

struct { ... } SmartAction::summonVortex

◆ swim

SAIBool SmartAction::swim

◆ 

◆ targetParam1

uint32 SmartAction::targetParam1

◆ targetParam2

uint32 SmartAction::targetParam2

◆ targetParam3

uint32 SmartAction::targetParam3

◆ targetsLimit

uint32 SmartAction::targetsLimit

◆ targetsummon

uint32 SmartAction::targetsummon

◆ targetType

uint32 SmartAction::targetType

◆ 

struct { ... } SmartAction::taxi

◆ 

struct { ... } SmartAction::teleport

◆ textGroupID

uint32 SmartAction::textGroupID

◆ textId

uint32 SmartAction::textId

◆ 

struct { ... } SmartAction::threat

◆ threatDEC

uint32 SmartAction::threatDEC

◆ threatINC

uint32 SmartAction::threatINC

◆ 

struct { ... } SmartAction::threatPCT

◆ 

struct { ... } SmartAction::timedActionList

◆ 

struct { ... } SmartAction::timeEvent

◆ timer

uint32 SmartAction::timer

◆ timerType

uint32 SmartAction::timerType

Referenced by SmartScript::SetScript9().

◆ transport

SAIBool SmartAction::transport

◆ type [1/2]

◆ type [2/2]

uint32 SmartAction::type

◆ 

struct { ... } SmartAction::unitFlag

◆ updateLevel

SAIBool SmartAction::updateLevel

◆ 

struct { ... } SmartAction::updateTemplate

◆ useTalkTarget

SAIBool SmartAction::useTalkTarget

◆ value

uint32 SmartAction::value

◆ 

struct { ... } SmartAction::visibility

◆ withDelayed

SAIBool SmartAction::withDelayed

◆ withEmote [1/2]

SAIBool SmartAction::withEmote

◆ withEmote [2/2]

uint32 SmartAction::withEmote

◆ withInstant

SAIBool SmartAction::withInstant

◆ 

struct { ... } SmartAction::wpPause

◆ wps

std::array<uint32, SMART_ACTION_PARAM_COUNT> SmartAction::wps

◆ 

struct { ... } SmartAction::wpStart

◆