LeviLamina
Loading...
Searching...
No Matches
MultiBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/traits/block_trait/ITrait.h"
7#include "mc/world/level/block/traits/block_trait/MultiBlockPlacementDirectionBehavior.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockType;
12class CompoundTag;
13namespace cereal { struct ReflectionCtx; }
14// clang-format on
15
16namespace BlockTrait {
17
19public:
20 // MultiBlock inner types declare
21 // clang-format off
22 struct EnabledStates;
23 // clang-format on
24
25 // MultiBlock inner types define
27 public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<1, 1, bool> mEnableMultiBlockState;
31 // NOLINTEND
32 };
33
34public:
35 // member variables
36 // NOLINTBEGIN
37 ::ll::TypedStorage<1, 1, ::BlockTrait::MultiBlock::EnabledStates> mStates;
38 ::ll::TypedStorage<1, 1, uchar> mDirection;
39 ::ll::TypedStorage<1, 1, uchar> mPartCount;
40 ::ll::TypedStorage<1, 1, ::BlockTrait::MultiBlockPlacementDirectionBehavior> mPlacementBehavior;
41 // NOLINTEND
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 virtual void initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const&) /*override*/;
47
48 virtual void applyToBlockType(::BlockType& blockType) const /*override*/;
49
50 virtual ::std::unique_ptr<::CompoundTag> _buildNetworkTag(::cereal::ReflectionCtx const&) const /*override*/;
51
52 virtual ::std::string const& _getName() const /*override*/;
53 // NOLINTEND
54
55public:
56 // virtual function thunks
57 // NOLINTBEGIN
58 MCAPI void $initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const&);
59
60 MCAPI void $applyToBlockType(::BlockType& blockType) const;
61
62 MCAPI ::std::unique_ptr<::CompoundTag> $_buildNetworkTag(::cereal::ReflectionCtx const&) const;
63
64 MCAPI ::std::string const& $_getName() const;
65
66
67 // NOLINTEND
68
69public:
70 // vftables
71 // NOLINTBEGIN
72 MCNAPI static void** $vftable();
73 // NOLINTEND
74};
75
76} // namespace BlockTrait
Definition ITrait.h:14
Definition MultiBlock.h:18
static MCAPI void ** $vftable()
Definition BlockType.h:79
Definition CompoundTag.h:18
STL namespace.
Definition MultiBlock.h:26
Definition ReflectionCtx.h:11