* feat(CI/Codestyle): check for braces after if/else statements
* right need to edit a cpp file to trigger cpp check
* Revert "right need to edit a cpp file to trigger cpp check"
This reverts commit 2e34d8c52f35216549107a3476e79e79ea2ae077.
* fix codestyle in cpp
* Update oculus.cpp
* Update codestyle.py
* Update codestyle.py
* Update codestyle.py
* Update codestyle.py
* Initial commit for localized motd
* Rename function that created world packages
* Update to satisfy code check
* Update code to accomodate localized motd
* Update command to support multiple optionales & adjusted db
* Code cleanup
* Update sql name
* Fix codestyle issues
* Remove hardcoded schema
* Add check for valid player in reload command
* Update to better code style
* Add missing include
* Fix redundant code usage
* Add missing include
* Remove sql files and create new rev sql files
* Address minor code reviews
* Fix code style
* Update code to address code revisions.
- Remove two unused functions
- Remove map
- Use available function to resolve LocaleConstant
* Fix code style
* Add check for base motd and update locale to DEFAULT_LOCALE
* Code docs
* Removed some docs, readd defaultd motd formatting
* Fix oversight in variable declaration
* Code style fix
* Update code based on code review
* ready for merge
* Fix set motd command due to changes to DEFAULT_LOCALE
* Fix CI
* Fix trailing whitespace
---------
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
* new BattlegroundDesertionTypes for hook OnBattlegroundDesertion
* chore: minor improvements
---------
Co-authored-by: laasker <79991768+laasker@users.noreply.github.com>
When a pet ability was cast, PetHandler reset all CharmInfo flags before
calling PetAI methods, setting the attack flag to true every time.
This commands the pet to go and chase the target which is not correct
when the state is COMMAND_STAY.
PetAI already handles the scenario, it just wasn't getting the actual
pet attack state.
* move several enum definitions in a new files
* move more things
* remove the include comment
* move the related code to CharmInfo in this own file
*original idea of Ovahlord
Co-Authored-By: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
* fix clang build errors and few blank lines
* missing forward declaration
* new tentative to fix gcc/clang build
* add several include could be necessary for gcc/clang compilation
* .
* revert some include since the last AC update
* fix some loop inconsistencies
* align all enums in UnitDefine.h
---------
Co-authored-by: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
* refactor(Core/World): Move SendGMText to WorldSession and allow `fmt`
- Move SendGMText from World to WorldSession
- Make SendGMText use fmt
- Make SendGMText parse acore_string entries
* Update cs_message.cpp
* tokenize the string only once
* Move to chathandler
* Update WorldSession.cpp
* make sure we have a session
* feat(Core/Chat): Provide a fully-formed protocol for addons to interact with GM commands
* Send success/fail state, allow interleaving, and indicate end of output. Add framework for supporting non-human-readable output in commands.
* cherry-pick commit (508c9d2fc1)
This PR implements a well-formed protocol for addons to communicate with the server, outlined below:
- All communication happens over the addon channel (`LANG_ADDON` in terms of the core, `CHAT_MSG_ADDON`/`SendAddonMessage` for the client). The prefix used for all messages is `AzerothCore` (in client terms - in core terms, every message starts with `AzerothCore\t`).
- In each message, the first character is the opcode. The following four characters are a unique identifier for the invocation in question, and will be echoed back by the server in every message related to that invocation. Following is the message body, if any.
- The following opcodes are supported:
- Client to server:
- `p` - Ping request. The core will always respond by ACKing with the passed identifier. No body.
- `i` or `h` - Command invocation. The message body is the command text without prefix. `i` requests machine-readable output, `h` requests human-readable.
- Server to client:
- `a` - ACK. The first message sent in response to any invocation (before any output). No body.
- `m` - Message. Sent once per line of output the server generates. Body = output line.
- `o` - OK. Indicates that the command finished processing with no errors. No body.
- `f` - Failed. Indicates that command processing is done, but there was an error. No body.
Expected overhead is minimal, and this integrates seamlessly with existing command scripts (no changes necessary).
PS: There's also a client-side addon library that exposes this protocol in a developer-friendly way over at https://github.com/azerothcore/LibAzerothCore-1.0
---------
Co-authored-by: Treeston <14020072+Treeston@users.noreply.github.com>
* refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load
* closes https://github.com/azerothcore/azerothcore-wotlk/issues/18556
* Update ObjectMgr.cpp
* Update ObjectMgr.cpp
* I swear I am not drunk
* We already check all of these
* fix build
* Forgot we dont send the responsecode in senderrormessage
* last commit I swear