LeviLamina
Loading...
Searching...
No Matches
FlowerPotBlock.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 Block;
12class BlockActor;
13class BlockPos;
14class BlockSource;
15class ItemInstance;
16class Player;
17namespace BlockEvents { class BlockPlayerInteractEvent; }
18namespace BlockEvents { class BlockQueuedTickEvent; }
19namespace BlockEvents { class BlockRandomTickEvent; }
20// clang-format on
21
22class FlowerPotBlock : public ::ActorBlock {
23public:
24 // prevent constructor by default
25 FlowerPotBlock();
26
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual bool isInteractiveBlock() const /*override*/;
31
32 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
33 /*override*/;
34
35 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
36
37 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar) const /*override*/;
38
39 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
40
41 virtual bool isValidAuxValue(int value) const /*override*/;
42
43 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
44 /*override*/;
45
46 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
47
48 virtual ::ItemInstance asItemInstance(::Block const& blockActor, ::BlockActor const*) const /*override*/;
49 // NOLINTEND
50
51public:
52 // member functions
53 // NOLINTBEGIN
54 MCAPI FlowerPotBlock(::std::string const& nameId, int id);
55
56 MCAPI bool _tryPlaceFlower(::Player& player, ::BlockPos const& blockPos) const;
57
58 MCAPI bool _tryTakeFlower(::Player& player, ::BlockPos const& blockPos) const;
59
60 MCAPI void randomTick(::BlockEvents::BlockRandomTickEvent& eventData) const;
61
62 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
63
64 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor(::std::string const& nameId, int id);
71 // NOLINTEND
72
73public:
74 // virtual function thunks
75 // NOLINTBEGIN
76 MCFOLD bool $isInteractiveBlock() const;
77
78 MCFOLD void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
79
80 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
81
82 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar) const;
83
84 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
85
86 MCFOLD bool $isValidAuxValue(int value) const;
87
88 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
89
90 MCAPI void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
91
92 MCAPI ::ItemInstance $asItemInstance(::Block const& blockActor, ::BlockActor const*) const;
93
94
95 // NOLINTEND
96
97public:
98 // vftables
99 // NOLINTBEGIN
100 MCAPI static void** $vftable();
101 // NOLINTEND
102};
Definition BlockActor.h:30
Definition BlockPlayerInteractEvent.h:20
Definition BlockQueuedTickEvent.h:18
Definition BlockRandomTickEvent.h:17
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition ItemInstance.h:15
Definition Player.h:137