Core/Spells: Support for targetting spells onto in flight units

* This adds support to spell_custom_attr to allow a spell to be cast
  upon a unit on a taxi/in flight.
* This will allow the Issue #11880 with Horde quest Test At Sea (11170) to be corrected.
* closes #14235

Signed-off-by: Naios <naios-dev@live.de>

(cherry picked from commit f9cba93985)
This commit is contained in:
pete318
2015-02-23 10:52:07 +00:00
committed by Naios
parent 6e9ab38fcc
commit 97a074def2
2 changed files with 2 additions and 1 deletions

View File

@@ -1959,7 +1959,7 @@ SpellCastResult SpellInfo::CheckTarget(Unit const* caster, WorldObject const* ta
}
// not allow casting on flying player
if (unitTarget->HasUnitState(UNIT_STATE_IN_FLIGHT))
if (unitTarget->HasUnitState(UNIT_STATE_IN_FLIGHT) && !(AttributesCu & SPELL_ATTR0_CU_ALLOW_INFLIGHT_TARGET))
return SPELL_FAILED_BAD_TARGETS;
/* TARGET_UNIT_MASTER gets blocked here for passengers, because the whole idea of this check is to

View File

@@ -197,6 +197,7 @@ enum SpellCustomAttributes
SPELL_ATTR0_CU_IGNORE_ARMOR = 0x00008000,
SPELL_ATTR0_CU_REQ_TARGET_FACING_CASTER = 0x00010000,
SPELL_ATTR0_CU_REQ_CASTER_BEHIND_TARGET = 0x00020000,
SPELL_ATTR0_CU_ALLOW_INFLIGHT_TARGET = 0x00040000,
SPELL_ATTR0_CU_NEGATIVE = SPELL_ATTR0_CU_NEGATIVE_EFF0 | SPELL_ATTR0_CU_NEGATIVE_EFF1 | SPELL_ATTR0_CU_NEGATIVE_EFF2
};