spell_script_target - vanrhy/linguister GitHub Wiki

Back to world database list of tables.

The `spell_script_target` table

Used to control SpellEffect with ImpliciteTargetA-B == 7|8|38|40|46|52.

These spell effects require a specific target in either alive or dead state (for creatures).

Structure

Field Type Null Key Default Extra
entry int(6) unsigned NO PRI
type int(8) unsigned NO PRI 0
targetEntry int(11) unsigned NO PRI 0
inverseEffectMask mediumint(8) unsigned NO 0

Description of the fields

entry

The spell ID. See Spell.dbc

When adding a new entry, be sure to check to see if the spell triggers another spell. If it does, don’t forget to check that spell as well to see if it has ImplictTargetA-B = 38 || ImpliciteTargetA-B == 7 and if it does, add an entry in this table for it as well.

NOTE: The only valide targets for ImpliciteTargetA-B == 7 are creatures(dead or alive).

type

One of these type are available

  • 0 = Gameobject
  • 1 = Creature
  • 2 = Creature who must be dead (killed by Player or Npc)

NOTE: A creature corpse and a creature that looks dead are two different things. One is actually dead and the other is just using an emote to appear dead.

targetEntry

Can be: creature_template.entry or gameobject_template.entry depending on the choosen type.

This specified entry will be automatically targeted if it is near the unit casting the spell.

inverseEffectMask

A mask value defining if the target is only applicable for specifiq effect indexes.
This is an inverseMask, so you need to filter effects for which you don’t want the target to be valid.
The mask is 1 << EffectIndex (EffectIndex going from 0 to 2)

Example:
(Spell, 1, NpcA, 2^0), — NpcA will NOT be chosen for spell-effect 0, so it will be chosen for effects 1 or 2
(Spell, 1, NpcB, 2^1|2^2), — NpcB will NOT be chosen for spell-effects 1, 2, so it will be chosen for effect 0.

So with this we can define targets for a spell (assuming that the targets for the effects can make use of spell_script_target!) in a way that Effect0 will hit NpcB, and Effect1,2 will hit NpcA

⚠️ **GitHub.com Fallback** ⚠️