LeviLamina
Loading...
Searching...
No Matches
PlayerTransactionSubject.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/ContainerID.h"
7#include "mc/world/inventory/transaction/IItemUseTransactionSubject.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockPos;
13class Container;
15class InventoryAction;
16class ItemStack;
18class Vec3;
21// clang-format on
22
23class PlayerTransactionSubject : public ::IItemUseTransactionSubject {
24public:
25 // member variables
26 // NOLINTBEGIN
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 PlayerTransactionSubject& operator=(PlayerTransactionSubject const&);
33 PlayerTransactionSubject(PlayerTransactionSubject const&);
34 PlayerTransactionSubject();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual void setSelectedSlot(int slot, ::ContainerID containerId) /*override*/;
40
41 virtual bool isAlive() const /*override*/;
42
43 virtual ::ItemStack unwrapItem(::NetworkItemStackDescriptor const& item) const /*override*/;
44
45 virtual ::ItemStack const& getSelectedItem() const /*override*/;
46
47 virtual void setSelectedItem(::ItemStack const& item) /*override*/;
48
49 virtual ::PlayerInventorySlotData getSelectedSlot() const /*override*/;
50
51 virtual float getMaxPickRange() const /*override*/;
52
53 virtual ::Vec3 getPosition() const /*override*/;
54
55 virtual void setPosition(::Vec3 const& position) /*override*/;
56
57 virtual void createTransactionContext(
58 ::std::function<void(::Container&, int, ::ItemStack const&, ::ItemStack const&)>&& callback,
59 ::std::function<void()>&& execute
60 ) /*override*/;
61
62 virtual void addExpectedAction(::InventoryAction const& action) /*override*/;
63
64 virtual bool baseUseItem(::ItemStack& item) /*override*/;
65
66 virtual bool baseUseItemAsAttack(::ItemStack& item, ::Vec3 const& aimDirection) /*override*/;
67
68 virtual ::InteractionResult useItemOn(
69 ::ItemStack& item,
70 ::BlockPos const& at,
71 uchar face,
72 ::Vec3 const& hit,
73 ::Block const* targetBlock,
74 bool isFirstEvent
75 ) /*override*/;
76
77 virtual void resendBlocksAroundArea(::BlockPos const& pos, uchar facing) const /*override*/;
78
79 virtual void resendPlayerState() const /*override*/;
80
81 virtual void sendPlayerInventory() const /*override*/;
82
83 virtual bool isSneaking() const /*override*/;
84
85 virtual ::Block const& unwrapBlock(uint const& block) const /*override*/;
86
87 virtual ::Block const& getBlock(::BlockPos const& pos) const /*override*/;
88
89 virtual ::Block const& getExtraBlock(::BlockPos const& pos) const /*override*/;
90
91 virtual bool isLastBuildBlockInteractive() const /*override*/;
92
93 virtual void sendBlockInteractedWith(::BlockPos const& pos) /*override*/;
94
95 virtual ::DepenetrationComponent& getDepenetrationComponent() /*override*/;
96
97 virtual ~PlayerTransactionSubject() /*override*/ = default;
98 // NOLINTEND
99
100public:
101 // virtual function thunks
102 // NOLINTBEGIN
103 MCAPI void $setSelectedSlot(int slot, ::ContainerID containerId);
104
105 MCAPI bool $isAlive() const;
106
107 MCAPI ::ItemStack $unwrapItem(::NetworkItemStackDescriptor const& item) const;
108
109 MCAPI ::ItemStack const& $getSelectedItem() const;
110
111 MCAPI void $setSelectedItem(::ItemStack const& item);
112
113 MCAPI ::PlayerInventorySlotData $getSelectedSlot() const;
114
115 MCAPI float $getMaxPickRange() const;
116
117 MCAPI ::Vec3 $getPosition() const;
118
119 MCAPI void $setPosition(::Vec3 const& position);
120
121 MCAPI void $createTransactionContext(
122 ::std::function<void(::Container&, int, ::ItemStack const&, ::ItemStack const&)>&& callback,
123 ::std::function<void()>&& execute
124 );
125
126 MCAPI void $addExpectedAction(::InventoryAction const& action);
127
128 MCAPI bool $baseUseItem(::ItemStack& item);
129
130 MCAPI bool $baseUseItemAsAttack(::ItemStack& item, ::Vec3 const& aimDirection);
131
132 MCAPI ::InteractionResult $useItemOn(
133 ::ItemStack& item,
134 ::BlockPos const& at,
135 uchar face,
136 ::Vec3 const& hit,
137 ::Block const* targetBlock,
138 bool isFirstEvent
139 );
140
141 MCAPI void $resendBlocksAroundArea(::BlockPos const& pos, uchar facing) const;
142
143 MCAPI void $resendPlayerState() const;
144
145 MCAPI void $sendPlayerInventory() const;
146
147 MCAPI bool $isSneaking() const;
148
149 MCAPI ::Block const& $unwrapBlock(uint const& block) const;
150
151 MCAPI ::Block const& $getBlock(::BlockPos const& pos) const;
152
153 MCAPI ::Block const& $getExtraBlock(::BlockPos const& pos) const;
154
155 MCAPI bool $isLastBuildBlockInteractive() const;
156
157 MCAPI void $sendBlockInteractedWith(::BlockPos const& pos);
158
159 MCAPI ::DepenetrationComponent& $getDepenetrationComponent();
160
161
162 // NOLINTEND
163
164public:
165 // vftables
166 // NOLINTBEGIN
167 MCAPI static void** $vftable();
168 // NOLINTEND
169};
Definition BlockPos.h:19
Definition Block.h:43
Definition Container.h:33
Definition IItemUseTransactionSubject.h:22
Definition InteractionResult.h:5
Definition InventoryAction.h:15
Definition ItemStack.h:26
Definition NetworkItemStackDescriptor.h:17
Definition Vec3.h:10
Definition DepenetrationComponent.h:13
Definition PlayerInventorySlotData.h:8
Definition Alias.h:14