LeviLamina
Loading...
Searching...
No Matches
EquippableComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/ContainerID.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class CompoundTag;
12class ItemDescriptor;
13class ItemStack;
15struct SlotDescriptor;
16// clang-format on
17
18class EquippableComponent {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 24, ::std::vector<::SlotDescriptor>> mSlots;
23 // NOLINTEND
24
25public:
26 // prevent constructor by default
27 EquippableComponent& operator=(EquippableComponent const&);
28 EquippableComponent(EquippableComponent const&);
29 EquippableComponent();
30
31public:
32 // member functions
33 // NOLINTBEGIN
34 MCAPI EquippableComponent(::EquippableComponent&& other);
35
36 MCAPI ::UpdateEquipPacket createDataPacket(::Actor& owner, ::ContainerID containerID) const;
37
38 MCAPI ::std::unique_ptr<::CompoundTag> createTag(::Actor& owner) const;
39
40 MCAPI int getSlotCount() const;
41
42 MCAPI bool hasSlotAllowedItems(int slotNumber) const;
43
44 MCAPI bool onItemChanged(::Actor& owner, uint64 slotIdx, ::ItemStack const& item) const;
45
46 MCAPI ::EquippableComponent& operator=(::EquippableComponent&& other);
47
48#ifdef LL_PLAT_C
49 MCAPI void setDataFromPacket(::UpdateEquipPacket const& packet);
50#endif
51
52 MCAPI ::std::vector<::ItemDescriptor> const* tryGetSlotAllowedItems(int slotNumber) const;
53
54 MCAPI ~EquippableComponent();
55 // NOLINTEND
56
57public:
58 // constructor thunks
59 // NOLINTBEGIN
60 MCFOLD void* $ctor(::EquippableComponent&& other);
61 // NOLINTEND
62
63public:
64 // destructor thunk
65 // NOLINTBEGIN
66 MCAPI void $dtor();
67 // NOLINTEND
68};
Definition Actor.h:125
Definition CompoundTag.h:23
Definition ItemDescriptor.h:25
Definition ItemStack.h:35
Definition UpdateEquipPacket.h:19
Definition SlotDescriptor.h:9