LeviLamina
Loading...
Searching...
No Matches
DaylightDetectorBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/Direction.h"
7#include "mc/world/level/block/ActorBlockBase.h"
8#include "mc/world/level/block/BlockSupportType.h"
9#include "mc/world/level/block/BlockType.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class Block;
15class BlockPos;
16class BlockSource;
17namespace BlockEvents { class BlockPlaceEvent; }
18namespace BlockEvents { class BlockPlayerInteractEvent; }
19// clang-format on
20
21class DaylightDetectorBlock : public ::ActorBlock {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<1, 1, bool> mIsInverted;
26 // NOLINTEND
27
28public:
29 // prevent constructor by default
30 DaylightDetectorBlock();
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 virtual void setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
36
37 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
38
39 virtual void updateSignalStrength(::BlockSource& region, ::BlockPos const& pos) const;
40
41 virtual bool shouldConnectToRedstone(::BlockSource&, ::BlockPos const&, ::Direction::Type) const /*override*/;
42
43 virtual bool isInteractiveBlock() const /*override*/;
44
45 virtual bool isSignalSource() const /*override*/;
46
47 virtual int getVariant(::Block const& block) const /*override*/;
48
49 virtual bool checkIsPathable(::Actor&, ::BlockPos const&, ::BlockPos const&) const /*override*/;
50
51 virtual bool canProvideSupport(::Block const& face, uchar, ::BlockSupportType) const /*override*/;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI DaylightDetectorBlock(::std::string const& nameId, int id, bool isInverted);
58
59 MCFOLD void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
60
61 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
62 // NOLINTEND
63
64public:
65 // constructor thunks
66 // NOLINTBEGIN
67 MCAPI void* $ctor(::std::string const& nameId, int id, bool isInverted);
68 // NOLINTEND
69
70public:
71 // virtual function thunks
72 // NOLINTBEGIN
73 MCAPI void $setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const;
74
75 MCFOLD void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
76
77 MCAPI void $updateSignalStrength(::BlockSource& region, ::BlockPos const& pos) const;
78
79 MCFOLD bool $shouldConnectToRedstone(::BlockSource&, ::BlockPos const&, ::Direction::Type) const;
80
81 MCFOLD bool $isInteractiveBlock() const;
82
83 MCFOLD bool $isSignalSource() const;
84
85 MCFOLD int $getVariant(::Block const& block) const;
86
87 MCFOLD bool $checkIsPathable(::Actor&, ::BlockPos const&, ::BlockPos const&) const;
88
89 MCFOLD bool $canProvideSupport(::Block const& face, uchar, ::BlockSupportType) const;
90
91
92 // NOLINTEND
93
94public:
95 // vftables
96 // NOLINTBEGIN
97 MCAPI static void** $vftable();
98 // NOLINTEND
99};
Definition Actor.h:125
Definition BlockPlaceEvent.h:18
Definition BlockPlayerInteractEvent.h:20
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69