LeviLamina
Loading...
Searching...
No Matches
RepairableItemComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/components/NetworkedItemComponent.h"
7#include "mc/world/item/components/RepairItemEntry.h"
8#include "mc/world/level/storage/AllExperiments.h"
9
10// auto generated forward declare list
11// clang-format off
12class ExpressionNode;
13class HashedString;
14class ItemStack;
15class ItemStackBase;
16class SemVersion;
17struct RepairItemEntry;
18struct RepairItemResult;
19namespace SharedTypes::v1_20_50 { struct RepairableItemComponent; }
20namespace cereal { struct ReflectionCtx; }
21// clang-format on
22
23class RepairableItemComponent : public ::NetworkedItemComponent<::RepairableItemComponent> {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 24, ::std::vector<::RepairItemEntry>> mRepairItems;
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 RepairableItemComponent();
33
34public:
35 // member functions
36 // NOLINTBEGIN
37 MCAPI explicit RepairableItemComponent(::SharedTypes::v1_20_50::RepairableItemComponent component);
38
39 MCAPI int _repairItem(
40 ::ItemStackBase& materialItem,
41 ::ItemStackBase& resultItem,
42 ::ExpressionNode repairAmountExpression
43 ) const;
44
45 MCAPI ::RepairItemResult
46 handleItemRepair(::ItemStack& inputItem, ::ItemStack& materialItem, bool allowBidirectionalRepair) const;
47
48 MCAPI bool isValidRepairItem(::ItemStackBase const& repairItem) const;
49 // NOLINTEND
50
51public:
52 // static functions
53 // NOLINTBEGIN
54 MCAPI static void bindType(
56 ::std::vector<::AllExperiments> const& requiredToggles,
57 ::std::optional<::SemVersion> releasedMinFormatVersion
58 );
59
60 MCAPI static ::HashedString const& getIdentifier();
61 // NOLINTEND
62
63public:
64 // constructor thunks
65 // NOLINTBEGIN
66 MCAPI void* $ctor(::SharedTypes::v1_20_50::RepairableItemComponent component);
67 // NOLINTEND
68
69public:
70 // vftables
71 // NOLINTBEGIN
72 MCNAPI static void** $vftable();
73 // NOLINTEND
74};
Definition ExpressionNode.h:35
Definition HashedString.h:5
Definition ItemStackBase.h:44
Definition ItemStack.h:26
Definition NetworkedItemComponent.h:7
static MCAPI void ** $vftable()
Definition SemVersion.h:15
Definition RepairItemEntry.h:14
Definition RepairItemResult.h:8
Definition RepairableItemComponent.h:17
Definition ReflectionCtx.h:11
Definition ctx.h:5