Skip to content

Commit 148fb10

Browse files
Pass the random generator through an argument to inventory_changer::item_generator::generateItemFromContainer()
1 parent 24e3838 commit 148fb10

File tree

4 files changed

+8
-6
lines changed

4 files changed

+8
-6
lines changed

Source/InventoryChanger/Backend/Request/ItemActivationHandler.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,8 @@ class ItemActivationHandler {
5353
{
5454
assert(container->gameItem().isCrate() && key->gameItem().isCaseKey());
5555

56-
auto generatedItem = item_generator::generateItemFromContainer(gameItemLookup, crateLootLookup, *container, std::to_address(key));
56+
Helpers::RandomGenerator randomGenerator;
57+
auto generatedItem = item_generator::generateItemFromContainer(randomGenerator, gameItemLookup, crateLootLookup, *container, std::to_address(key));
5758
if (!generatedItem.has_value())
5859
return;
5960

@@ -67,7 +68,8 @@ class ItemActivationHandler {
6768
{
6869
assert(container->gameItem().isCrate());
6970

70-
auto generatedItem = item_generator::generateItemFromContainer(gameItemLookup, crateLootLookup, *container, nullptr);
71+
Helpers::RandomGenerator randomGenerator;
72+
auto generatedItem = item_generator::generateItemFromContainer(randomGenerator, gameItemLookup, crateLootLookup, *container, nullptr);
7173
if (!generatedItem.has_value())
7274
return;
7375

Source/InventoryChanger/Backend/Request/XRayScannerHandler.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ class XRayScannerHandler {
1818
{
1919
assert(crate->gameItem().isCrate());
2020

21-
auto generatedItem = item_generator::generateItemFromContainer(gameItemLookup, crateLootLookup, *crate, nullptr);
21+
Helpers::RandomGenerator randomGenerator;
22+
auto generatedItem = item_generator::generateItemFromContainer(randomGenerator, gameItemLookup, crateLootLookup, *crate, nullptr);
2223
if (!generatedItem.has_value())
2324
return;
2425

Source/InventoryChanger/ItemGenerator/ItemGenerator.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -860,7 +860,7 @@ namespace inventory_changer::item_generator
860860
namespace inventory_changer::item_generator
861861
{
862862

863-
std::optional<inventory::Item> generateItemFromContainer(const game_items::Lookup& gameItemLookup, const game_items::CrateLootLookup& crateLootLookup, const inventory::Item& caseItem, const inventory::Item* crateKey) noexcept
863+
std::optional<inventory::Item> generateItemFromContainer(Helpers::RandomGenerator& randomGenerator, const game_items::Lookup& gameItemLookup, const game_items::CrateLootLookup& crateLootLookup, const inventory::Item& caseItem, const inventory::Item* crateKey) noexcept
864864
{
865865
assert(caseItem.gameItem().isCrate());
866866

@@ -869,7 +869,6 @@ std::optional<inventory::Item> generateItemFromContainer(const game_items::Looku
869869
if (!lootList)
870870
return std::nullopt;
871871

872-
Helpers::RandomGenerator randomGenerator{};
873872
const auto& unlockedItem = getRandomItemFromContainer(randomGenerator, gameItemLookup, crateLootLookup, caseItem.gameItem().getWeaponID(), *lootList);
874873
DropGenerator dropGenerator{ gameItemLookup, AttributeGenerator{ randomGenerator } };
875874
return inventory::Item{ unlockedItem, { dropGenerator.createCommonProperties(crateKey), dropGenerator.createVariantProperties(unlockedItem, caseItem, lootList->willProduceStatTrak) } };

Source/InventoryChanger/ItemGenerator/ItemGenerator.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
namespace inventory_changer::item_generator
1414
{
15-
[[nodiscard]] std::optional<inventory::Item> generateItemFromContainer(const game_items::Lookup& gameItemLookup, const game_items::CrateLootLookup& crateLootLookup, const inventory::Item& caseItem, const inventory::Item* crateKey) noexcept;
15+
[[nodiscard]] std::optional<inventory::Item> generateItemFromContainer(Helpers::RandomGenerator& randomGenerator, const game_items::Lookup& gameItemLookup, const game_items::CrateLootLookup& crateLootLookup, const inventory::Item& caseItem, const inventory::Item* crateKey) noexcept;
1616
inventory::Item::Properties createDefaultItemProperties(Helpers::RandomGenerator& randomGenerator, const game_items::Storage& gameItemStorage, const game_items::Item& item) noexcept;
1717
}
1818

0 commit comments

Comments
 (0)