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
MCAPI
~EnchantmentOption
();
47
// NOLINTEND
48
49
public
:
50
// destructor thunk
51
// NOLINTBEGIN
52
MCFOLD
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
// NOLINTEND
92
93
public
:
94
// member functions
95
// NOLINTBEGIN
96
MCAPI ::EnchantmentInstance _getRandomEnchantInstance(
::Random
& random)
const
;
97
98
MCAPI ::std::optional<::EnchantmentInstance> _trySelectEnchantmentFromOptions(
::Random
& random)
const
;
99
// NOLINTEND
100
101
public
:
102
// static functions
103
// NOLINTBEGIN
104
MCAPI static ::std::optional<::EnchantBookForTradingFunction::EnchantmentOption>
105
_parseEnchantmentOption(
::Json::Value
const
& enchantOptionData);
106
107
MCAPI static ::std::unique_ptr<::EnchantBookForTradingFunction>
108
deserialize(
::Json::Value
object
, ::std::vector<::std::unique_ptr<::LootItemCondition>>& predicates);
109
// NOLINTEND
110
111
public
:
112
// destructor thunk
113
// NOLINTBEGIN
114
115
// NOLINTEND
116
117
public
:
118
// virtual function thunks
119
// NOLINTBEGIN
120
MCFOLD
void
$apply(
::ItemStack
& item,
::Random
& random,
::LootTableContext
&);
121
122
MCFOLD
int
$apply(
::ItemStack
& item,
::Random
& random,
::Trade
const
& trade,
::LootTableContext
&
context
);
123
124
MCFOLD
void
$apply(
::ItemInstance
& item,
::Random
& random,
::LootTableContext
&);
125
126
MCFOLD
int
$apply(
::ItemInstance
& item,
::Random
& random,
::Trade
const
& trade,
::LootTableContext
&
context
);
127
// NOLINTEND
128
129
public
:
130
// vftables
131
// NOLINTBEGIN
132
MCAPI
static
void
** $vftable();
133
// NOLINTEND
134
};
EnchantBookForTradingFunction
Definition
EnchantBookForTradingFunction.h:20
EnchantmentInstance
Definition
EnchantmentInstance.h:8
ItemInstance
Definition
ItemInstance.h:16
ItemStack
Definition
ItemStack.h:25
Json::Value
Definition
Value.h:16
LootItemCondition
Definition
LootItemCondition.h:12
LootItemFunction
Definition
LootItemFunction.h:17
LootTableContext
Definition
LootTableContext.h:20
Random
Definition
Random.h:16
EnchantBookForTradingFunction::EnchantmentOption
Definition
EnchantBookForTradingFunction.h:28
Trade
Definition
Trade.h:5
context
Definition
context.h:5
ll::UntypedStorage
Definition
Alias.h:14
src
mc
world
level
storage
loot
functions
EnchantBookForTradingFunction.h
Generated on Sat Apr 26 2025 05:56:31 for LeviLamina by
1.12.0