LeviLamina
Loading...
Searching...
No Matches
FallingBlock.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 Block;
11class BlockPos;
12class BlockSource;
14namespace BlockEvents { class BlockPlaceEvent; }
15namespace BlockEvents { class BlockQueuedTickEvent; }
16namespace mce { class Color; }
17// clang-format on
18
19class FallingBlock : public ::BlockType {
20public:
21 // virtual functions
22 // NOLINTBEGIN
23 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
24 /*override*/;
25
26 virtual void animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const /*override*/;
27
28 virtual ::mce::Color getDustColor(::Block const& block) const = 0;
29
30 virtual ::std::string getDustParticleName(::Block const& block) const = 0;
31
32 virtual bool falling() const;
33
34 virtual void onLand(::BlockSource& region, ::BlockPos const& pos) const;
35
36 virtual bool isFreeToFall(::BlockSource& region, ::BlockPos const& pos) const;
37
38 virtual void
39 startFalling(::BlockSource& region, ::BlockPos const& pos, ::Block const& oldBlock, bool creative) const;
40 // NOLINTEND
41
42public:
43 // member functions
44 // NOLINTBEGIN
45 MCAPI void _tickBlocksAround2D(::BlockSource& region, ::BlockPos const& pos, ::Block const& oldBlock) const;
46
47 MCAPI void checkSlide(::BlockSource& region, ::BlockPos const& pos) const;
48
49 MCAPI void onPlaceBase(::BlockEvents::BlockPlaceEvent& eventData) const;
50
51 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
52 // NOLINTEND
53
54public:
55 // virtual function thunks
56 // NOLINTBEGIN
57 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
58
59 MCAPI void $animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const;
60
61 MCFOLD bool $falling() const;
62
63 MCFOLD void $onLand(::BlockSource& region, ::BlockPos const& pos) const;
64
65 MCAPI bool $isFreeToFall(::BlockSource& region, ::BlockPos const& pos) const;
66
67 MCAPI void
68 $startFalling(::BlockSource& region, ::BlockPos const& pos, ::Block const& oldBlock, bool creative) const;
69
70
71 // NOLINTEND
72
73public:
74 // vftables
75 // NOLINTBEGIN
76 MCNAPI static void** $vftable();
77 // NOLINTEND
78};
Definition BlockPlaceEvent.h:16
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition Block.h:41
Definition FallingBlock.h:19
static MCAPI void ** $vftable()
Definition Color.h:13
Definition BlockAnimateTickData.h:14