LeviLamina
Loading...
Searching...
No Matches
LootItemFunction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class HashedString;
8class ItemInstance;
9class ItemStack;
12class Random;
13struct Trade;
14namespace Json { class Value; }
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
22 // NOLINTEND
23
24public:
25 // prevent constructor by default
26 LootItemFunction& operator=(LootItemFunction const&);
29
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 // vIndex: 0
34 virtual ~LootItemFunction();
35
36 // vIndex: 4
37 virtual void apply(::ItemStack&, ::Random&, ::LootTableContext&) = 0;
38
39 // vIndex: 3
40 virtual int apply(::ItemStack& item, ::Random& random, ::Trade const& trade, ::LootTableContext& context);
41
42 // vIndex: 2
43 virtual void apply(::ItemInstance&, ::Random&, ::LootTableContext&) = 0;
44
45 // vIndex: 1
46 virtual int apply(::ItemInstance& item, ::Random& random, ::Trade const& trade, ::LootTableContext& context);
47 // NOLINTEND
48
49public:
50 // static functions
51 // NOLINTBEGIN
52 MCAPI static ::std::unique_ptr<::LootItemFunction>
53 deserialize(::Json::Value object, bool usingUpcomingCreatorFeaturesExperiment);
54 // NOLINTEND
55
56public:
57 // static variables
58 // NOLINTBEGIN
59 MCAPI static ::std::unordered_map<
61 ::std::function<::std::unique_ptr<
62 ::LootItemFunction>(::Json::Value&, ::std::vector<::std::unique_ptr<::LootItemCondition>>&)>> const&
63 mLootingFunctions();
64 // NOLINTEND
65
66public:
67 // destructor thunk
68 // NOLINTBEGIN
69 MCAPI void $dtor();
70 // NOLINTEND
71
72public:
73 // virtual function thunks
74 // NOLINTBEGIN
75 MCAPI int $apply(::ItemStack& item, ::Random& random, ::Trade const& trade, ::LootTableContext& context);
76
77 MCAPI int $apply(::ItemInstance& item, ::Random& random, ::Trade const& trade, ::LootTableContext& context);
78 // NOLINTEND
79
80public:
81 // vftables
82 // NOLINTBEGIN
83 MCAPI static void** $vftable();
84 // NOLINTEND
85};
Definition HashedString.h:5
Definition ItemInstance.h:16
Definition ItemStack.h:25
Definition Value.h:16
Definition LootItemCondition.h:12
Definition LootItemFunction.h:17
Definition LootTableContext.h:20
Definition Random.h:16
Definition Trade.h:5
Definition context.h:5
Definition Alias.h:14