LeviLamina
Loading...
Searching...
No Matches
DiodeBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockLegacy.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class Block;
12class BlockPos;
13class BlockSource;
14// clang-format on
15
16class DiodeBlock : public ::BlockLegacy {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<1, 1, bool> mOn;
21 // NOLINTEND
22
23public:
24 // virtual functions
25 // NOLINTBEGIN
26 // vIndex: 79
27 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
28
29 // vIndex: 142
30 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
31
32 // vIndex: 61
33 virtual void onRedstoneUpdate(::BlockSource& region, ::BlockPos const& pos, int strength, bool isFirstTime) const
34 /*override*/;
35
36 // vIndex: 118
37 virtual int getVariant(::Block const& block) const /*override*/;
38
39 // vIndex: 52
40 virtual int getDirectSignal(::BlockSource& region, ::BlockPos const& pos, int dir) const /*override*/;
41
42 // vIndex: 150
43 virtual int getSignal(::BlockSource& region, ::BlockPos const& pos, int dir) const;
44
45 // vIndex: 44
46 virtual bool isSignalSource() const /*override*/;
47
48 // vIndex: 151
49 virtual bool isLocked(::BlockSource&, ::BlockPos const&) const;
50
51 // vIndex: 152
52 virtual bool isSameDiode(::Block const& block) const;
53
54 // vIndex: 153
55 virtual bool shouldPrioritize(::BlockSource& region, ::BlockPos const& pos) const;
56
57 // vIndex: 119
58 virtual bool canSpawnOn(::Actor*) const /*override*/;
59
60 // vIndex: 154
61 virtual bool isOn() const;
62
63 // vIndex: 155
64 virtual bool shouldTurnOn(::BlockSource& region, ::BlockPos const& pos) const;
65
66 // vIndex: 156
67 virtual int getInputSignal(::BlockSource& region, ::BlockPos const& pos) const;
68
69 // vIndex: 157
70 virtual bool isAlternateInput(::Block const&) const;
71
72 // vIndex: 158
73 virtual int getAlternateSignal(::BlockSource& region, ::BlockPos const& pos) const;
74
75 // vIndex: 159
76 virtual int getOutputSignal(::Block const& block) const;
77
78 // vIndex: 160
79 virtual int getTurnOffDelay(::Block const& block) const;
80
81 // vIndex: 161
82 virtual int getTurnOnDelay(::Block const&) const = 0;
83
84 // vIndex: 162
85 virtual ::Block const* getOnBlock(::Block const*) const = 0;
86
87 // vIndex: 163
88 virtual ::Block const* getOffBlock(::Block const*) const = 0;
89
90 // vIndex: 0
91 virtual ~DiodeBlock() /*override*/ = default;
92 // NOLINTEND
93
94public:
95 // static functions
96 // NOLINTBEGIN
97 MCAPI static bool isDiode(::Block const& block);
98 // NOLINTEND
99
100public:
101 // destructor thunk
102 // NOLINTBEGIN
103
104 // NOLINTEND
105
106public:
107 // virtual function thunks
108 // NOLINTBEGIN
109 MCAPI void $onRedstoneUpdate(::BlockSource& region, ::BlockPos const& pos, int strength, bool isFirstTime) const;
110
111 MCAPI int $getVariant(::Block const& block) const;
112
113 MCAPI int $getDirectSignal(::BlockSource& region, ::BlockPos const& pos, int dir) const;
114
115 MCAPI int $getSignal(::BlockSource& region, ::BlockPos const& pos, int dir) const;
116
117 MCFOLD bool $isSignalSource() const;
118
119 MCAPI bool $isSameDiode(::Block const& block) const;
120
121 MCAPI bool $shouldPrioritize(::BlockSource& region, ::BlockPos const& pos) const;
122
123 MCFOLD bool $canSpawnOn(::Actor*) const;
124
125 MCAPI bool $isOn() const;
126
127 MCAPI bool $shouldTurnOn(::BlockSource& region, ::BlockPos const& pos) const;
128
129 MCAPI int $getInputSignal(::BlockSource& region, ::BlockPos const& pos) const;
130
131 MCAPI int $getAlternateSignal(::BlockSource& region, ::BlockPos const& pos) const;
132
133 MCFOLD int $getOutputSignal(::Block const& block) const;
134
135 MCFOLD int $getTurnOffDelay(::Block const& block) const;
136 // NOLINTEND
137};
Definition Actor.h:104
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition DiodeBlock.h:16