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
11class ItemStackBase;
14class Random;
15struct Trade;
16namespace Json { class Value; }
17// clang-format on
18
20public:
21 // EnchantBookForTradingFunction inner types declare
22 // clang-format off
23 struct EnchantmentOption;
24 // clang-format on
25
26 // EnchantBookForTradingFunction inner types define
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 32, ::std::string> mEnchantmentName;
32 ::ll::TypedStorage<4, 4, int> mMinLevel;
33 ::ll::TypedStorage<4, 4, int> mMaxLevel;
34 // NOLINTEND
35 };
36
37public:
38 // member variables
39 // NOLINTBEGIN
40 ::ll::TypedStorage<4, 4, int> mBaseCost;
41 ::ll::TypedStorage<4, 4, int> mRandomBaseCost;
42 ::ll::TypedStorage<4, 4, int> mRandomPerLevelCost;
43 ::ll::TypedStorage<4, 4, int> mPerLevelCost;
44 ::ll::TypedStorage<8, 24, ::std::vector<::EnchantBookForTradingFunction::EnchantmentOption>> mEnchantmentOptions;
45 // NOLINTEND
46
47public:
48 // virtual functions
49 // NOLINTBEGIN
50 virtual ::LootItemFunction::FunctionType getFunctionType() const /*override*/;
51
52 virtual void applyPreVersion(::ItemStackBase& item, ::Random& random, ::LootTableContext&) /*override*/;
53
54 virtual int
55 applyPreVersion(::ItemStackBase& item, ::Random& random, ::LootTableContext&, ::Trade const&) /*override*/;
56 // NOLINTEND
57
58public:
59 // member functions
60 // NOLINTBEGIN
61 MCAPI ::std::optional<::EnchantmentInstance> _trySelectEnchantmentFromOptions(::Random& random) const;
62 // NOLINTEND
63
64public:
65 // static functions
66 // NOLINTBEGIN
67#ifdef LL_PLAT_S
68 MCAPI static ::std::unique_ptr<::EnchantBookForTradingFunction>
69 deserialize(::Json::Value object, ::std::vector<::std::unique_ptr<::LootItemCondition>>& predicates);
70#endif
71 // NOLINTEND
72
73public:
74 // virtual function thunks
75 // NOLINTBEGIN
76 MCFOLD ::LootItemFunction::FunctionType $getFunctionType() const;
77
78 MCAPI void $applyPreVersion(::ItemStackBase& item, ::Random& random, ::LootTableContext&);
79
80 MCAPI int $applyPreVersion(::ItemStackBase& item, ::Random& random, ::LootTableContext&, ::Trade const&);
81
82
83 // NOLINTEND
84};
Definition EnchantBookForTradingFunction.h:19
Definition EnchantmentInstance.h:8
Definition ItemStackBase.h:44
Definition Value.h:16
Definition LootItemCondition.h:12
Definition LootItemFunction.h:20
Definition LootTableContext.h:20
Definition Random.h:10
STL namespace.
Definition EnchantBookForTradingFunction.h:27
Definition Trade.h:10