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/BlockType.h"
7
8
// auto generated forward declare list
9
// clang-format off
10
class
Actor
;
11
class
Block
;
12
class
BlockPos
;
13
class
BlockSource
;
14
// clang-format on
15
16
class
DiodeBlock :
public
::BlockType {
17
public
:
18
// member variables
19
// NOLINTBEGIN
20
::ll::TypedStorage<1, 1, bool> mOn;
21
// NOLINTEND
22
23
public
:
24
// prevent constructor by default
25
DiodeBlock();
26
27
public
:
28
// virtual functions
29
// NOLINTBEGIN
30
virtual
bool
mayPlace(
::BlockSource
& region,
::BlockPos
const
& pos)
const
/*override*/
;
31
32
virtual
bool
canSurvive(
::BlockSource
& region,
::BlockPos
const
& pos)
const
/*override*/
;
33
34
virtual
int
getVariant(
::Block
const
& block)
const
/*override*/
;
35
36
virtual
int
getDirectSignal(
::BlockSource
& region,
::BlockPos
const
& pos,
int
dir)
const
/*override*/
;
37
38
virtual
int
getSignal(
::BlockSource
& region,
::BlockPos
const
& pos,
int
dir)
const
;
39
40
virtual
bool
isSignalSource()
const
/*override*/
;
41
42
virtual
bool
isLocked(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
43
44
virtual
bool
isSameDiode(
::Block
const
& block)
const
;
45
46
virtual
bool
shouldPrioritize(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
47
48
virtual
bool
canSpawnOn(
::Actor
*)
const
/*override*/
;
49
50
virtual
bool
isOn()
const
;
51
52
virtual
bool
shouldTurnOn(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
53
54
virtual
int
getInputSignal(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
55
56
virtual
bool
isAlternateInput(
::Block
const
& block)
const
;
57
58
virtual
int
getAlternateSignal(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
59
60
virtual
int
getOutputSignal(
::Block
const
&)
const
;
61
62
virtual
int
getTurnOffDelay(
::Block
const
& block)
const
;
63
64
virtual
int
getTurnOnDelay(
::Block
const
& block)
const
= 0;
65
66
virtual ::Block
const
* getOnBlock(
::Block
const
* block)
const
= 0;
67
68
virtual ::Block
const
* getOffBlock(
::Block
const
* block)
const
= 0;
69
// NOLINTEND
70
71
public
:
72
// member functions
73
// NOLINTBEGIN
74
MCAPI DiodeBlock(::std::string
const
& nameId,
int
id
,
bool
on);
75
76
MCAPI
int
getAlternateSignalAt(
::BlockSource
& region,
::BlockPos
const
& pos,
int
facing)
const
;
77
// NOLINTEND
78
79
public
:
80
// static functions
81
// NOLINTBEGIN
82
MCAPI
static
bool
isDiode(
::Block
const
& block);
83
// NOLINTEND
84
85
public
:
86
// constructor thunks
87
// NOLINTBEGIN
88
MCAPI
void
* $ctor(::std::string
const
& nameId,
int
id
,
bool
on);
89
// NOLINTEND
90
91
public
:
92
// virtual function thunks
93
// NOLINTBEGIN
94
MCFOLD
bool
$mayPlace(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
95
96
MCFOLD
bool
$canSurvive(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
97
98
MCFOLD
int
$getVariant(
::Block
const
& block)
const
;
99
100
MCAPI
int
$getDirectSignal(
::BlockSource
& region,
::BlockPos
const
& pos,
int
dir)
const
;
101
102
MCAPI
int
$getSignal(
::BlockSource
& region,
::BlockPos
const
& pos,
int
dir)
const
;
103
104
MCFOLD
bool
$isSignalSource()
const
;
105
106
MCFOLD
bool
$isLocked(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
107
108
MCAPI
bool
$isSameDiode(
::Block
const
& block)
const
;
109
110
MCAPI
bool
$shouldPrioritize(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
111
112
MCFOLD
bool
$canSpawnOn(
::Actor
*)
const
;
113
114
MCFOLD
bool
$isOn()
const
;
115
116
MCAPI
bool
$shouldTurnOn(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
117
118
MCAPI
int
$getInputSignal(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
119
120
MCAPI
bool
$isAlternateInput(
::Block
const
& block)
const
;
121
122
MCAPI
int
$getAlternateSignal(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
123
124
MCFOLD
int
$getOutputSignal(
::Block
const
&)
const
;
125
126
MCAPI
int
$getTurnOffDelay(
::Block
const
& block)
const
;
127
128
129
// NOLINTEND
130
131
public
:
132
// vftables
133
// NOLINTBEGIN
134
MCNAPI
static
void
**
$vftable
();
135
// NOLINTEND
136
};
Actor
Definition
Actor.h:125
BlockPos
Definition
BlockPos.h:21
BlockSource
Definition
BlockSource.h:73
Block
Definition
Block.h:69
DiodeBlock::$vftable
static MCAPI void ** $vftable()
src
mc
world
level
block
DiodeBlock.h
Generated on
for LeviLamina by
1.16.1