25class BaseRailBlock :
public ::BlockType {
37 ::ll::TypedStorage<8, 8, ::BlockSource&> mRegion;
38 ::ll::TypedStorage<4, 12, ::BlockPos> mPos;
39 ::ll::TypedStorage<1, 1, bool> mUsesDataBit;
40 ::ll::TypedStorage<8, 24, ::std::vector<::BlockPos>> mConnections;
45 Rail& operator=(Rail
const&);
56 MCAPI ::std::shared_ptr<::BaseRailBlock::Rail> getRail(
::BlockPos const& p);
58 MCAPI
bool hasNeighborRail(
::BlockPos const& pos);
60 MCAPI
void place(
int signalStrength,
bool first);
62 MCAPI
void removeSoftConnections();
64 MCAPI
void updateConnections(
int direction);
85 ::ll::TypedStorage<1, 1, bool const> mUsesDataBit;
95 virtual ::AABB
const& getVisualShape(
::Block const& block,
::AABB& bufferAABB)
const ;
97 virtual ::AABB getCollisionShape(
114 virtual bool isRailBlock() const ;
116 virtual
bool canSpawnOn(::
Actor*) const ;
118 virtual
bool isLavaBlocking() const ;
122 virtual
void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
126 virtual
void _onRedstoneUpdate(::BlockEvents::BlockRedstoneUpdateEvent& blockEvent) const;
132 MCAPI BaseRailBlock(::
std::
string const& nameId,
int id,
bool usesDataBit);
134 MCFOLD
void _onRedstoneUpdateBase(::BlockEvents::BlockRedstoneUpdateEvent& blockEvent) const;
136 MCAPI
void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
150 MCAPI static
bool isRail(::
Block const& block);
154 MCAPI static
bool isSlope(::
Block const& block);
156 MCAPI static
bool isSlope(
int railDirection);
162 MCAPI
void* $ctor(::
std::
string const& nameId,
int id,
bool usesDataBit);
168 MCAPI ::
AABB const& $getVisualShape(::
Block const& block, ::
AABB& bufferAABB) const;
170 MCFOLD ::
AABB $getCollisionShape(
185 MCFOLD
bool $isRailBlock() const;
187 MCFOLD
bool $canSpawnOn(::
Actor*) const;
189 MCFOLD
bool $isLavaBlocking() const;
193 MCAPI
void $tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
197 MCAPI
void $_onRedstoneUpdate(::BlockEvents::BlockRedstoneUpdateEvent& blockEvent) const;
Definition BlockGraphicsModeChangeContext.h:5