Core/SAI: In all npc flag related action_types we now check if the target is a creature instead of an unit (creature/player).

This commit is contained in:
Discover-
2013-12-17 11:06:07 +01:00
parent b5e333255b
commit 1f4d585bef

View File

@@ -1145,6 +1145,7 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u
{
if (WorldObject* baseObj = GetBaseObject())
baseObj->setActive(e.action.active.state);
break;
}
case SMART_ACTION_ATTACK_START:
@@ -1661,7 +1662,7 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u
break;
for (ObjectList::const_iterator itr = targets->begin(); itr != targets->end(); ++itr)
if (IsUnit(*itr))
if (IsCreature(*itr))
(*itr)->ToUnit()->SetUInt32Value(UNIT_NPC_FLAGS, e.action.unitFlag.flag);
delete targets;
@@ -1674,7 +1675,7 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u
break;
for (ObjectList::const_iterator itr = targets->begin(); itr != targets->end(); ++itr)
if (IsUnit(*itr))
if (IsCreature(*itr))
(*itr)->ToUnit()->SetFlag(UNIT_NPC_FLAGS, e.action.unitFlag.flag);
delete targets;
@@ -1687,7 +1688,7 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u
break;
for (ObjectList::const_iterator itr = targets->begin(); itr != targets->end(); ++itr)
if (IsUnit(*itr))
if (IsCreature(*itr))
(*itr)->ToUnit()->RemoveFlag(UNIT_NPC_FLAGS, e.action.unitFlag.flag);
delete targets;