LeviLamina
Loading...
Searching...
No Matches
CakeBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockType.h"
7
8// auto generated forward declare list
9// clang-format off
10class AABB;
11class Actor;
12class Block;
13class BlockActor;
14class BlockPos;
15class BlockSource;
16class ItemInstance;
17class Player;
18namespace BlockEvents { class BlockPlayerInteractEvent; }
19namespace BlockEvents { class BlockQueuedTickEvent; }
20// clang-format on
21
22class CakeBlock : public ::BlockType {
23public:
24 // prevent constructor by default
25 CakeBlock();
26
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar) const /*override*/;
31
32 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB& bufferAABB) const /*override*/;
33
34 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
35
36 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
37 /*override*/;
38
39 virtual int getVariant(::Block const& block) const /*override*/;
40
41 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
42
43 virtual bool hasComparatorSignal() const /*override*/;
44
45 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const&, uchar) const
46 /*override*/;
47
48 virtual bool checkIsPathable(::Actor&, ::BlockPos const&, ::BlockPos const&) const /*override*/;
49 // NOLINTEND
50
51public:
52 // member functions
53 // NOLINTBEGIN
54 MCAPI CakeBlock(::std::string const& nameId, int id);
55
56 MCFOLD void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
57
58 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static void
65 removeCakeSlice(::Player& player, ::BlockSource& region, ::BlockPos const& pos, ::Block const* cakeBlock);
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor(::std::string const& nameId, int id);
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar) const;
78
79 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
80
81 MCFOLD bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
82
83 MCFOLD void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
84
85 MCAPI int $getVariant(::Block const& block) const;
86
87 MCFOLD ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
88
89 MCFOLD bool $hasComparatorSignal() const;
90
91 MCAPI int $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const&, uchar) const;
92
93 MCFOLD bool $checkIsPathable(::Actor&, ::BlockPos const&, ::BlockPos const&) const;
94
95
96 // NOLINTEND
97
98public:
99 // vftables
100 // NOLINTBEGIN
101 MCAPI static void** $vftable();
102 // NOLINTEND
103};
Definition AABB.h:18
Definition Actor.h:125
Definition BlockActor.h:30
Definition BlockPlayerInteractEvent.h:20
Definition BlockQueuedTickEvent.h:18
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition ItemInstance.h:15
Definition Player.h:137