23#include <unordered_map>
67 void LoadCreatureFormations();
78 using MembersMap = std::unordered_map<Creature*, FormationInfo*>;
96 bool IsEmpty()
const {
return _members.empty(); }
102 void RemoveMember(
Creature* member);
103 void FormationReset(
bool dismiss);
105 void LeaderStartedMoving();
106 void MemberEngagingTarget(
Creature* member,
Unit* target);
107 bool CanLeaderStartMoving()
const;
109 bool HasAliveMembers()
const;
111 bool LeaderHasStringId(std::string_view
id)
const;
114#define sFormationMgr FormationMgr::instance()
@ FLAG_MEMBERS_ASSIST_MEMBER
@ FLAG_LEADER_ASSISTS_MEMBER
@ FLAG_MEMBERS_ASSIST_LEADER
Creature * GetLeader() const
ObjectGuid::LowType GetLeaderSpawnId() const
CreatureGroup & operator=(CreatureGroup &&)=delete
CreatureGroup(CreatureGroup const &)=delete
std::unordered_map< Creature *, FormationInfo * > MembersMap
bool IsLeader(Creature const *creature) const
CreatureGroup(CreatureGroup &&)=delete
ObjectGuid::LowType _leaderSpawnId
CreatureGroup & operator=(CreatureGroup const &)=delete
bool HasMember(Creature *member) const