LeviLamina
Loading...
Searching...
No Matches
EnchantBookForTradingFunction.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
5
// auto generated inclusion list
6
#include "mc/world/level/storage/loot/functions/LootItemFunction.h"
7
8
// auto generated forward declare list
9
// clang-format off
10
class
EnchantmentInstance
;
11
class
ItemInstance
;
12
class
ItemStack
;
13
class
LootItemCondition
;
14
class
LootTableContext
;
15
class
Random
;
16
struct
Trade
;
17
namespace
Json {
class
Value; }
18
// clang-format on
19
20
class
EnchantBookForTradingFunction
:
public
::LootItemFunction
{
21
public
:
22
// EnchantBookForTradingFunction inner types declare
23
// clang-format off
24
struct
EnchantmentOption
;
25
// clang-format on
26
27
// EnchantBookForTradingFunction inner types define
28
struct
EnchantmentOption
{
29
public
:
30
// member variables
31
// NOLINTBEGIN
32
::ll::UntypedStorage<8, 32>
mUnk85cc40;
33
::ll::UntypedStorage<4, 4>
mUnk738917;
34
::ll::UntypedStorage<4, 4>
mUnk59d95d;
35
// NOLINTEND
36
37
public
:
38
// prevent constructor by default
39
EnchantmentOption
& operator=(
EnchantmentOption
const
&);
40
EnchantmentOption
(
EnchantmentOption
const
&);
41
EnchantmentOption
();
42
43
public
:
44
// member functions
45
// NOLINTBEGIN
46
MCNAPI
~EnchantmentOption
();
47
// NOLINTEND
48
49
public
:
50
// destructor thunk
51
// NOLINTBEGIN
52
MCNAPI
void
$dtor
();
53
// NOLINTEND
54
};
55
56
public
:
57
// member variables
58
// NOLINTBEGIN
59
::ll::UntypedStorage<4, 4>
mUnk1be4fe;
60
::ll::UntypedStorage<4, 4>
mUnk751251;
61
::ll::UntypedStorage<4, 4>
mUnk18274c;
62
::ll::UntypedStorage<4, 4>
mUnk677e06;
63
::ll::UntypedStorage<8, 24>
mUnk4675c9;
64
// NOLINTEND
65
66
public
:
67
// prevent constructor by default
68
EnchantBookForTradingFunction
& operator=(
EnchantBookForTradingFunction
const
&);
69
EnchantBookForTradingFunction
(
EnchantBookForTradingFunction
const
&);
70
EnchantBookForTradingFunction
();
71
72
public
:
73
// virtual functions
74
// NOLINTBEGIN
75
// vIndex: 0
76
virtual
~EnchantBookForTradingFunction
()
/*override*/
=
default
;
77
78
// vIndex: 4
79
virtual
void
apply(
::ItemStack
& item,
::Random
& random,
::LootTableContext
&)
/*override*/
;
80
81
// vIndex: 3
82
virtual
int
83
apply(
::ItemStack
& item,
::Random
& random,
::Trade
const
& trade,
::LootTableContext
&
context
)
/*override*/
;
84
85
// vIndex: 2
86
virtual
void
apply(
::ItemInstance
& item,
::Random
& random,
::LootTableContext
&)
/*override*/
;
87
88
// vIndex: 1
89
virtual
int
90
apply(
::ItemInstance
& item,
::Random
& random,
::Trade
const
& trade,
::LootTableContext
&
context
)
/*override*/
;
91
92
// vIndex: 5
93
virtual ::LootItemFunction::FunctionType getFunctionType() const
/*override*/
;
94
// NOLINTEND
95
96
public:
97
// member functions
98
// NOLINTBEGIN
99
MCNAPI ::
EnchantmentInstance
_getRandomEnchantInstance
(::
Random
& random) const;
100
101
MCNAPI ::
std
::optional<::
EnchantmentInstance
>
_trySelectEnchantmentFromOptions
(::
Random
& random) const;
102
// NOLINTEND
103
104
public:
105
// static functions
106
// NOLINTBEGIN
107
MCNAPI static ::
std
::optional<::
EnchantBookForTradingFunction
::
EnchantmentOption
>
108
_parseEnchantmentOption
(::Json::Value const& enchantOptionData);
109
110
MCNAPI static ::
std
::unique_ptr<::
EnchantBookForTradingFunction
>
111
deserialize
(::Json::Value
object
, ::
std
::vector<::
std
::unique_ptr<::
LootItemCondition
>>& predicates);
112
// NOLINTEND
113
114
public:
115
// virtual function thunks
116
// NOLINTBEGIN
117
MCNAPI
void
$apply
(::
ItemStack
& item, ::
Random
& random, ::
LootTableContext
&);
118
119
MCNAPI
int
$apply
(::
ItemStack
& item, ::
Random
& random, ::
Trade
const& trade, ::
LootTableContext
&
context
);
120
121
MCNAPI
void
$apply
(::
ItemInstance
& item, ::
Random
& random, ::
LootTableContext
&);
122
123
MCNAPI
int
$apply
(::
ItemInstance
& item, ::
Random
& random, ::
Trade
const& trade, ::
LootTableContext
&
context
);
124
125
MCNAPI ::
LootItemFunction
::FunctionType
$getFunctionType
() const;
126
// NOLINTEND
127
128
public:
129
// vftables
130
// NOLINTBEGIN
131
MCNAPI static
void
**
$vftable
();
132
// NOLINTEND
133
};
EnchantBookForTradingFunction
Definition
EnchantBookForTradingFunction.h:20
EnchantBookForTradingFunction::$getFunctionType
MCAPI::LootItemFunction::FunctionType $getFunctionType() const
EnchantBookForTradingFunction::_getRandomEnchantInstance
MCAPI::EnchantmentInstance _getRandomEnchantInstance(::Random &random) const
EnchantBookForTradingFunction::$vftable
static MCAPI void ** $vftable()
EnchantBookForTradingFunction::deserialize
static MCAPI ::std::unique_ptr<::EnchantBookForTradingFunction > deserialize(::Json::Value object, ::std::vector<::std::unique_ptr<::LootItemCondition > > &predicates)
EnchantBookForTradingFunction::_trySelectEnchantmentFromOptions
MCAPI ::std::optional<::EnchantmentInstance > _trySelectEnchantmentFromOptions(::Random &random) const
EnchantBookForTradingFunction::$apply
MCAPI void $apply(::ItemStack &item, ::Random &random, ::LootTableContext &)
EnchantBookForTradingFunction::_parseEnchantmentOption
static MCAPI ::std::optional<::EnchantBookForTradingFunction::EnchantmentOption > _parseEnchantmentOption(::Json::Value const &enchantOptionData)
EnchantmentInstance
Definition
EnchantmentInstance.h:8
ItemInstance
Definition
ItemInstance.h:15
ItemStack
Definition
ItemStack.h:23
LootItemCondition
Definition
LootItemCondition.h:12
LootItemFunction
Definition
LootItemFunction.h:17
LootTableContext
Definition
LootTableContext.h:19
Random
Definition
Random.h:10
std
STL namespace.
EnchantBookForTradingFunction::EnchantmentOption
Definition
EnchantBookForTradingFunction.h:28
EnchantBookForTradingFunction::EnchantmentOption::~EnchantmentOption
MCAPI ~EnchantmentOption()
EnchantBookForTradingFunction::EnchantmentOption::$dtor
MCAPI void $dtor()
Trade
Definition
Trade.h:10
context
Definition
context.h:5
ll::UntypedStorage
Definition
Alias.h:14
src-server
mc
world
level
storage
loot
functions
EnchantBookForTradingFunction.h
Generated on Tue Nov 25 2025 04:01:56 for LeviLamina by
1.12.0