diff options
| author | Noxies <eronoxsmail@gmail.com> | 2021-12-09 03:57:15 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-08 23:57:15 -0300 |
| commit | c95c29838be46c3d5482bda1d2b93e843c6c47d2 (patch) | |
| tree | f5947b90d3f917870fb46694ee18648a1ecbd6e9 /src/server/database/Database/Implementation | |
| parent | 8ae8db5283ee8c89edc247cd81841ef7e839825c (diff) | |
feat(Scripts/Commands): Item restoration command (#9538)
* Implement item restore command & move itemmove to new item cmd
* Implement LANG_COMMAND_DISABLED
* Prevent command usage if no config is set
* WIP: `.item restore list`
* Fix restore list & create base for restore item
* Send item to player via mail
* Put player as last argument
* Use Postmaster & fix restore list
* Show item name in restore list
* Update HandleItemMoveCommand to be using the api
Co-authored-by: Skjalf <47818697+Nyeriah@users.noreply.github.com>
* Send item instantly if online
Diffstat (limited to 'src/server/database/Database/Implementation')
| -rw-r--r-- | src/server/database/Database/Implementation/CharacterDatabase.cpp | 3 | ||||
| -rw-r--r-- | src/server/database/Database/Implementation/CharacterDatabase.h | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/server/database/Database/Implementation/CharacterDatabase.cpp b/src/server/database/Database/Implementation/CharacterDatabase.cpp index 30875a93c0..32b2ff0486 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.cpp +++ b/src/server/database/Database/Implementation/CharacterDatabase.cpp @@ -593,7 +593,10 @@ void CharacterDatabaseConnection::DoPrepareStatements() // Recovery Item PrepareStatement(CHAR_INS_RECOVERY_ITEM, "INSERT INTO recovery_item (Guid, ItemEntry, Count) VALUES (?, ?, ?)", CONNECTION_SYNCH); + PrepareStatement(CHAR_SEL_RECOVERY_ITEM, "SELECT id, itemEntry, Count FROM recovery_item WHERE id = ?", CONNECTION_SYNCH); + PrepareStatement(CHAR_SEL_RECOVERY_ITEM_LIST, "SELECT id, itemEntry, Count FROM recovery_item WHERE Guid = ? ORDER BY id DESC", CONNECTION_SYNCH); PrepareStatement(CHAR_DEL_RECOVERY_ITEM, "DELETE FROM recovery_item WHERE Guid = ? AND ItemEntry = ? AND Count = ? ORDER BY Id DESC LIMIT 1", CONNECTION_ASYNC); + PrepareStatement(CHAR_DEL_RECOVERY_ITEM_BY_RECOVERY_ID, "DELETE FROM recovery_item WHERE id = ?", CONNECTION_ASYNC); // Character names PrepareStatement(CHAR_INS_RESERVED_PLAYER_NAME, "INSERT IGNORE INTO reserved_name (name) VALUES (?)", CONNECTION_ASYNC); diff --git a/src/server/database/Database/Implementation/CharacterDatabase.h b/src/server/database/Database/Implementation/CharacterDatabase.h index 5efb51b86d..2d675c6670 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.h +++ b/src/server/database/Database/Implementation/CharacterDatabase.h @@ -509,7 +509,10 @@ enum CharacterDatabaseStatements : uint32 CHAR_UPD_QUEST_TRACK_ABANDON_TIME, CHAR_INS_RECOVERY_ITEM, + CHAR_SEL_RECOVERY_ITEM, + CHAR_SEL_RECOVERY_ITEM_LIST, CHAR_DEL_RECOVERY_ITEM, + CHAR_DEL_RECOVERY_ITEM_BY_RECOVERY_ID, CHAR_INS_RESERVED_PLAYER_NAME, |
