diff options
author | Jesper Meyer <kaelima@live.se> | 2011-07-02 07:52:03 +0200 |
---|---|---|
committer | Jesper Meyer <kaelima@live.se> | 2011-07-02 07:52:03 +0200 |
commit | b216522b3dbccfdc1d75f9d5900f02f40843d441 (patch) | |
tree | 509b1df75eb7f5dbab9c23122ad0c3f6a7950664 | |
parent | b7ed8b7c664157541b037756d9ea5b78a818cfd1 (diff) |
Core/SAI: Add action SMART_ACTION_JUMP_TO_POS.
-rw-r--r-- | src/server/game/AI/SmartScripts/SmartScript.cpp | 5 | ||||
-rw-r--r-- | src/server/game/AI/SmartScripts/SmartScriptMgr.cpp | 1 | ||||
-rw-r--r-- | src/server/game/AI/SmartScripts/SmartScriptMgr.h | 10 |
3 files changed, 15 insertions, 1 deletions
diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index 3b54df584a8..6508b300b0e 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -1776,6 +1776,11 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u delete targets; break; } + case SMART_ACTION_JUMP_TO_POS: + { + me->GetMotionMaster()->MoveJump(e.target.x, e.target.y , e.target.z, (float)e.action.jump.speedxy, (float)e.action.jump.speedz); + break; + } default: sLog->outErrorDb("SmartScript::ProcessAction: Unhandled Action type %u", e.GetActionType()); break; diff --git a/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp b/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp index bc5ef54c6c0..b08aee787e8 100644 --- a/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp +++ b/src/server/game/AI/SmartScripts/SmartScriptMgr.cpp @@ -774,6 +774,7 @@ bool SmartAIMgr::IsEventValid(SmartScriptHolder &e) case SMART_ACTION_SET_DYNAMIC_FLAG: case SMART_ACTION_ADD_DYNAMIC_FLAG: case SMART_ACTION_REMOVE_DYNAMIC_FLAG: + case SMART_ACTION_JUMP_TO_POS: break; default: sLog->outErrorDb("SmartAIMgr: Not handled action_type(%u), event_type(%u), Entry %d SourceType %u Event %u, skipped.", e.GetActionType(), e.GetEventType(), e.entryOrGuid, e.GetScriptType(), e.event_id); diff --git a/src/server/game/AI/SmartScripts/SmartScriptMgr.h b/src/server/game/AI/SmartScripts/SmartScriptMgr.h index 57467200c36..690d722c048 100644 --- a/src/server/game/AI/SmartScripts/SmartScriptMgr.h +++ b/src/server/game/AI/SmartScripts/SmartScriptMgr.h @@ -461,8 +461,9 @@ enum SMART_ACTION SMART_ACTION_SET_DYNAMIC_FLAG = 94, // Flags SMART_ACTION_ADD_DYNAMIC_FLAG = 95, // Flags SMART_ACTION_REMOVE_DYNAMIC_FLAG = 96, // Flags + SMART_ACTION_JUMP_TO_POS = 97, // speedXY, speedZ, targetX, targetY, targetZ - SMART_ACTION_END = 97, + SMART_ACTION_END = 98, }; struct SmartAction @@ -844,6 +845,13 @@ struct SmartAction { uint32 anim; } sendGoCustomAnim; + + struct + { + uint32 speedxy; + uint32 speedz; + } jump; + struct { uint32 param1; |