LeviLamina
Loading...
Searching...
No Matches
ItemUseOnActorInventoryTransaction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/legacy/ActorRuntimeID.h"
8#include "mc/platform/Result.h"
9#include "mc/world/inventory/transaction/ComplexInventoryTransaction.h"
10#include "mc/world/inventory/transaction/InventoryTransactionError.h"
11#include "mc/world/item/NetworkItemStackDescriptor.h"
12
13// auto generated forward declare list
14// clang-format off
15class BinaryStream;
16class BlockPalette;
17class ItemStack;
18class Player;
20// clang-format on
21
22class ItemUseOnActorInventoryTransaction : public ::ComplexInventoryTransaction {
23public:
24 // ItemUseOnActorInventoryTransaction inner types define
25 enum class ActionType : int {
26 Interact = 0,
27 Attack = 1,
28 ItemInteract = 2,
29 };
30
31public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<8, 8, ::ActorRuntimeID> mRuntimeId;
35 ::ll::TypedStorage<4, 4, ::ItemUseOnActorInventoryTransaction::ActionType> mActionType;
36 ::ll::TypedStorage<4, 4, int> mSlot;
37 ::ll::TypedStorage<8, 96, ::NetworkItemStackDescriptor> mItem;
38 ::ll::TypedStorage<4, 12, ::Vec3> mFromPos;
39 ::ll::TypedStorage<4, 12, ::Vec3> mHitPos;
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 ItemUseOnActorInventoryTransaction(ItemUseOnActorInventoryTransaction const&);
45 ItemUseOnActorInventoryTransaction();
46
47public:
48 // virtual functions
49 // NOLINTBEGIN
50 virtual ~ItemUseOnActorInventoryTransaction() /*override*/;
51
52 virtual ::Bedrock::Result<void> read(::ReadOnlyBinaryStream& stream) /*override*/;
53
54 virtual void write(::BinaryStream& stream) const /*override*/;
55
56 virtual void postLoadItems(::BlockPalette& blockPalette, bool isClientSide) /*override*/;
57
58 virtual void onTransactionError(::Player& player, ::InventoryTransactionError error) const /*override*/;
59
60 virtual ::InventoryTransactionError handle(::Player& player, bool isSenderAuthority) const /*override*/;
61 // NOLINTEND
62
63public:
64 // member functions
65 // NOLINTBEGIN
66 MCAPI ::ItemUseOnActorInventoryTransaction& operator=(::ItemUseOnActorInventoryTransaction const&);
67
68 MCAPI ::ItemUseOnActorInventoryTransaction& setSelectedItem(::ItemStack const& item);
69 // NOLINTEND
70
71public:
72 // destructor thunk
73 // NOLINTBEGIN
74 MCAPI void $dtor();
75 // NOLINTEND
76
77public:
78 // virtual function thunks
79 // NOLINTBEGIN
80 MCAPI ::Bedrock::Result<void> $read(::ReadOnlyBinaryStream& stream);
81
82 MCAPI void $write(::BinaryStream& stream) const;
83
84 MCFOLD void $postLoadItems(::BlockPalette& blockPalette, bool isClientSide);
85
86 MCFOLD void $onTransactionError(::Player& player, ::InventoryTransactionError error) const;
87
88 MCAPI ::InventoryTransactionError $handle(::Player& player, bool isSenderAuthority) const;
89
90
91 // NOLINTEND
92
93public:
94 // vftables
95 // NOLINTBEGIN
96 MCNAPI static void** $vftable();
97 // NOLINTEND
98};
99
100// free functions
101// NOLINTBEGIN
102MCAPI bool operator==(::ItemUseOnActorInventoryTransaction const& lhs, ::ItemUseOnActorInventoryTransaction const& rhs);
103// NOLINTEND
Definition BinaryStream.h:10
Definition BlockPalette.h:18
Definition ComplexInventoryTransaction.h:20
Definition ItemStack.h:26
Definition ItemUseOnActorInventoryTransaction.h:22
static MCAPI void ** $vftable()
Definition Player.h:129
Definition ReadOnlyBinaryStream.h:8