Core/Spells: Remove SpellSelectTargetTypes enum - it's not needed anymore.

This commit is contained in:
QAston
2012-02-25 14:07:07 +01:00
parent c952c7f98f
commit a0de042efe
5 changed files with 6 additions and 183 deletions
+1 -6
View File
@@ -13903,12 +13903,7 @@ void CharmInfo::InitCharmCreateSpells()
newstate = ACT_PASSIVE;
else
{
bool autocast = false;
for (uint32 i = 0; i < MAX_SPELL_EFFECTS && !autocast; ++i)
if (spellInfo->Effects[i].TargetA.GetType() == TARGET_TYPE_UNIT_TARGET)
autocast = true;
if (autocast)
if (spellInfo->NeedsExplicitUnitTarget())
{
newstate = ACT_ENABLED;
ToggleCreatureAutocast(spellInfo, true);
+4 -9
View File
@@ -5548,16 +5548,11 @@ SpellCastResult Spell::CheckPetCast(Unit* target)
if (!target && m_targets.GetUnitTarget())
target = m_targets.GetUnitTarget();
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
if (m_spellInfo->NeedsExplicitUnitTarget())
{
if (m_spellInfo->Effects[i].TargetA.GetType() == TARGET_TYPE_UNIT_TARGET
|| m_spellInfo->Effects[i].TargetA.GetType() == TARGET_TYPE_DEST_TARGET)
{
if (!target)
return SPELL_FAILED_BAD_IMPLICIT_TARGETS;
m_targets.SetUnitTarget(target);
break;
}
if (!target)
return SPELL_FAILED_BAD_IMPLICIT_TARGETS;
m_targets.SetUnitTarget(target);
}
// cooldown
+1 -1
View File
@@ -1031,7 +1031,7 @@ void Spell::EffectTriggerMissileSpell(SpellEffIndex effIndex)
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(triggered_spell_id);
if (!spellInfo)
{
sLog->outDebug(LOG_FILTER_SPELLS_AURAS, "Spell::EffectTriggerSpell spell %u tried to trigger unknown spell %u", m_spellInfo->Id, triggered_spell_id);
sLog->outDebug(LOG_FILTER_SPELLS_AURAS, "Spell::EffectTriggerMissileSpell spell %u tried to trigger unknown spell %u", m_spellInfo->Id, triggered_spell_id);
return;
}
-143
View File
@@ -61,11 +61,6 @@ bool SpellImplicitTargetInfo::IsArea() const
return GetSelectionCategory() == TARGET_SELECT_CATEGORY_AREA || GetSelectionCategory() == TARGET_SELECT_CATEGORY_CONE;
}
SpellSelectTargetTypes SpellImplicitTargetInfo::GetType() const
{
return Type[_target];
}
SpellTargetSelectionCategories SpellImplicitTargetInfo::GetSelectionCategory() const
{
return _data[_target].SelectionCategory;
@@ -207,144 +202,6 @@ uint32 SpellImplicitTargetInfo::GetExplicitTargetMask(bool& srcSet, bool& dstSet
return targetMask;
}
bool SpellImplicitTargetInfo::InitStaticData()
{
InitTypeData();
return true;
}
void SpellImplicitTargetInfo::InitTypeData()
{
for (uint8 i = 0; i < TOTAL_SPELL_TARGETS; ++i)
{
switch (i)
{
case TARGET_UNIT_CASTER:
case TARGET_DEST_CASTER_FISHING:
case TARGET_UNIT_MASTER:
case TARGET_UNIT_PET:
case TARGET_UNIT_CASTER_AREA_PARTY:
case TARGET_UNIT_CASTER_AREA_RAID:
case TARGET_UNIT_VEHICLE:
case TARGET_UNIT_PASSENGER_0:
case TARGET_UNIT_PASSENGER_1:
case TARGET_UNIT_PASSENGER_2:
case TARGET_UNIT_PASSENGER_3:
case TARGET_UNIT_PASSENGER_4:
case TARGET_UNIT_PASSENGER_5:
case TARGET_UNIT_PASSENGER_6:
case TARGET_UNIT_PASSENGER_7:
case TARGET_UNIT_SUMMONER:
Type[i] = TARGET_TYPE_UNIT_CASTER;
break;
case TARGET_UNIT_TARGET_MINIPET:
case TARGET_UNIT_TARGET_ALLY:
case TARGET_UNIT_TARGET_RAID:
case TARGET_UNIT_TARGET_ANY:
case TARGET_UNIT_TARGET_ENEMY:
case TARGET_UNIT_TARGET_PARTY:
case TARGET_UNIT_TARGET_PASSENGER:
case TARGET_UNIT_LASTTARGET_AREA_PARTY:
case TARGET_UNIT_TARGET_AREA_RAID_CLASS:
case TARGET_UNIT_TARGET_CHAINHEAL_ALLY:
Type[i] = TARGET_TYPE_UNIT_TARGET;
break;
case TARGET_UNIT_NEARBY_ENEMY:
case TARGET_UNIT_NEARBY_ALLY:
case TARGET_UNIT_NEARBY_ENTRY:
case TARGET_UNIT_NEARBY_PARTY:
case TARGET_UNIT_NEARBY_RAID:
case TARGET_GAMEOBJECT_NEARBY_ENTRY:
Type[i] = TARGET_TYPE_UNIT_NEARBY;
break;
case TARGET_UNIT_SRC_AREA_ENEMY:
case TARGET_UNIT_SRC_AREA_ALLY:
case TARGET_UNIT_SRC_AREA_ENTRY:
case TARGET_UNIT_SRC_AREA_PARTY:
case TARGET_GAMEOBJECT_SRC_AREA:
Type[i] = TARGET_TYPE_AREA_SRC;
break;
case TARGET_UNIT_DEST_AREA_ENEMY:
case TARGET_UNIT_DEST_AREA_ALLY:
case TARGET_UNIT_DEST_AREA_ENTRY:
case TARGET_UNIT_DEST_AREA_PARTY:
case TARGET_GAMEOBJECT_DEST_AREA:
Type[i] = TARGET_TYPE_AREA_DST;
break;
case TARGET_UNIT_CONE_ENEMY_24:
case TARGET_UNIT_CONE_ALLY:
case TARGET_UNIT_CONE_ENTRY:
case TARGET_UNIT_CONE_ENEMY_54:
case TARGET_UNIT_CONE_ENEMY_104:
case TARGET_GAMEOBJECT_CONE:
Type[i] = TARGET_TYPE_AREA_CONE;
break;
case TARGET_DEST_CASTER:
case TARGET_SRC_CASTER:
case TARGET_DEST_CASTER_SUMMON:
case TARGET_DEST_CASTER_FRONT_LEAP:
case TARGET_DEST_CASTER_FRONT:
case TARGET_DEST_CASTER_BACK:
case TARGET_DEST_CASTER_RIGHT:
case TARGET_DEST_CASTER_LEFT:
case TARGET_DEST_CASTER_FRONT_LEFT:
case TARGET_DEST_CASTER_BACK_LEFT:
case TARGET_DEST_CASTER_BACK_RIGHT:
case TARGET_DEST_CASTER_FRONT_RIGHT:
case TARGET_DEST_CASTER_RANDOM:
case TARGET_DEST_CASTER_RADIUS:
Type[i] = TARGET_TYPE_DEST_CASTER;
break;
case TARGET_DEST_TARGET_ENEMY:
case TARGET_DEST_TARGET_ANY:
case TARGET_DEST_TARGET_FRONT:
case TARGET_DEST_TARGET_BACK:
case TARGET_DEST_TARGET_RIGHT:
case TARGET_DEST_TARGET_LEFT:
case TARGET_DEST_TARGET_FRONT_LEFT:
case TARGET_DEST_TARGET_BACK_LEFT:
case TARGET_DEST_TARGET_BACK_RIGHT:
case TARGET_DEST_TARGET_FRONT_RIGHT:
case TARGET_DEST_TARGET_RANDOM:
case TARGET_DEST_TARGET_RADIUS:
Type[i] = TARGET_TYPE_DEST_TARGET;
break;
case TARGET_DEST_DYNOBJ_ENEMY:
case TARGET_DEST_DYNOBJ_ALLY:
case TARGET_DEST_DYNOBJ_NONE:
case TARGET_DEST_DEST:
case TARGET_DEST_TRAJ:
case TARGET_DEST_DEST_FRONT_LEFT:
case TARGET_DEST_DEST_BACK_LEFT:
case TARGET_DEST_DEST_BACK_RIGHT:
case TARGET_DEST_DEST_FRONT_RIGHT:
case TARGET_DEST_DEST_FRONT:
case TARGET_DEST_DEST_BACK:
case TARGET_DEST_DEST_RIGHT:
case TARGET_DEST_DEST_LEFT:
case TARGET_DEST_DEST_RANDOM:
case TARGET_DEST_DEST_RADIUS:
Type[i] = TARGET_TYPE_DEST_DEST;
break;
case TARGET_DEST_DB:
case TARGET_DEST_HOME:
case TARGET_DEST_NEARBY_ENTRY:
Type[i] = TARGET_TYPE_DEST_SPECIAL;
break;
case TARGET_UNIT_CHANNEL_TARGET:
case TARGET_DEST_CHANNEL_TARGET:
case TARGET_DEST_CHANNEL_CASTER:
Type[i] = TARGET_TYPE_CHANNEL;
break;
default:
Type[i] = TARGET_TYPE_DEFAULT;
}
}
}
bool SpellImplicitTargetInfo::Init = SpellImplicitTargetInfo::InitStaticData();
SpellSelectTargetTypes SpellImplicitTargetInfo::Type[TOTAL_SPELL_TARGETS];
SpellImplicitTargetInfo::StaticData SpellImplicitTargetInfo::_data[TOTAL_SPELL_TARGETS] =
{
{TARGET_OBJECT_TYPE_NONE, TARGET_REFERENCE_TYPE_NONE, TARGET_SELECT_CATEGORY_NYI, TARGET_CHECK_DEFAULT, TARGET_DIR_NONE}, //
-24
View File
@@ -133,22 +133,6 @@ enum SpellTargetDirectionTypes
TARGET_DIR_ENTRY,
};
enum SpellSelectTargetTypes
{
TARGET_TYPE_DEFAULT,
TARGET_TYPE_UNIT_CASTER,
TARGET_TYPE_UNIT_TARGET,
TARGET_TYPE_UNIT_NEARBY,
TARGET_TYPE_AREA_SRC,
TARGET_TYPE_AREA_DST,
TARGET_TYPE_AREA_CONE,
TARGET_TYPE_DEST_CASTER,
TARGET_TYPE_DEST_TARGET,
TARGET_TYPE_DEST_DEST,
TARGET_TYPE_DEST_SPECIAL,
TARGET_TYPE_CHANNEL,
};
enum SpellEffectImplicitTargetTypes
{
EFFECT_IMPLICIT_TARGET_NONE = 0,
@@ -218,7 +202,6 @@ public:
SpellImplicitTargetInfo(uint32 target);
bool IsArea() const;
SpellSelectTargetTypes GetType() const;
SpellTargetSelectionCategories GetSelectionCategory() const;
SpellTargetReferenceTypes GetReferenceType() const;
SpellTargetObjectTypes GetObjectType() const;
@@ -229,14 +212,7 @@ public:
Targets GetTarget() const;
uint32 GetExplicitTargetMask(bool& srcSet, bool& dstSet) const;
// temporarily avalible to public
static SpellSelectTargetTypes Type[TOTAL_SPELL_TARGETS];
private:
static bool InitStaticData();
static void InitTypeData();
static bool Init;
struct StaticData
{
SpellTargetObjectTypes ObjectType; // type of object returned by target type