diff options
Diffstat (limited to 'docs/smart_scripts.md')
| -rw-r--r-- | docs/smart_scripts.md | 4640 |
1 files changed, 4640 insertions, 0 deletions
diff --git a/docs/smart_scripts.md b/docs/smart_scripts.md new file mode 100644 index 0000000..10b0fb8 --- /dev/null +++ b/docs/smart_scripts.md @@ -0,0 +1,4640 @@ +# smart\_scripts + +[<-Back-to:World](database-world.md) + +**Table Structure** + +<table height="400"> +<tbody> +<tr class="odd"> +<td><p><strong>Field</strong></p></td> +<td><p><strong>Type</strong></p></td> +<td><p><strong>Attributes</strong></p></td> +<td><p><strong>Key</strong></p></td> +<td><p><strong>Null</strong></p></td> +<td><p><strong>Default</strong></p></td> +<td><p><strong>Extra</strong></p></td> +<td><p><strong>Comment</strong></p></td> +</tr> +<tr class="even"> +<td><p><a href="#entryorguid">entryorguid</a></p></td> +<td><p>int(11)</p></td> +<td><p>signed</p></td> +<td><p>PRI</p></td> +<td><p>NO</p></td> +<td><p>NULL</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#source_type">source_type</a></p></td> +<td><p>tinyint(3)</p></td> +<td><p>unsigned</p></td> +<td><p>PRI</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#id">id</a></p></td> +<td><p>smallint(5)</p></td> +<td><p>unsigned</p></td> +<td><p>PRI</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#link">link</a></p></td> +<td><p>smallint(5)</p></td> +<td><p>unsigned</p></td> +<td><p>PRI</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#event_type">event_type</a></p></td> +<td><p>tinyint(3)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#event_phase_mask">event_phase_mask</a></p></td> +<td><p>smallint(5)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#event_chance">event_chance</a></p></td> +<td><p>tinyint(3)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>100</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#event_flags">event_flags</a></p></td> +<td><p>smallint(5)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#event_type">event_param1</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#event_type">event_param2</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#event_type">event_param3</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#event_type">event_param4</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#event_type">event_param5</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#action_type">action_type</a></p></td> +<td><p>tinyint(3)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#action_type">action_param1</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#action_type">action_param2</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#action_type">action_param3</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#action_type">action_param4</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#action_type">action_param5</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#action_type">action_param6</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#target_type">target_type</a></p></td> +<td><p>tinyint(3)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#target_type">target_param1</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#target_type">target_param2</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#target_type">target_param3</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#target_type">target_param4</a></p></td> +<td><p>int(10)</p></td> +<td><p>unsigned</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#target_type">target_x</a></p></td> +<td><p>float</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#target_type">target_y</a></p></td> +<td><p>float</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#target_type">target_z</a></p></td> +<td><p>float</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p><a href="#target_type">target_o</a></p></td> +<td><p>float</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>0</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p><a href="#comment">comment</a></p></td> +<td><p>text</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p>NO</p></td> +<td><p>NULL</p></td> +<td><p><br /> +</p></td> +<td><p>Event Comment</p></td> +</tr> +</tbody> +</table> + +**Description of the fields** + +### entryorguid + +- EntryOrGuid > 0: entry of the creature / game object / etc. + +<!-- --> + +- EntryOrGuid < 0: guid of the creature / game object / etc. + +<!-- --> + +- Depends on source\_type. + +### source\_type + +- Object type: creature, game object, spell. see table below for values + + | Name | Value | + |---------------------------------------------------------------------|-------| + | SMART\_SCRIPT\_TYPE\_CREATURE | 0 | + | SMART\_SCRIPT\_TYPE\_GAMEOBJECT | 1 | + | SMART\_SCRIPT\_TYPE\_AREATRIGGER | 2 | + | SMART\_SCRIPT\_TYPE\_TIMED\_ACTIONLIST | 9 | + +### id + +- Incremental id *bound* to each entryorguid & source\_type (0, 1, 2, ...). + +### link + +- Simple event linking; + +<!-- --> + +- Example: if id = 0 and link = 1; id 1 will only be able to occur if id = 0 was triggered (id 1 has to use event\_type SMART\_EVENT\_LINK). + +<!-- --> + +- Smart\_event to be used. + +### event\_phase\_mask + +When dealing with phases, *phase IDs* have to be used. There are 13 (12+1) different phases: 1, 2, ... 12 and the default 0. + +**Example:** The script is in phase 0 by default - If we want it to go to phase 1, we got two choices: + +- SMART\_ACTION\_INC\_PHASE by 1 or SMART\_ACTION\_SET\_PHASE 1 + +If the script is in phase 0 and want to skip to phase 2: + +- SMART\_ACTION\_INC\_PHASE by 2 or SMART\_ACTION\_SET\_PHASE 2 + +If the script is in phase 1 and want to skip to phase 2: + +- SMART\_ACTION\_INC\_PHASE by 1 or SMART\_ACTION\_SET\_PHASE 2 + +| Name | Flag | Hex | Comment | +|----------------------------------|------|-------|-----------------------------| +| SMART\_EVENT\_PHASE\_ALWAYS\_BIT | 0 | 0x000 | Means all phases (1 ... 12) | +| SMART\_EVENT\_PHASE\_1 | 1 | 0x001 | Phase 1 only. | +| SMART\_EVENT\_PHASE\_2 | 2 | 0x002 | Phase 2 only. | +| SMART\_EVENT\_PHASE\_3 | 4 | 0x004 | Phase 3 only. | +| SMART\_EVENT\_PHASE\_4 | 8 | 0x008 | Phase 4 only. | +| SMART\_EVENT\_PHASE\_5 | 16 | 0x010 | Phase 5 only. | +| SMART\_EVENT\_PHASE\_6 | 32 | 0x020 | Phase 6 only. | +| SMART\_EVENT\_PHASE\_7 | 64 | 0x040 | Phase 7 only. | +| SMART\_EVENT\_PHASE\_8 | 128 | 0x080 | Phase 8 only. | +| SMART\_EVENT\_PHASE\_9 | 256 | 0x100 | Phase 9 only. | +| SMART\_EVENT\_PHASE\_10 | 512 | 0x200 | Phase 10 only. | +| SMART\_EVENT\_PHASE\_11 | 1024 | 0x400 | Phase 11 only. | +| SMART\_EVENT\_PHASE\_12 | 2048 | 0x800 | Phase 12 only. | + +- Event will only be able to occur if creature/GO is in this phase. + +<!-- --> + +- Example: If we want an event to only be able to occure in phase 1 and 4, **event\_phase\_mask** = 1+8 = 9 + +### event\_chance + +This is the probability of the event to occur as a percentage from 0-100. So, if you want the event to occur roughly half of the time, then set this to 50. + +### event\_flags + +<table> +<thead> +<tr class="header"> +<th><strong>Name</strong></th> +<th>Flag</th> +<th>Hex</th> +<th>Comment</th> +</tr> +</thead> +<tbody> +<tr class="odd"> +<td><p>SMART_EVENT_FLAG_NOT_REPEATABLE</p></td> +<td><p>1</p></td> +<td><p>0x01</p></td> +<td><p>Event can not repeat</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_FLAG_DIFFICULTY_0</p></td> +<td><p>2</p></td> +<td><p>0x02</p></td> +<td><p>Event only occurs in normal dungeon</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_FLAG_DIFFICULTY_1</p></td> +<td><p>4</p></td> +<td><p>0x04</p></td> +<td><p>Event only occurs in heroic dungeon</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_FLAG_DIFFICULTY_2</p></td> +<td><p>8</p></td> +<td><p>0x08</p></td> +<td><p>Event only occurs in normal raid</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_FLAG_DIFFICULTY_3</p></td> +<td><p>16</p></td> +<td><p>0x10</p></td> +<td><p>Event only occurs in heroic raid</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_FLAG_RESERVED_5</p></td> +<td><p>32</p></td> +<td><p>0x20</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_FLAG_RESERVED_6</p></td> +<td><p>64</p></td> +<td><p>0x40</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_FLAG_DEBUG_ONLY</p></td> +<td><p>128</p></td> +<td><p>0x80</p></td> +<td><p>Event only occurs in debug build</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_FLAG_DONT_RESET</p></td> +<td><p>256</p></td> +<td><p>0x100</p></td> +<td><p>Event will not reset in SmartScript::OnReset()</p></td> +</tr> +</tbody> +</table> + +- Sets if the event should not repeat or should only happen in a given instance/dungeon difficulty (if applicable); + +<!-- --> + +- Values can be added together (bitwise math). + +### event\_type + +<table height="400"> +<thead> +<tr class="header"> +<th><p>Name</p></th> +<th><p>Value</p></th> +<th><p>Param1</p></th> +<th><p>Param2</p></th> +<th><p>Param3</p></th> +<th><p>Param4</p></th> +<th><p>Param5</p></th> +<th>Comment</th> +</tr> +</thead> +<tbody> +<tr class="odd"> +<td><p>SMART_EVENT_UPDATE_IC</p></td> +<td><p>0</p></td> +<td><p>InitialMin</p></td> +<td><p>InitialMax</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td><p>In combat.</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_UPDATE_OOC</p></td> +<td><p>1</p></td> +<td><p>InitialMin</p></td> +<td><p>InitialMax</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>Out of combat.</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_HEALTH_PCT</p></td> +<td><p>2</p></td> +<td><p>HPMin%</p></td> +<td><p>HPMax%</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td><p>Health Percentage</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_MANA_PCT</p></td> +<td><p>3</p></td> +<td><p>ManaMin%</p></td> +<td><p>ManaMax%</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td><p>Mana Percentage</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_AGGRO</p></td> +<td><p>4</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature Aggro</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_KILL</p></td> +<td><p>5</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td><p>Player only (0/1)</p></td> +<td><p>Creature entry (if param3 is 0)</p></td> +<td><p><br /> +</p></td> +<td>On Creature Kill</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_DEATH</p></td> +<td><p>6</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature Death</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_EVADE</p></td> +<td><p>7</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature Evade Attack</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_SPELLHIT</p></td> +<td><p>8</p></td> +<td><p>SpellID</p></td> +<td><p>School</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td><p><br /> +</p></td> +<td>On Creature/Gameobject Spell Hit</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_RANGE</p></td> +<td><p>9</p></td> +<td><p>MinDist</p></td> +<td><p>MaxDist</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Target In Range</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_OOC_LOS</p></td> +<td><p>10</p></td> +<td><p>NoHostile</p></td> +<td><p>MaxRange</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td>0/1 Player Only</td> +<td>On Target In Distance Out of Combat</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_RESPAWN</p></td> +<td><p>11</p></td> +<td><p>type (None = 0, Map = 1, Area = 2)</p></td> +<td><p>MapId</p></td> +<td><p>ZoneId</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature/Gameobject Respawn</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_TARGET_HEALTH_PCT</p></td> +<td><p>12</p></td> +<td><p>HPMin%</p></td> +<td><p>HPMax%</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Target Health Percentage</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_VICTIM_CASTING</p></td> +<td><p>13</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p>Spell id (0 any)</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Target Casting Spell</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_FRIENDLY_HEALTH</p></td> +<td><p>14</p></td> +<td><p>HPDeficit</p></td> +<td><p>Radius</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Friendly Health Deficit</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_FRIENDLY_IS_CC</p></td> +<td><p>15</p></td> +<td><p>Radius</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_FRIENDLY_MISSING_BUFF</p></td> +<td><p>16</p></td> +<td><p>SpellId</p></td> +<td><p>Radius</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Friendly Lost Buff</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_SUMMONED_UNIT</p></td> +<td><p>17</p></td> +<td><p>CretureId (0 all)</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature/Gameobject Summoned Unit</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_TARGET_MANA_PCT</p></td> +<td><p>18</p></td> +<td><p>ManaMin%</p></td> +<td><p>ManaMax%</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Target Mana Percentage</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_ACCEPTED_QUEST</p></td> +<td><p>19</p></td> +<td><p>QuestID (0 any)</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Target Accepted Quest</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_REWARD_QUEST</p></td> +<td><p>20</p></td> +<td><p>QuestID (0 any)</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Target Rewarded Quest</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_REACHED_HOME</p></td> +<td><p>21</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature Reached Home</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_RECEIVE_EMOTE</p></td> +<td><p>22</p></td> +<td><p><a href="Emotes">EmoteId</a></p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td><p></p></td> +<td><p><br /> +</p></td> +<td>On Receive Emote.</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_HAS_AURA</p></td> +<td><p>23</p></td> +<td><p>SpellID</p></td> +<td><p>Stacks</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Creature Has Aura</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_TARGET_BUFFED</p></td> +<td><p>24</p></td> +<td><p>SpellID</p></td> +<td><p>Stacks</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Target Buffed With Spell</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_RESET</p></td> +<td><p>25</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>After Combat, On Respawn or Spawn</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_IC_LOS</p></td> +<td><p>26</p></td> +<td><p>NoHostile</p></td> +<td><p>MaxRange</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td>0/1 Player Only</td> +<td>On Target In Distance In Combat</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_PASSENGER_BOARDED</p></td> +<td><p>27</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_PASSENGER_REMOVED</p></td> +<td><p>28</p></td> +<td><p>CooldownMin</p></td> +<td><p>CooldownMax</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_CHARMED</p></td> +<td><p>29</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Creature Charmed</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_CHARMED_TARGET</p></td> +<td><p>30</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td><p><br /> +</p></td> +<td>On Target Charmed</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_SPELLHIT_TARGET</p></td> +<td><p>31</p></td> +<td><p>SpellId</p></td> +<td><p>School</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Target Spell Hit</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_DAMAGED</p></td> +<td><p>32</p></td> +<td><p>MinDmg</p></td> +<td><p>MaxDmg</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Creature Damaged</td> +</tr> +<tr class="even"> +<td><p>SMART_EVENT_DAMAGED_TARGET</p></td> +<td><p>33</p></td> +<td><p>MinDmg</p></td> +<td><p>MaxDmg</p></td> +<td><p>RepeatMin</p></td> +<td><p>RepeatMax</p></td> +<td><p><br /> +</p></td> +<td>On Target Damaged</td> +</tr> +<tr class="odd"> +<td><p>SMART_EVENT_MOVEMENTINFORM</p></td> +<td><p>34 |
