LeviLamina
Loading...
Searching...
No Matches
LootTable.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Container;
8class ItemStack;
9class LootPool;
11class Random;
12namespace Json { class Value; }
13// clang-format on
14
15class LootTable {
16public:
17 // member variables
18 // NOLINTBEGIN
19 ::ll::TypedStorage<8, 32, ::std::string> mDir;
20 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::LootPool>>> mPools;
21 // NOLINTEND
22
23public:
24 // member functions
25 // NOLINTBEGIN
26 MCAPI void deserialize(::Json::Value const& table, bool usingUpcomingCreatorFeaturesExperiment);
27
28 MCAPI void fill(::Container& container, ::Random& random, ::LootTableContext& context);
29
30 MCAPI ::std::vector<int> getAvailableSlots(::Container& container, ::Random& random);
31
32 MCAPI ::std::vector<::ItemStack> getRandomItems(::Random& random, ::LootTableContext& context) const;
33
34 MCAPI void shuffleAndSplitItems(::std::vector<::ItemStack>& result, int availableSlots, ::Random& random);
35 // NOLINTEND
36};
Definition Container.h:31
Definition ItemStack.h:23
Definition Value.h:16
Definition LootPool.h:13
Definition LootTableContext.h:19
Definition LootTable.h:15
Definition Random.h:10
Definition context.h:5