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 Experiments;
14class Random;
15namespace BlockEvents { class BlockQueuedTickEvent; }
16namespace BlockEvents { class BlockRandomTickEvent; }
17// clang-format on
18
20public:
21 // virtual functions
22 // NOLINTBEGIN
23 // vIndex: 86
24 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
25 /*override*/;
26
27 // vIndex: 146
28 virtual void entityInside(::BlockSource&, ::BlockPos const&, ::Actor& entity) const /*override*/;
29
30 // vIndex: 130
31 virtual void _addHardCodedBlockComponents(::Experiments const& experiments) /*override*/;
32
33 // vIndex: 0
34 virtual ~LiquidBlock() /*override*/ = default;
35 // NOLINTEND
36
37public:
38 // member functions
39 // NOLINTBEGIN
40 MCAPI int _getSlopeDistance(::BlockSource& region, ::BlockPos const& pos, int pass, int from) const;
41
42 MCAPI bool _isLiquidBlocking(
43 ::BlockSource& region,
44 ::BlockPos const& pos,
45 ::BlockPos const& flowFromPos,
46 uchar flowFromDirection
47 ) const;
48
49 MCAPI void _spread(::BlockSource& region, ::BlockPos const& pos, int depth, bool preserveExisting) const;
50
51 MCAPI bool _tick(::BlockSource& region, ::BlockPos const& pos, ::Random& random, bool onlyDetectStatic) const;
52
53 MCAPI void _trySpreadTo(
54 ::BlockSource& region,
55 ::BlockPos const& pos,
56 int neighbor,
57 ::BlockPos const& flowFromPos,
58 uchar flowFromDirection
59 ) const;
60
61 MCAPI ::std::array<bool, 4> getSpread(::BlockSource& region, ::BlockPos const& pos) const;
62
63 MCAPI void randomTick(::BlockEvents::BlockRandomTickEvent& eventData) const;
64
65 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
66 // NOLINTEND
67
68public:
69 // virtual function thunks
70 // NOLINTBEGIN
71 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
72
73 MCFOLD void $entityInside(::BlockSource&, ::BlockPos const&, ::Actor& entity) const;
74
75 MCAPI void $_addHardCodedBlockComponents(::Experiments const& experiments);
76 // NOLINTEND
77
78public:
79 // vftables
80 // NOLINTBEGIN
81 MCNAPI static void** $vftable();
82 // NOLINTEND
83};
Definition Actor.h:103
Definition BlockQueuedTickEvent.h:16
Definition BlockRandomTickEvent.h:16
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Experiments.h:14
Definition LiquidBlockBase.h:27
Definition LiquidBlock.h:19
static MCAPI void ** $vftable()
Definition Random.h:11
Definition BlockRandomTickEvent.h:13