LeviLamina
Loading...
Searching...
No Matches
BlockLiquidDetectionDescription.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/v1_26_0/block/LiquidReaction.h"
7#include "mc/deps/shared_types/v1_26_0/block/LiquidType.h"
8#include "mc/util/BidirectionalUnorderedMap.h"
9#include "mc/world/level/block/components/BlockComponentDescription.h"
10
11// auto generated forward declare list
12// clang-format off
14class CompoundTag;
15namespace SharedTypes::v1_26_0 { struct DetectionRule; }
16namespace cereal { struct ReflectionCtx; }
17// clang-format on
18
19struct BlockLiquidDetectionDescription : public ::BlockComponentDescription {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 24, ::std::vector<::SharedTypes::v1_26_0::DetectionRule>> mDetectionRules;
24 // NOLINTEND
25
26public:
27 // prevent constructor by default
28 BlockLiquidDetectionDescription();
29
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 virtual ::std::string const& getName() const /*override*/;
34
35 virtual void initializeComponent(::BlockComponentStorage& blockComponentStorage) const /*override*/;
36
37 virtual void initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const /*override*/;
38
39 virtual bool isNetworkComponent() const /*override*/;
40
41 virtual ::std::unique_ptr<::CompoundTag> buildNetworkTag(::cereal::ReflectionCtx const& ctx) const /*override*/;
42
43 virtual void initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx) /*override*/;
44
45 virtual ~BlockLiquidDetectionDescription() /*override*/;
46 // NOLINTEND
47
48public:
49 // member functions
50 // NOLINTBEGIN
51 MCAPI explicit BlockLiquidDetectionDescription(::std::vector<::SharedTypes::v1_26_0::DetectionRule> detectionRules);
52 // NOLINTEND
53
54public:
55 // static functions
56 // NOLINTBEGIN
57 MCAPI static void bindType(::cereal::ReflectionCtx& ctx);
58 // NOLINTEND
59
60public:
61 // static variables
62 // NOLINTBEGIN
63 MCAPI static ::std::string const& NameID();
64
65 MCAPI static ::BidirectionalUnorderedMap<::std::string, ::SharedTypes::v1_26_0::LiquidReaction> const&
66 liquidReactionNameBiMap();
67
68 MCAPI static ::BidirectionalUnorderedMap<::std::string, ::SharedTypes::v1_26_0::LiquidType> const&
69 liquidTypeNameBiMap();
70 // NOLINTEND
71
72public:
73 // constructor thunks
74 // NOLINTBEGIN
75 MCAPI void* $ctor(::std::vector<::SharedTypes::v1_26_0::DetectionRule> detectionRules);
76 // NOLINTEND
77
78public:
79 // destructor thunk
80 // NOLINTBEGIN
81 MCAPI void $dtor();
82 // NOLINTEND
83
84public:
85 // virtual function thunks
86 // NOLINTBEGIN
87 MCAPI ::std::string const& $getName() const;
88
89 MCAPI void $initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
90
91 MCFOLD void $initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
92
93 MCFOLD bool $isNetworkComponent() const;
94
95 MCAPI ::std::unique_ptr<::CompoundTag> $buildNetworkTag(::cereal::ReflectionCtx const& ctx) const;
96
97 MCAPI void $initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx);
98
99
100 // NOLINTEND
101
102public:
103 // vftables
104 // NOLINTBEGIN
105 MCNAPI static void** $vftable();
106 // NOLINTEND
107};
Definition BlockComponentStorage.h:61
Definition CompoundTag.h:23
Definition BlockComponentDescription.h:20
static MCAPI void ** $vftable()
Definition DetectionRule.h:18
Definition ReflectionCtx.h:11
Definition ctx.h:5