2021-12-05 17:54:36 +00:00
|
|
|
#include "NjScrollChestServer.h"
|
|
|
|
#include "InventoryComponent.h"
|
|
|
|
|
|
|
|
void NjScrollChestServer::OnUse(Entity* self, Entity* user) {
|
|
|
|
const auto keyLOT = self->GetVar<LOT>(u"KeyNum");
|
|
|
|
const auto rewardItemLOT = self->GetVar<LOT>(u"openItemID");
|
|
|
|
|
2023-06-07 07:23:50 +00:00
|
|
|
auto playerInventory = user->GetComponent<InventoryComponent>();
|
2021-12-05 17:54:36 +00:00
|
|
|
if (playerInventory != nullptr && playerInventory->GetLotCount(keyLOT) == 1) {
|
|
|
|
|
|
|
|
// Check for the key and remove
|
|
|
|
playerInventory->RemoveItem(keyLOT, 1);
|
|
|
|
|
|
|
|
// Reward the player with the item set
|
2023-05-02 22:39:21 +00:00
|
|
|
playerInventory->AddItem(rewardItemLOT, 1, eLootSourceType::NONE);
|
2021-12-05 17:54:36 +00:00
|
|
|
}
|
|
|
|
}
|