diff options
author | Discover- <amort11@hotmail.com> | 2013-08-07 02:41:58 +0200 |
---|---|---|
committer | Discover- <amort11@hotmail.com> | 2013-08-07 02:41:58 +0200 |
commit | d87b0fff2fedfefe30c25171a0fe187084ef02ba (patch) | |
tree | 454f544328d9a3cb84338560810157fe79e7d67c /src | |
parent | 5164caa9ffb436ce5a3cbd9c344311eca5d95175 (diff) |
Core/SmartAI: Allow SMART_ACTION_SET_ACTIVE to take a parameter for on/off (true/false). Required for upcoming EAI to SAI conversion (https://github.com/Discover-/EventAI-to-SmartAI)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/AI/SmartScripts/SmartScript.cpp | 6 | ||||
-rw-r--r-- | src/server/game/AI/SmartScripts/SmartScriptMgr.h | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index 86c246ff387..933b7b29892 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -1133,13 +1133,13 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u case SMART_ACTION_SET_VISIBILITY: { if (me) - me->SetVisible(e.action.visibility.state ? true : false); + me->SetVisible(e.action.visibility.state); break; } case SMART_ACTION_SET_ACTIVE: { - if (GetBaseObject()) - GetBaseObject()->setActive(true); + if (WorldObject* baseObj = GetBaseObject()) + baseObj->setActive(e.action.active.state); break; } case SMART_ACTION_ATTACK_START: diff --git a/src/server/game/AI/SmartScripts/SmartScriptMgr.h b/src/server/game/AI/SmartScripts/SmartScriptMgr.h index 2fcee55ed14..d1ae47c2afd 100644 --- a/src/server/game/AI/SmartScripts/SmartScriptMgr.h +++ b/src/server/game/AI/SmartScripts/SmartScriptMgr.h @@ -429,7 +429,7 @@ enum SMART_ACTION SMART_ACTION_SET_DATA = 45, // Field, Data (only creature @todo) SMART_ACTION_MOVE_FORWARD = 46, // distance SMART_ACTION_SET_VISIBILITY = 47, // on/off - SMART_ACTION_SET_ACTIVE = 48, // No Params + SMART_ACTION_SET_ACTIVE = 48, // on/off SMART_ACTION_ATTACK_START = 49, // SMART_ACTION_SUMMON_GO = 50, // GameObjectID, DespawnTime in ms, SMART_ACTION_KILL_UNIT = 51, // @@ -727,6 +727,11 @@ struct SmartAction } summonGO; struct + { + uint32 state; + } active; + + struct { uint32 id; } taxi; |