LeviLamina
Loading...
Searching...
No Matches
FaceDirectionalBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/Flip.h"
7#include "mc/world/level/block/BlockType.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockPos;
14class Material;
15class Vec3;
16// clang-format on
17
18class FaceDirectionalBlock : public ::BlockType {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<1, 1, bool> mHorizontalOnly;
23 ::ll::TypedStorage<4, 4, float> mYRotOffset;
24 // NOLINTEND
25
26public:
27 // prevent constructor by default
28 FaceDirectionalBlock();
29
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 virtual ::Block const& getRenderBlock() const /*override*/;
34
35 virtual uchar getMappedFace(uchar face, ::Block const& block) const /*override*/;
36
37 virtual ::Flip getFaceFlip(uchar face, ::Block const& block) const /*override*/;
38
39 virtual ::Block const&
40 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
41 /*override*/;
42
43 virtual bool isValidAuxValue(int auxValue) const /*override*/;
44 // NOLINTEND
45
46public:
47 // member functions
48 // NOLINTBEGIN
49 MCAPI FaceDirectionalBlock(
50 ::std::string const& nameId,
51 int id,
52 ::Material const& material,
53 bool horizontalOnly,
54 float yRotOffset
55 );
56 // NOLINTEND
57
58public:
59 // static functions
60 // NOLINTBEGIN
61 MCAPI static uchar getFacingDirection(::Block const& block, bool horizontalOnly);
62
63 MCAPI static uchar getMappedFaceStatic(uchar face, ::Block const& block, bool horizontalOnly);
64 // NOLINTEND
65
66public:
67 // constructor thunks
68 // NOLINTBEGIN
69 MCAPI void*
70 $ctor(::std::string const& nameId, int id, ::Material const& material, bool horizontalOnly, float yRotOffset);
71 // NOLINTEND
72
73public:
74 // virtual function thunks
75 // NOLINTBEGIN
76 MCFOLD ::Block const& $getRenderBlock() const;
77
78 MCFOLD uchar $getMappedFace(uchar face, ::Block const& block) const;
79
80 MCFOLD ::Flip $getFaceFlip(uchar face, ::Block const& block) const;
81
82 MCFOLD ::Block const& $getPlacementBlock(
83 ::Actor const& by,
84 ::BlockPos const& pos,
85 uchar face,
86 ::Vec3 const& clickPos,
87 int itemValue
88 ) const;
89
90 MCAPI bool $isValidAuxValue(int auxValue) const;
91
92
93 // NOLINTEND
94
95public:
96 // vftables
97 // NOLINTBEGIN
98 MCNAPI static void** $vftable();
99 // NOLINTEND
100};
Definition Actor.h:125
Definition BlockPos.h:21
Definition Block.h:69
static MCAPI void ** $vftable()
Definition Material.h:8
Definition Vec3.h:10