mirror of
https://github.com/mod-playerbots/mod-playerbots.git
synced 2026-01-16 18:30:27 +00:00
### Summary - Add a preserveAuras flag to summon teleport helpers. - Keep auras when using the summon command. - Leave meeting stone behavior unchanged (auras can still be cleared there). ### Motivation Summon command was clearing buffs (e.g., Hellscream’s Warsong in ICC) because auras were explicitly interrupted before teleporting. This change keeps existing meeting stone behavior but preserves auras for the summon path to avoid losing valid buffs. ### Details Solve : https://github.com/mod-playerbots/mod-playerbots/issues/1862 https://github.com/mod-playerbots/mod-playerbots/issues/1942 ### Testing Go to ICC and téléport Bots
36 lines
1020 B
C++
36 lines
1020 B
C++
/*
|
|
* Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license, you may redistribute it
|
|
* and/or modify it under version 3 of the License, or (at your option), any later version.
|
|
*/
|
|
|
|
#ifndef _PLAYERBOT_USEMEETINGSTONEACTION_H
|
|
#define _PLAYERBOT_USEMEETINGSTONEACTION_H
|
|
|
|
#include "MovementActions.h"
|
|
|
|
class Player;
|
|
class PlayerbotAI;
|
|
|
|
class SummonAction : public MovementAction
|
|
{
|
|
public:
|
|
SummonAction(PlayerbotAI* botAI, std::string const name = "summon") : MovementAction(botAI, name) {}
|
|
|
|
bool Execute(Event event) override;
|
|
|
|
protected:
|
|
bool Teleport(Player* summoner, Player* player, bool preserveAuras);
|
|
bool SummonUsingGos(Player* summoner, Player* player, bool preserveAuras);
|
|
bool SummonUsingNpcs(Player* summoner, Player* player, bool preserveAuras);
|
|
};
|
|
|
|
class UseMeetingStoneAction : public SummonAction
|
|
{
|
|
public:
|
|
UseMeetingStoneAction(PlayerbotAI* botAI) : SummonAction(botAI, "use meeting stone") {}
|
|
|
|
bool Execute(Event event) override;
|
|
};
|
|
|
|
#endif
|