diff options
| author | Ovahlord <dreadkiller@gmx.de> | 2023-11-23 02:31:31 +0100 |
|---|---|---|
| committer | Ovahlord <dreadkiller@gmx.de> | 2023-11-23 02:31:31 +0100 |
| commit | bba8e6fe41b4f41f647c08c17e8fcc09283fdfa8 (patch) | |
| tree | 953d4ec2c24f0a2ba6b66a832bd2a4c63edc9b15 /src/server/scripts/Commands | |
| parent | 40ddd29d03b862765bceac0caa435bd9352c77b8 (diff) | |
Core/Items: downgrade items part 1: removed item bonus generation, artifact weapon handling and azerite item mechanics
Diffstat (limited to 'src/server/scripts/Commands')
| -rw-r--r-- | src/server/scripts/Commands/cs_misc.cpp | 39 | ||||
| -rw-r--r-- | src/server/scripts/Commands/cs_reload.cpp | 1 |
2 files changed, 4 insertions, 36 deletions
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp index 30504875544..12b08a05c6d 100644 --- a/src/server/scripts/Commands/cs_misc.cpp +++ b/src/server/scripts/Commands/cs_misc.cpp @@ -30,7 +30,6 @@ #include "IpAddress.h" #include "IPLocation.h" #include "Item.h" -#include "ItemBonusMgr.h" #include "Language.h" #include "MiscPackets.h" #include "MMapFactory.h" @@ -1233,14 +1232,7 @@ public: ItemContext itemContext = ItemContext::NONE; if (context) - { itemContext = ItemContext(Trinity::StringTo<uint8>(context).value_or(0)); - if (itemContext < ItemContext::Max) - { - std::vector<int32> contextBonuses = ItemBonusMgr::GetBonusListsForItem(itemId, itemContext); - bonusListIDs.insert(bonusListIDs.begin(), contextBonuses.begin(), contextBonuses.end()); - } - } Player* player = handler->GetSession()->GetPlayer(); Player* playerTarget = handler->getSelectedPlayer(); @@ -1298,8 +1290,7 @@ public: return false; } - Item* item = playerTarget->StoreNewItem(dest, itemId, true, GenerateItemRandomBonusListId(itemId), GuidSet(), itemContext, - bonusListIDs.empty() ? nullptr : &bonusListIDs); + Item* item = playerTarget->StoreNewItem(dest, itemId, true, GuidSet(), itemContext); // remove binding (let GM give it to another player later) if (player == playerTarget) @@ -1399,14 +1390,7 @@ public: ItemContext itemContext = ItemContext::NONE; if (context) - { itemContext = ItemContext(Trinity::StringTo<uint8>(context).value_or(0)); - if (itemContext < ItemContext::Max) - { - std::vector<int32> contextBonuses = ItemBonusMgr::GetBonusListsForItem(itemId, itemContext); - bonusListIDs.insert(bonusListIDs.begin(), contextBonuses.begin(), contextBonuses.end()); - } - } ItemTemplate const* itemTemplate = sObjectMgr->GetItemTemplate(itemId); if (!itemTemplate) @@ -1459,8 +1443,7 @@ public: return false; } - Item* item = playerTarget->StoreNewItem(dest, itemId, true, GenerateItemRandomBonusListId(itemId), GuidSet(), itemContext, - bonusListIDs.empty() ? nullptr : &bonusListIDs); + Item* item = playerTarget->StoreNewItem(dest, itemId, true, GuidSet(), itemContext); // remove binding (let GM give it to another player later) if (player == playerTarget) @@ -1481,7 +1464,7 @@ public: return true; } - static bool HandleAddItemSetCommand(ChatHandler* handler, Variant<Hyperlink<itemset>, uint32> itemSetId, Optional<std::string_view> bonuses, Optional<uint8> context) + static bool HandleAddItemSetCommand(ChatHandler* handler, Variant<Hyperlink<itemset>, uint32> itemSetId, Optional<std::string_view> /*bonuses*/, Optional<uint8> context) { // prevent generation all items with itemset field value '0' if (*itemSetId == 0) @@ -1493,12 +1476,6 @@ public: std::vector<int32> bonusListIDs; - // semicolon separated bonuslist ids (parse them after all arguments are extracted by strtok!) - if (bonuses) - for (std::string_view token : Trinity::Tokenize(*bonuses, ';', false)) - if (Optional<int32> bonusListId = Trinity::StringTo<int32>(token); bonusListId && *bonusListId) - bonusListIDs.push_back(*bonusListId); - ItemContext itemContext = ItemContext::NONE; if (context) itemContext = ItemContext(*context); @@ -1520,15 +1497,7 @@ public: InventoryResult msg = playerTarget->CanStoreNewItem(NULL_BAG, NULL_SLOT, dest, itemTemplatePair.first, 1); if (msg == EQUIP_ERR_OK) { - std::vector<int32> bonusListIDsForItem = bonusListIDs; // copy, bonuses for each depending on context might be different for each item - if (itemContext < ItemContext::Max) - { - std::vector<int32> contextBonuses = ItemBonusMgr::GetBonusListsForItem(itemTemplatePair.first, itemContext); - bonusListIDsForItem.insert(bonusListIDsForItem.begin(), contextBonuses.begin(), contextBonuses.end()); - } - - Item* item = playerTarget->StoreNewItem(dest, itemTemplatePair.first, true, {}, GuidSet(), itemContext, - bonusListIDsForItem.empty() ? nullptr : &bonusListIDsForItem); + Item* item = playerTarget->StoreNewItem(dest, itemTemplatePair.first, true, GuidSet(), itemContext); // remove binding (let GM give it to another player later) if (player == playerTarget) diff --git a/src/server/scripts/Commands/cs_reload.cpp b/src/server/scripts/Commands/cs_reload.cpp index 1812fabbdb7..2ea9ee14500 100644 --- a/src/server/scripts/Commands/cs_reload.cpp +++ b/src/server/scripts/Commands/cs_reload.cpp @@ -882,7 +882,6 @@ public: static bool HandleReloadItemRandomBonusListTemplatesCommand(ChatHandler* handler, char const* /*args*/) { TC_LOG_INFO("misc", "Re-Loading Random item bonus list definitions..."); - LoadItemRandomBonusListTemplates(); handler->SendGlobalGMSysMessage("DB table `item_random_bonus_list_template` reloaded."); return true; } |
