205 {
206
208 {
210 return false;
211 }
212
213 if (!player)
215
216 if (!player->IsConnected())
217 {
219 return false;
220 }
221
223 if (!map)
224 {
226 return false;
227 }
228
230 {
232 return false;
233 }
234
235
236 std::unordered_map<uint32, char const*> encounterNames;
238
239
240
241
243 if ((map->
GetId() == 631 || map->
GetId() == 724)
245 {
246 encounters =
sObjectMgr->GetDungeonEncounterList(
251 }
252 else
253 {
256 : difficulty;
257 encounters =
sObjectMgr->GetDungeonEncounterList(
258 map->
GetId(), diffFixed);
259 }
260
261 if (encounters)
262 {
263 for (auto const* encounter : *encounters)
264 encounterNames[encounter->dbcEntry->encounterIndex]
265 = encounter->dbcEntry->encounterName[0];
266 }
267
269 {
272
273 auto it = encounterNames.find(i);
274 std::string bossName = (it != encounterNames.end()
275 && it->second) ? it->second : "Unknown";
276
279 i, bossName, state, stateName);
280 }
281
282 return true;
283 }
Difficulty
Definition DBCEnums.h:266
@ RAID_DIFFICULTY_10MAN_NORMAL
Definition DBCEnums.h:273
@ RAID_DIFFICULTY_25MAN_NORMAL
Definition DBCEnums.h:274
bool IsSharedDifficultyMap(uint32 mapid)
Definition DBCStores.cpp:829
std::uint8_t uint8
Definition Define.h:109
std::uint32_t uint32
Definition Define.h:107
@ LANG_COMMAND_INST_GET_BOSS_STATE
Definition Language.h:1119
@ LANG_NOT_DUNGEON
Definition Language.h:1116
@ LANG_NO_INSTANCE_DATA
Definition Language.h:1117
@ LANG_CMD_SYNTAX
Definition Language.h:42
@ LANG_PLAYER_NOT_FOUND
Definition Language.h:545
#define sObjectMgr
Definition ObjectMgr.h:1712
std::list< DungeonEncounter const * > DungeonEncounterList
Definition ObjectMgr.h:713
void PSendSysMessage(std::string_view str, bool escapeCharacters=false)
Definition Chat.cpp:211
WorldSession * GetSession()
Definition Chat.h:242
void SendErrorMessage(uint32 entry)
Definition Chat.cpp:216
InstanceScript * GetInstanceScript()
Definition Map.h:660
EncounterState GetBossState(uint32 id) const
Definition InstanceScript.h:252
static std::string GetBossStateName(uint8 state)
Definition InstanceScript.cpp:831
bool Is25ManRaid() const
Definition Map.h:300
uint32 GetId() const
Definition Map.h:230
InstanceMap * ToInstanceMap()
Definition Map.h:378
Difficulty GetDifficulty() const
Definition Map.h:290
bool IsHeroic() const
Definition Map.h:299
static Optional< PlayerIdentifier > FromSelf(ChatHandler *handler)
Definition ChatCommandTags.cpp:147