AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
player_settings_commandscript Class Reference
Inheritance diagram for player_settings_commandscript:
CommandScript ScriptObject

Public Member Functions

 player_settings_commandscript ()
 
ChatCommandTable GetCommands () const override
 
- Public Member Functions inherited from ScriptObject
virtual bool IsDatabaseBound () const
 
virtual bool isAfterLoadScript () const
 
virtual void checkValidity ()
 
const std::string & GetName () const
 
uint16 GetTotalAvailableHooks ()
 

Static Public Member Functions

static bool HandleSettingsAnnouncerFlags (ChatHandler *handler, std::string type, bool on)
 

Additional Inherited Members

- Protected Member Functions inherited from CommandScript
 CommandScript (const char *name)
 
- Protected Member Functions inherited from ScriptObject
 ScriptObject (const char *name, uint16 totalAvailableHooks=0)
 
virtual ~ScriptObject ()=default
 

Detailed Description

Constructor & Destructor Documentation

◆ player_settings_commandscript()

player_settings_commandscript::player_settings_commandscript ( )
inline
29: CommandScript("player_settings_commandscript") {}
Definition CommandScript.h:25

Member Function Documentation

◆ GetCommands()

ChatCommandTable player_settings_commandscript::GetCommands ( ) const
inlineoverridevirtual

Implements CommandScript.

32 {
33 static ChatCommandTable playerSettingsCommandTable =
34 {
36 };
37 static ChatCommandTable commandTable =
38 {
39 { "settings", playerSettingsCommandTable },
40 };
41 return commandTable;
42 }
static bool HandleSettingsAnnouncerFlags(ChatHandler *handler, std::string type, bool on)
Definition cs_player_settings.cpp:44
std::vector< ChatCommandBuilder > ChatCommandTable
Definition ChatCommand.h:46
@ RBAC_PERM_COMMAND_SETTINGS_ANNOUNCER
Definition RBAC.h:642

References HandleSettingsAnnouncerFlags(), and rbac::RBAC_PERM_COMMAND_SETTINGS_ANNOUNCER.

◆ HandleSettingsAnnouncerFlags()

static bool player_settings_commandscript::HandleSettingsAnnouncerFlags ( ChatHandler handler,
std::string  type,
bool  on 
)
inlinestatic
45 {
46 Player* player = handler->GetPlayer();
47
48 PlayerSetting setting;
50
51 if (type == "bg")
52 {
55 }
56 else if (type == "arena")
57 {
60 }
61 else if (type == "autobroadcast")
62 {
63 if (player->GetLevel() < sWorld->getIntConfig(CONFIG_AUTOBROADCAST_MIN_LEVEL_DISABLE))
64 {
65 handler->SetSentErrorMessage(true);
67 }
68
71 }
72
73 handler->SetSentErrorMessage(false);
75 return true;
76 }
@ LANG_CMD_SETTINGS_ANNOUNCER_OFF
Definition Language.h:1153
@ LANG_CMD_AUTOBROADCAST_LVL_ERROR
Definition Language.h:1151
@ LANG_CMD_SETTINGS_ANNOUNCER_ON
Definition Language.h:1152
@ ANNOUNCER_FLAG_DISABLE_AUTOBROADCAST
Definition PlayerSettings.h:36
@ ANNOUNCER_FLAG_DISABLE_ARENA_QUEUE
Definition PlayerSettings.h:35
@ ANNOUNCER_FLAG_DISABLE_BG_QUEUE
Definition PlayerSettings.h:34
const std::string AzerothcorePSSource
Definition PlayerSettings.h:24
@ SETTING_ANNOUNCER_FLAGS
Definition PlayerSettings.h:28
@ CONFIG_AUTOBROADCAST_MIN_LEVEL_DISABLE
Definition WorldConfig.h:314
void PSendSysMessage(std::string_view str, bool escapeCharacters=false)
Definition Chat.cpp:219
void SetSentErrorMessage(bool val)
Definition Chat.h:238
Player * GetPlayer() const
Definition Chat.cpp:37
Definition Player.h:1084
void UpdatePlayerSetting(std::string const &source, uint32 index, uint32 value)
Definition PlayerSettings.cpp:159
PlayerSetting GetPlayerSetting(std::string const &source, uint32 index)
Definition PlayerSettings.cpp:132
uint8 GetLevel() const
Definition Unit.h:1103
#define sWorld
Definition World.h:317
Definition PlayerSettings.h:40
void AddFlag(uint32 flag)
Definition PlayerSettings.h:48
void RemoveFlag(uint32 flag)
Definition PlayerSettings.h:49
uint32 value
Definition PlayerSettings.h:44

References PlayerSetting::AddFlag(), ANNOUNCER_FLAG_DISABLE_ARENA_QUEUE, ANNOUNCER_FLAG_DISABLE_AUTOBROADCAST, ANNOUNCER_FLAG_DISABLE_BG_QUEUE, AzerothcorePSSource, CONFIG_AUTOBROADCAST_MIN_LEVEL_DISABLE, Unit::GetLevel(), ChatHandler::GetPlayer(), Player::GetPlayerSetting(), LANG_CMD_AUTOBROADCAST_LVL_ERROR, LANG_CMD_SETTINGS_ANNOUNCER_OFF, LANG_CMD_SETTINGS_ANNOUNCER_ON, ChatHandler::PSendSysMessage(), PlayerSetting::RemoveFlag(), ChatHandler::SetSentErrorMessage(), SETTING_ANNOUNCER_FLAGS, sWorld, Player::UpdatePlayerSetting(), and PlayerSetting::value.

Referenced by GetCommands().


The documentation for this class was generated from the following file: