LeviLamina
Loading...
Searching...
No Matches
LiquidBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/LiquidBlockBase.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class BlockPos;
12class BlockSource;
13class Material;
14class Random;
15namespace BlockEvents { class BlockQueuedTickEvent; }
16namespace BlockEvents { class BlockRandomTickEvent; }
17// clang-format on
18
19class LiquidBlock : public ::LiquidBlockBase {
20public:
21 // prevent constructor by default
22 LiquidBlock();
23
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
28 /*override*/;
29
30 virtual void entityInside(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity) const /*override*/;
31 // NOLINTEND
32
33public:
34 // member functions
35 // NOLINTBEGIN
36 MCAPI LiquidBlock(::std::string const& nameId, int id, ::Material const& material);
37
38 MCAPI int _getSlopeDistance(::BlockSource& region, ::BlockPos const& pos, int pass, int from) const;
39
40 MCAPI bool _tick(::BlockSource& region, ::BlockPos const& pos, ::Random& random, bool onlyDetectStatic) const;
41
42 MCAPI void _trySpreadTo(
43 ::BlockSource& region,
44 ::BlockPos const& pos,
45 int neighbor,
46 ::BlockPos const& flowFromPos,
47 uchar flowFromDirection
48 ) const;
49
50 MCAPI void randomTick(::BlockEvents::BlockRandomTickEvent& eventData) const;
51
52 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
53 // NOLINTEND
54
55public:
56 // static functions
57 // NOLINTBEGIN
58 MCAPI static bool _isLiquidBlocking(
59 ::BlockSource& region,
60 ::BlockPos const& pos,
61 ::BlockPos const& flowFromPos,
62 uchar flowFromDirection
63 );
64 // NOLINTEND
65
66public:
67 // constructor thunks
68 // NOLINTBEGIN
69 MCAPI void* $ctor(::std::string const& nameId, int id, ::Material const& material);
70 // NOLINTEND
71
72public:
73 // virtual function thunks
74 // NOLINTBEGIN
75 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
76
77 MCFOLD void $entityInside(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity) const;
78
79
80 // NOLINTEND
81
82public:
83 // vftables
84 // NOLINTBEGIN
85 MCAPI static void** $vftable();
86 // NOLINTEND
87};
Definition Actor.h:114
Definition BlockQueuedTickEvent.h:16
Definition BlockRandomTickEvent.h:16
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition LiquidBlockBase.h:26
Definition Material.h:8
Definition Random.h:10