63 {
"instance", instanceCommandTable },
79 MapDb2Entries entries{ instanceLock->GetMapId(), instanceLock->GetDifficultyId() };
80 std::string timeleft = !instanceLock->IsExpired() ?
secsToTimeString(std::chrono::duration_cast<Seconds>(instanceLock->GetEffectiveExpiryTime() - now).count()) :
"-";
82 entries.Map->ID, entries.Map->MapName[
sWorld->GetDefaultDbcLocale()],
83 uint32(entries.MapDifficulty->DifficultyID),
sDifficultyStore.AssertEntry(entries.MapDifficulty->DifficultyID)->Name[
sWorld->GetDefaultDbcLocale()],
84 instanceLock->GetInstanceId(),
103 if (mapArg.holds_alternative<
uint32>())
104 mapId = mapArg.get<
uint32>();
109 std::vector<InstanceLock const*> locksReset;
110 std::vector<InstanceLock const*> locksNotReset;
112 sInstanceLockMgr.ResetInstanceLocksForPlayer(player->
GetGUID(), mapId, difficulty, &locksReset, &locksNotReset);
117 MapDb2Entries entries{ instanceLock->GetMapId(), instanceLock->GetDifficultyId() };
118 std::string timeleft = !instanceLock->IsExpired() ?
secsToTimeString(std::chrono::duration_cast<Seconds>(instanceLock->GetEffectiveExpiryTime() - now).count()) :
"-";
120 entries.Map->ID, entries.Map->MapName[
sWorld->GetDefaultDbcLocale()],
121 uint32(entries.MapDifficulty->DifficultyID),
sDifficultyStore.AssertEntry(entries.MapDifficulty->DifficultyID)->Name[
sWorld->GetDefaultDbcLocale()],
122 instanceLock->GetInstanceId(),
132 MapDb2Entries entries{ instanceLock->GetMapId(), instanceLock->GetDifficultyId() };
133 std::string timeleft = !instanceLock->IsExpired() ?
secsToTimeString(std::chrono::duration_cast<Seconds>(instanceLock->GetEffectiveExpiryTime() - now).count()) :
"-";
135 entries.Map->ID, entries.Map->MapName[
sWorld->GetDefaultDbcLocale()],
136 uint32(entries.MapDifficulty->DifficultyID),
sDifficultyStore.AssertEntry(entries.MapDifficulty->DifficultyID)->Name[
sWorld->GetDefaultDbcLocale()],
137 instanceLock->GetInstanceId(),
172 player = PlayerIdentifier::FromSelf(handler);
174 if (!player->IsConnected())
220 player = PlayerIdentifier::FromSelf(handler);
222 if (!player->IsConnected())
DB2Storage< DifficultyEntry > sDifficultyStore("Difficulty.db2", &DifficultyLoadInfo::Instance)
std::chrono::system_clock::time_point InstanceResetTimePoint
@ LANG_COMMAND_INST_SET_BOSS_STATE
@ LANG_COMMAND_INST_GET_BOSS_STATE
@ LANG_COMMAND_LIST_BIND_PLAYER_BINDS
@ LANG_COMMAND_INST_STAT_SAVES
@ LANG_COMMAND_LIST_BIND_INFO
@ LANG_COMMAND_INST_STAT_PLAYERSBOUND
@ LANG_COMMAND_INST_UNBIND_UNBOUND
@ LANG_COMMAND_INST_STAT_PLAYERS_IN
@ LANG_COMMAND_INST_UNBIND_FAILED
@ LANG_COMMAND_INST_UNBIND_UNBINDING
@ LANG_COMMAND_INST_STAT_LOADED_INST
std::optional< T > Optional
Optional helper class to wrap optional values within.
Role Based Access Control related classes definition.
std::string secsToTimeString(uint64 timeInSecs, TimeFormat timeFormat, bool hoursOnly)
Player * getSelectedPlayer()
WorldSession * GetSession()
void PSendSysMessage(const char *fmt, Args &&... args)
void SetSentErrorMessage(bool val)
virtual char const * GetTrinityString(uint32 entry) const
static char const * ToConstant(Enum value)
InstanceScript * GetInstanceScript()
virtual bool SetBossState(uint32 id, EncounterState state)
EncounterState GetBossState(uint32 id) const
uint32 GetEncounterCount() const
InstanceMap * ToInstanceMap()
static ObjectGuid GetGUID(Object const *o)
Player * GetPlayer() const
static bool HandleInstanceUnbindCommand(ChatHandler *handler, Variant< uint32, EXACT_SEQUENCE("all")> mapArg, Optional< uint32 > difficultyArg)
ChatCommandTable GetCommands() const override
static bool HandleInstanceGetBossStateCommand(ChatHandler *handler, uint32 encounterId, Optional< PlayerIdentifier > player)
static bool HandleInstanceSetBossStateCommand(ChatHandler *handler, uint32 encounterId, EncounterState state, Optional< PlayerIdentifier > player)
static bool HandleInstanceStatsCommand(ChatHandler *handler)
static bool HandleInstanceListBindsCommand(ChatHandler *handler)
void AddSC_instance_commandscript()
std::vector< ChatCommandBuilder > ChatCommandTable
@ RBAC_PERM_COMMAND_INSTANCE_LISTBINDS
@ RBAC_PERM_COMMAND_INSTANCE_SET_BOSS_STATE
@ RBAC_PERM_COMMAND_INSTANCE_GET_BOSS_STATE
@ RBAC_PERM_COMMAND_INSTANCE_STATS
@ RBAC_PERM_COMMAND_INSTANCE_UNBIND