LeviLamina
Loading...
Searching...
No Matches
StructureBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/ActorBlockBase.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 BlockSource;
15class Vec3;
16namespace BlockEvents { class BlockPlayerInteractEvent; }
17namespace BlockEvents { class BlockRedstoneUpdateEvent; }
18// clang-format on
19
20class StructureBlock : public ::ActorBlock {
21public:
22 // prevent constructor by default
23 StructureBlock();
24
25public:
26 // virtual functions
27 // NOLINTBEGIN
28 virtual bool isInteractiveBlock() const /*override*/;
29
30 virtual bool isConsumerComponent() const /*override*/;
31
32 virtual ::Block const&
33 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
34 /*override*/;
35 // NOLINTEND
36
37public:
38 // member functions
39 // NOLINTBEGIN
40 MCAPI StructureBlock(::std::string const& nameId, int id);
41
42 MCAPI void _onRedstoneUpdate(::BlockEvents::BlockRedstoneUpdateEvent& blockEvent) const;
43
44 MCFOLD void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
45 // NOLINTEND
46
47public:
48 // static functions
49 // NOLINTBEGIN
50 MCAPI static void _onSetupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos);
51 // NOLINTEND
52
53public:
54 // constructor thunks
55 // NOLINTBEGIN
56 MCAPI void* $ctor(::std::string const& nameId, int id);
57 // NOLINTEND
58
59public:
60 // virtual function thunks
61 // NOLINTBEGIN
62 MCFOLD bool $isInteractiveBlock() const;
63
64 MCFOLD bool $isConsumerComponent() const;
65
66 MCAPI ::Block const& $getPlacementBlock(
67 ::Actor const& by,
68 ::BlockPos const& pos,
69 uchar face,
70 ::Vec3 const& clickPos,
71 int itemValue
72 ) const;
73
74
75 // NOLINTEND
76
77public:
78 // vftables
79 // NOLINTBEGIN
80 MCAPI static void** $vftable();
81 // NOLINTEND
82};
Definition Actor.h:125
Definition BlockPlayerInteractEvent.h:20
Definition BlockRedstoneUpdateEvent.h:16
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition Vec3.h:10