LeviLamina
Loading...
Searching...
No Matches
MerchantRecipe.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/world/inventory/network/TypedServerNetId.h"
5#include "mc/world/inventory/network/crafting/RecipeNetIdTag.h"
6#include "mc/world/item/ItemInstance.h"
7
8// auto generated inclusion list
9#include "mc/world/inventory/network/TypedServerNetId.h"
10#include "mc/world/item/ItemInstance.h"
11
12// auto generated forward declare list
13// clang-format off
14class BaseGameVersion;
15class CompoundTag;
16class SaveContext;
17struct RecipeNetIdTag;
18// clang-format on
19
20class MerchantRecipe {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 128, ::ItemInstance> mBuyA;
25 ::ll::TypedStorage<8, 128, ::ItemInstance> mBuyB;
26 ::ll::TypedStorage<8, 128, ::ItemInstance> mSell;
27 ::ll::TypedStorage<4, 4, int> mTier;
28 ::ll::TypedStorage<4, 4, int> mUses;
29 ::ll::TypedStorage<4, 4, int> mMaxUses;
30 ::ll::TypedStorage<4, 4, uint> mTraderExp;
31 ::ll::TypedStorage<1, 1, bool> mRewardExp;
32 ::ll::TypedStorage<4, 4, int> mDemand;
33 ::ll::TypedStorage<4, 4, int> mBuyCountA;
34 ::ll::TypedStorage<4, 4, int> mBuyCountB;
35 ::ll::TypedStorage<4, 4, float> mPriceMultiplierA;
36 ::ll::TypedStorage<4, 4, float> mPriceMultiplierB;
37 ::ll::TypedStorage<4, 4, ::RecipeNetId> mRecipeNetId;
38 // NOLINTEND
39
40#ifdef LL_PLAT_S
41public:
42 // prevent constructor by default
43 MerchantRecipe();
44
45#else // LL_PLAT_C
46#endif
47public:
48 // member functions
49 // NOLINTBEGIN
50#ifdef LL_PLAT_C
51 MCAPI MerchantRecipe();
52#endif
53
54 MCAPI MerchantRecipe(::MerchantRecipe&&);
55
56 MCAPI MerchantRecipe(::MerchantRecipe const&);
57
58 MCAPI explicit MerchantRecipe(::CompoundTag const* tag);
59
60 MCAPI MerchantRecipe(::ItemInstance const& buy, ::ItemInstance const& sell);
61
62 MCAPI MerchantRecipe(::ItemInstance const& buyA, ::ItemInstance const& buyB, ::ItemInstance const& sell);
63
64 MCAPI void calculateDemandPrices(
65 int minorPositiveGossip,
66 int majorPositiveGossip,
67 int nearbyCuredDiscount,
68 int heroEffectAmplifier,
69 bool hasHeroOfTheVillage,
70 ::BaseGameVersion baseGameVersion
71 );
72
73 MCAPI ::std::unique_ptr<::CompoundTag> createTag(bool includeNetInfo, ::SaveContext const& saveContext) const;
74
75 MCAPI bool isSame(::MerchantRecipe const& lhs) const;
76
77 MCAPI void legacyCalculateDemandPrices(int lowTierDiscount, int highTierDiscount);
78
79 MCAPI void load(::CompoundTag const* tag);
80
81 MCAPI ::MerchantRecipe& operator=(::MerchantRecipe const&);
82
83 MCAPI ~MerchantRecipe();
84 // NOLINTEND
85
86public:
87 // constructor thunks
88 // NOLINTBEGIN
89#ifdef LL_PLAT_C
90 MCAPI void* $ctor();
91#endif
92
93 MCFOLD void* $ctor(::MerchantRecipe&&);
94
95 MCFOLD void* $ctor(::MerchantRecipe const&);
96
97 MCAPI void* $ctor(::CompoundTag const* tag);
98
99 MCAPI void* $ctor(::ItemInstance const& buy, ::ItemInstance const& sell);
100
101 MCAPI void* $ctor(::ItemInstance const& buyA, ::ItemInstance const& buyB, ::ItemInstance const& sell);
102 // NOLINTEND
103
104public:
105 // destructor thunk
106 // NOLINTBEGIN
107 MCAPI void $dtor();
108 // NOLINTEND
109};
Definition BaseGameVersion.h:8
Definition CompoundTag.h:23
Definition ItemInstance.h:15
Definition SaveContext.h:5
Definition RecipeNetIdTag.h:5