Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
PortalShape.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/legacy/facing/Name.h"
7#include "mc/world/level/BlockPos.h"
8#include "mc/world/level/block/PortalAxis.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockSource;
13class Vec3;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<4, 4, ::PortalAxis> mAxis;
22 ::ll::TypedStorage<1, 1, ::Facing::Name> mRightDir;
23 ::ll::TypedStorage<1, 1, ::Facing::Name> mLeftDir;
24 ::ll::TypedStorage<4, 4, int> mNumPortalBlocks;
25 ::ll::TypedStorage<4, 12, ::BlockPos> mBottomLeft;
26 ::ll::TypedStorage<1, 1, bool> mBottomLeftValid;
27 ::ll::TypedStorage<4, 4, int> mHeight;
28 ::ll::TypedStorage<4, 4, int> mWidth;
29 // NOLINTEND
30
31public:
32 // member functions
33 // NOLINTBEGIN
34 MCNAPI void createPortalBlocks(::WorldChangeTransaction& transaction) const;
35
36 MCAPI void evaluate(::BlockPos const& originalPosition, ::BlockSource const& source);
37
38 MCNAPI void removePortalBlocks(::WorldChangeTransaction& transaction, ::BlockPos const& firstPortalPosition) const;
39
41 ::BlockSource& source,
42 ::WorldChangeTransaction const& transaction,
43 ::Vec3 const& perpendicularAxis
44 ) const;
45 // NOLINTEND
46
47public:
48 // static functions
49 // NOLINTBEGIN
50 MCNAPI static int
51 _getDistanceUntilEdge(::BlockPos const& pos, ::Facing::Name direction, ::BlockSource const& source);
52 // NOLINTEND
53};
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition PortalShape.h:17
static MCAPI int _getDistanceUntilEdge(::BlockPos const &pos, ::Facing::Name direction, ::BlockSource const &source)
MCAPI void removePortalBlocks(::WorldChangeTransaction &transaction, ::BlockPos const &firstPortalPosition) const
MCAPI void createPortalBlocks(::WorldChangeTransaction &transaction) const
MCAPI void updateNeighboringBlocks(::BlockSource &source, ::WorldChangeTransaction const &transaction, ::Vec3 const &perpendicularAxis) const
Definition Vec3.h:10
Definition WorldChangeTransaction.h:14