Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
StonecutterContainerManagerModel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Publisher.h"
7#include "mc/world/containers/managers/models/ContainerManagerModel.h"
8#include "mc/world/inventory/network/TypedServerNetId.h"
9#include "mc/world/level/BlockPos.h"
10
11// auto generated forward declare list
12// clang-format off
14class ItemInstance;
15class ItemStack;
16class PacketSender;
17struct RecipeNetIdTag;
18namespace Bedrock::PubSub::ThreadModel { struct MultiThreaded; }
19// clang-format on
20
21class StonecutterContainerManagerModel : public ::ContainerManagerModel {
22public:
23 // StonecutterContainerManagerModel inner types define
24 using SelectedStoneIndexPublisher =
26
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<4, 12, ::BlockPos> mBlockPos;
31 ::ll::TypedStorage<8, 8, ::gsl::not_null<::PacketSender*>> mPacketSender;
32 ::ll::TypedStorage<4, 4, int> mSelectedStoneIndex;
33 ::ll::
35 mOnSelectedStoneIndexChangedPublisher;
36 // NOLINTEND
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~StonecutterContainerManagerModel() /*override*/ = default;
42
43 virtual ::std::vector<::ItemStack> getItemCopies() const /*override*/;
44
45 virtual void setSlot(int slot, ::ItemStack const& item, bool fromNetwork) /*override*/;
46
47 virtual ::ItemStack const& getSlot(int slot) const /*override*/;
48
49 virtual void setData(int, int) /*override*/;
50
51 virtual void setSelectedRecipeIndex(int recipeIndex, bool fromNetwork) /*override*/;
52
53 virtual ::std::optional<int> getSelectedRecipeIndex() const /*override*/;
54
55 virtual void broadcastChanges() /*override*/;
56
57 virtual bool isValid(float pickRange) /*override*/;
58
59 virtual ::ContainerScreenContext _postInit() /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65#ifdef LL_PLAT_C
66 MCNAPI void fireItemAcquiredEvent(::ItemInstance const& item, int count);
67#endif
68
69 MCNAPI ::std::vector<::std::pair<::ItemInstance, ::RecipeNetId>> getResultForItem(::ItemStack const& item);
70
71 MCNAPI void setSelectedStone(int collectionIndex);
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCNAPI ::std::vector<::ItemStack> $getItemCopies() const;
78
79 MCNAPI void $setSlot(int slot, ::ItemStack const& item, bool fromNetwork);
80
81 MCNAPI ::ItemStack const& $getSlot(int slot) const;
82
83 MCNAPI void $setData(int, int);
84
85 MCNAPI void $setSelectedRecipeIndex(int recipeIndex, bool fromNetwork);
86
87 MCNAPI ::std::optional<int> $getSelectedRecipeIndex() const;
88
89 MCNAPI void $broadcastChanges();
90
91 MCNAPI bool $isValid(float pickRange);
92
93 MCNAPI ::ContainerScreenContext $_postInit();
94
95
96 // NOLINTEND
97
98public:
99 // vftables
100 // NOLINTBEGIN
101 MCNAPI static void** $vftable();
102 // NOLINTEND
103};
Definition Publisher.h:25
Definition ContainerScreenContext.h:16
Definition ItemInstance.h:15
Definition ItemStack.h:26
Definition PacketSender.h:17
Definition StonecutterContainerManagerModel.h:21
MCAPI void setSelectedStone(int collectionIndex)
MCAPI::ContainerScreenContext $_postInit()
MCAPI ::std::vector<::std::pair<::ItemInstance, ::RecipeNetId > > getResultForItem(::ItemStack const &item)
static MCAPI void ** $vftable()
MCAPI::ItemStack const & $getSlot(int slot) const
MCAPI void $setSelectedRecipeIndex(int recipeIndex, bool fromNetwork)
MCAPI ::std::vector<::ItemStack > $getItemCopies() const
MCAPI bool $isValid(float pickRange)
MCAPI void $setData(int, int)
MCAPI void $setSlot(int slot, ::ItemStack const &item, bool fromNetwork)
MCAPI ::std::optional< int > $getSelectedRecipeIndex() const
Definition RecipeNetIdTag.h:5