LeviLamina
Loading...
Searching...
No Matches
RepeaterBlock.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/DiodeBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockActor;
13class BlockLegacy;
14class BlockPos;
15class BlockSource;
16class Experiments;
17class ItemInstance;
19namespace BlockEvents { class BlockPlaceEvent; }
20namespace BlockEvents { class BlockPlayerInteractEvent; }
21namespace BlockEvents { class BlockQueuedTickEvent; }
22// clang-format on
23
25public:
26 // virtual functions
27 // NOLINTBEGIN
28 // vIndex: 66
29 virtual void setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
30
31 // vIndex: 89
32 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
33
34 // vIndex: 147
35 virtual bool isLocked(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
36
37 // vIndex: 135
38 virtual bool isInteractiveBlock() const /*override*/;
39
40 // vIndex: 122
41 virtual void animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const /*override*/;
42
43 // vIndex: 78
44 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
45
46 // vIndex: 137
47 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
48
49 // vIndex: 86
50 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
51 /*override*/;
52
53 // vIndex: 131
54 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
55
56 // vIndex: 53
57 virtual bool
58 shouldConnectToRedstone(::BlockSource& region, ::BlockPos const& pos, ::Direction::Type direction) const
59 /*override*/;
60
61 // vIndex: 69
62 virtual bool isPreservingMediumWhenPlaced(::BlockLegacy const* medium) const /*override*/;
63
64 // vIndex: 157
65 virtual int getTurnOnDelay(::Block const& block) const /*override*/;
66
67 // vIndex: 158
68 virtual ::Block const* getOnBlock(::Block const* block) const /*override*/;
69
70 // vIndex: 159
71 virtual ::Block const* getOffBlock(::Block const* block) const /*override*/;
72
73 // vIndex: 153
74 virtual bool isAlternateInput(::Block const& block) const /*override*/;
75
76 // vIndex: 130
77 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
78
79 // vIndex: 0
80 virtual ~RepeaterBlock() /*override*/ = default;
81 // NOLINTEND
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCFOLD void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
87
88 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
89
90 MCAPI void updateDelay(::BlockSource& region, ::BlockPos const& pos, bool doIncrement) const;
91
92 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
93 // NOLINTEND
94
95public:
96 // static variables
97 // NOLINTBEGIN
98 MCAPI static ::std::add_lvalue_reference_t<int const[]> DELAYS();
99
100 MCAPI static ::std::add_lvalue_reference_t<float const[]> DELAY_RENDER_OFFSETS();
101 // NOLINTEND
102
103public:
104 // virtual function thunks
105 // NOLINTBEGIN
106 MCAPI void $setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const;
107
108 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
109
110 MCAPI bool $isLocked(::BlockSource& region, ::BlockPos const& pos) const;
111
112 MCFOLD bool $isInteractiveBlock() const;
113
114 MCAPI void $animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const;
115
116 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
117
118 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
119
120 MCFOLD void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
121
122 MCFOLD void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
123
124 MCAPI bool
125 $shouldConnectToRedstone(::BlockSource& region, ::BlockPos const& pos, ::Direction::Type direction) const;
126
127 MCFOLD bool $isPreservingMediumWhenPlaced(::BlockLegacy const* medium) const;
128
129 MCAPI int $getTurnOnDelay(::Block const& block) const;
130
131 MCAPI ::Block const* $getOnBlock(::Block const* block) const;
132
133 MCAPI ::Block const* $getOffBlock(::Block const* block) const;
134
135 MCAPI bool $isAlternateInput(::Block const& block) const;
136
137 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
138 // NOLINTEND
139
140public:
141 // vftables
142 // NOLINTBEGIN
143 MCNAPI static void** $vftable();
144 // NOLINTEND
145};
Definition BlockActor.h:32
Definition BlockPlaceEvent.h:16
Definition BlockPlayerInteractEvent.h:18
Definition BlockQueuedTickEvent.h:16
Definition BlockLegacy.h:86
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition DiodeBlock.h:16
Definition Experiments.h:14
Definition ItemInstance.h:16
Definition RepeaterBlock.h:24
static MCAPI void ** $vftable()
Definition BlockAnimateTickData.h:5