LeviLamina
Loading...
Searching...
No Matches
BlockRedstoneProducerDescription.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/container/EnumSet.h"
7#include "mc/deps/shared_types/legacy/Facing.h"
8#include "mc/legacy/facing/Name.h"
9#include "mc/world/level/block/components/NetworkedBlockComponentDescription.h"
10
11// auto generated forward declare list
12// clang-format off
14class CompoundTag;
15namespace cereal { struct ReflectionCtx; }
16// clang-format on
17
18struct BlockRedstoneProducerDescription
19: public ::NetworkedBlockComponentDescription<::BlockRedstoneProducerDescription> {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<1, 1, schar> mPower;
24 ::ll::TypedStorage<2, 4, ::std::optional<::SharedTypes::Facing>> mStronglyPoweredFace;
25 ::ll::TypedStorage<1, 1, ::Bedrock::EnumSet<::Facing::Name, 6>> mConnectedFaces;
26 ::ll::TypedStorage<1, 1, bool> mIsTransformRelative;
27 ::ll::TypedStorage<1, 1, bool> mAllowPowerUp;
28 ::ll::TypedStorage<1, 1, bool> mAllowPowerDown;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 BlockRedstoneProducerDescription();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ::std::string const& getName() const /*override*/;
39
40 virtual void initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const /*override*/;
41
42 virtual void initializeComponent(::BlockComponentStorage& blockComponentStorage) const /*override*/;
43
44 virtual ::CompoundTag buildUnboundDataNetworkTag() const /*override*/;
45
46 virtual void initializeUnboundDataFromNetwork(::CompoundTag const& tag) /*override*/;
47 // NOLINTEND
48
49public:
50 // member functions
51 // NOLINTBEGIN
52 MCAPI BlockRedstoneProducerDescription(
53 int outputPower,
54 uchar stronglyPoweredFace,
56 bool isTransformRelative,
57 bool allowPowerUp,
58 bool allowPowerDown
59 );
60 // NOLINTEND
61
62public:
63 // static functions
64 // NOLINTBEGIN
65 MCAPI static void bindType(::cereal::ReflectionCtx& ctx);
66 // NOLINTEND
67
68public:
69 // static variables
70 // NOLINTBEGIN
71 MCAPI static ::std::string const& NameID();
72 // NOLINTEND
73
74public:
75 // constructor thunks
76 // NOLINTBEGIN
77 MCAPI void* $ctor(
78 int outputPower,
79 uchar stronglyPoweredFace,
81 bool isTransformRelative,
82 bool allowPowerUp,
83 bool allowPowerDown
84 );
85 // NOLINTEND
86
87public:
88 // virtual function thunks
89 // NOLINTBEGIN
90 MCAPI ::std::string const& $getName() const;
91
92 MCFOLD void $initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
93
94 MCAPI void $initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
95
96 MCAPI ::CompoundTag $buildUnboundDataNetworkTag() const;
97
98 MCAPI void $initializeUnboundDataFromNetwork(::CompoundTag const& tag);
99
100
101 // NOLINTEND
102
103public:
104 // vftables
105 // NOLINTBEGIN
106 MCNAPI static void** $vftable();
107 // NOLINTEND
108};
Definition EnumSet.h:8
Definition BlockComponentStorage.h:63
Definition CompoundTag.h:23
Definition NetworkedBlockComponentDescription.h:6
static MCAPI void ** $vftable()
Definition ReflectionCtx.h:11
Definition ctx.h:5