LeviLamina
Loading...
Searching...
No Matches
JigsawBlock.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/FaceDirectionalActorBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockPos;
14class JigsawBlockInfo;
15class Vec3;
16namespace BlockEvents { class BlockPlayerInteractEvent; }
17// clang-format on
18
19class JigsawBlock : public ::FaceDirectionalActorBlock {
20public:
21 // prevent constructor by default
22 JigsawBlock();
23
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual bool isInteractiveBlock() const /*override*/;
28
29 virtual ::Block const& getRenderBlock() const /*override*/;
30
31 virtual uchar getMappedFace(uchar face, ::Block const& block) const /*override*/;
32
33 virtual ::Flip getFaceFlip(uchar face, ::Block const& block) const /*override*/;
34
35 virtual ::Block const&
36 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
37 /*override*/;
38 // NOLINTEND
39
40public:
41 // member functions
42 // NOLINTBEGIN
43 MCAPI JigsawBlock(::std::string const& nameId, int id);
44
45 MCFOLD void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
46 // NOLINTEND
47
48public:
49 // static functions
50 // NOLINTBEGIN
51 MCAPI static bool canAttach(::JigsawBlockInfo const& block1, ::JigsawBlockInfo const& block2);
52 // NOLINTEND
53
54public:
55 // constructor thunks
56 // NOLINTBEGIN
57 MCAPI void* $ctor(::std::string const& nameId, int id);
58 // NOLINTEND
59
60public:
61 // virtual function thunks
62 // NOLINTBEGIN
63 MCFOLD bool $isInteractiveBlock() const;
64
65 MCAPI ::Block const& $getRenderBlock() const;
66
67 MCAPI uchar $getMappedFace(uchar face, ::Block const& block) const;
68
69 MCAPI ::Flip $getFaceFlip(uchar face, ::Block const& block) const;
70
71 MCAPI ::Block const& $getPlacementBlock(
72 ::Actor const& by,
73 ::BlockPos const& pos,
74 uchar face,
75 ::Vec3 const& clickPos,
76 int itemValue
77 ) const;
78
79
80 // NOLINTEND
81
82public:
83 // vftables
84 // NOLINTBEGIN
85 MCAPI static void** $vftable();
86 // NOLINTEND
87};
Definition Actor.h:125
Definition BlockPlayerInteractEvent.h:20
Definition BlockPos.h:21
Definition Block.h:69
static MCAPI void ** $vftable()
Definition JigsawBlockInfo.h:14
Definition Vec3.h:10