18#ifndef __LOOTITEMSTORAGE_H
19#define __LOOTITEMSTORAGE_H
27#include <shared_mutex>
28#include <unordered_map>
86 static std::shared_mutex*
GetLock();
100#define sLootItemStorage LootItemStorage::instance()
SQLTransaction< CharacterDatabaseConnection > CharacterDatabaseTransaction
uint32 ItemRandomBonusListId
LootItemStorage & operator=(LootItemStorage &&)=delete
LootItemStorage & operator=(LootItemStorage const &)=delete
LootItemStorage(LootItemStorage &&)=delete
static LootItemStorage * instance()
void RemoveStoredMoneyForContainer(uint64 containerId)
void AddNewStoredLoot(uint64 containerId, Loot *loot, Player *player)
LootItemStorage()=default
static std::shared_mutex * GetLock()
LootItemStorage(LootItemStorage const &)=delete
void RemoveStoredLootItemForContainer(uint64 containerId, LootItemType type, uint32 itemId, uint32 count, uint32 itemIndex)
~LootItemStorage()=default
bool LoadStoredLoot(Item *item, Player *player)
void RemoveStoredLootForContainer(uint64 containerId)
uint64 GetContainer() const
std::unordered_multimap< uint32, StoredLootItem > StoredLootItemContainer
void AddLootItem(LootItem const &lootItem, CharacterDatabaseTransaction trans)
StoredLootItemContainer _lootItems
uint64 const _containerId
void AddMoney(uint32 money, CharacterDatabaseTransaction trans)
StoredLootContainer(uint64 containerId)
void RemoveItem(LootItemType type, uint32 itemId, uint32 count, uint32 itemIndex)
StoredLootItemContainer const & GetLootItems() const
ItemRandomBonusListId RandomBonusListId
std::vector< int32 > BonusListIDs