mirror of
https://github.com/araxiaonline/TrinityCore.git
synced 2026-06-18 14:10:18 -04:00
Game/AI: Implement option to move a creature back to Homeposition on Evade. (#24492)
* Game/AI: Implement option to move a creature back to Homeposition on Evade.
* If ToHomePosition (action param 1) is 1 > Move to last stored position
* If ToHomePosition (action param 1) is 0 > Move to homeposition
* Ref: https://github.com/TrinityCore/TrinityCore/issues/24226
* Add parameter for walkmode
* Game/AI: SAI SMART_ACTION_EVADE - Rename ToHomePosition to ToRespawnPosition and store point from GetRespawnPosition.
* Game/AI: SAI SMART_ACTION_EVADE - Rename ToHomePosition to ToRespawnPosition
* Remove broken bits, simplify the code
* Update comments
* Code cleanup
Co-authored-by: jackpoz <giacomopoz@gmail.com>
(cherry picked from commit 02fca032e1)
This commit is contained in:
@@ -836,6 +836,14 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u
|
||||
if (!me)
|
||||
break;
|
||||
|
||||
// Reset home position to respawn position if specified in the parameters
|
||||
if (e.action.evade.toRespawnPosition == 0)
|
||||
{
|
||||
float homeX, homeY, homeZ, homeO;
|
||||
me->GetRespawnPosition(homeX, homeY, homeZ, &homeO);
|
||||
me->SetHomePosition(homeX, homeY, homeZ, homeO);
|
||||
}
|
||||
|
||||
me->AI()->EnterEvadeMode();
|
||||
TC_LOG_DEBUG("scripts.ai", "SmartScript::ProcessAction:: SMART_ACTION_EVADE: Creature %s EnterEvadeMode", me->GetGUID().ToString().c_str());
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user