Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
LootPool.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/storage/loot/RandomValueBounds.h"
7
8// auto generated forward declare list
9// clang-format off
10class ItemStack;
12class LootPoolEntry;
13class LootPoolTiers;
15class Random;
16class SemVersion;
17namespace Json { class Value; }
18// clang-format on
19
20class LootPool {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::LootPoolEntry>>> mEntries;
25 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::LootItemCondition>>> mConditions;
26 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::LootPoolTiers>> mTiers;
27 ::ll::TypedStorage<4, 8, ::RandomValueBounds> mRolls;
28 ::ll::TypedStorage<4, 8, ::RandomValueBounds> mBonusRolls;
29 // NOLINTEND
30
31public:
32 // member functions
33 // NOLINTBEGIN
34#ifdef LL_PLAT_S
35 MCNAPI void addRandomItem(::std::vector<::ItemStack>& result, ::Random& random, ::LootTableContext& context);
36#endif
37
38 MCAPI void addRandomItems(::std::vector<::ItemStack>& result, ::Random& random, ::LootTableContext& context);
39
40#ifdef LL_PLAT_S
41 MCNAPI void deserialize(
42 ::Json::Value const& pool,
43 bool usingUpcomingCreatorFeaturesExperiment,
44 ::SemVersion const& jsonVersion
45 );
46#endif
47
48 MCNAPI ~LootPool();
49 // NOLINTEND
50
51public:
52 // destructor thunk
53 // NOLINTBEGIN
54 MCNAPI void $dtor();
55 // NOLINTEND
56};
Definition ItemStack.h:26
Definition Value.h:16
Definition LootItemCondition.h:12
Definition LootPoolEntry.h:19
Definition LootPoolTiers.h:5
Definition LootPool.h:20
MCAPI void $dtor()
MCAPI ~LootPool()
Definition LootTableContext.h:20
Definition Random.h:10
Definition SemVersion.h:15
Definition context.h:5