Core/Quests: Implement new logic for selecting spell casters for accept/reward spells based on quest flags
Port From (https://github.com/TrinityCore/TrinityCore/commit/7d2cbd4e7cec5737c742437e126ddb745d65f6a9)
This commit is contained in:
@@ -3648,6 +3648,30 @@ namespace Game.Spells
|
||||
return null;
|
||||
}
|
||||
|
||||
public bool HasTargetType(Targets target)
|
||||
{
|
||||
foreach (var pair in _effects)
|
||||
{
|
||||
foreach (SpellEffectInfo effect in pair.Value)
|
||||
{
|
||||
if (effect != null && (effect.TargetA.GetTarget() == target || effect.TargetB.GetTarget() == target))
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool HasTargetType(Difficulty difficulty, Targets target)
|
||||
{
|
||||
var effects = GetEffectsForDifficulty(difficulty);
|
||||
foreach (SpellEffectInfo effect in effects)
|
||||
{
|
||||
if (effect != null && (effect.TargetA.GetTarget() == target || effect.TargetB.GetTarget() == target))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool HasAttribute(SpellAttr0 attribute) { return Convert.ToBoolean(Attributes & attribute); }
|
||||
public bool HasAttribute(SpellAttr1 attribute) { return Convert.ToBoolean(AttributesEx & attribute); }
|
||||
public bool HasAttribute(SpellAttr2 attribute) { return Convert.ToBoolean(AttributesEx2 & attribute); }
|
||||
|
||||
Reference in New Issue
Block a user