LeviLamina
Loading...
Searching...
No Matches
SculkVeinBlockBehavior.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/SculkBehavior.h"
7
8// auto generated forward declare list
9// clang-format off
10class Block;
11class BlockPos;
12class BlockSource;
14class Random;
15class SculkSpreader;
16// clang-format on
17
19public:
20 // virtual functions
21 // NOLINTBEGIN
22 virtual int updateDecayDelay(int const) const /*override*/;
23
24 virtual int updateFacingData(int const, ::Block const& block) const /*override*/;
25
26 virtual bool canChangeBlockOnSpread() const /*override*/;
27
28 virtual bool attemptSpreadVeins(
29 ::IBlockWorldGenAPI& target,
30 ::BlockPos const& pos,
31 ::Block const& block,
32 int,
34 ) const /*override*/;
35
36 virtual int attemptUseCharge(
37 ::IBlockWorldGenAPI& target,
38 ::BlockSource* region,
39 ::BlockPos const&,
40 ::BlockPos const& pos,
41 int charge,
42 int,
43 ::Random& random,
44 ::SculkSpreader& spreader,
45 bool const spreadVeins
46 ) const /*override*/;
47
48 virtual void onDischarged(::IBlockWorldGenAPI& target, ::BlockSource* region, ::BlockPos const& pos) const
49 /*override*/;
50 // NOLINTEND
51
52public:
53 // static functions
54 // NOLINTBEGIN
55 MCAPI static bool _attemptPlaceSculk(
56 ::IBlockWorldGenAPI& target,
57 ::BlockSource* region,
58 ::BlockPos const& pos,
59 ::SculkSpreader& spreader,
60 ::Random& random
61 );
62
63 MCAPI static void
64 _cleanUpVeinsWithSculkSubstrate(::IBlockWorldGenAPI& target, ::BlockSource* region, ::BlockPos const& pos);
65 // NOLINTEND
66
67public:
68 // virtual function thunks
69 // NOLINTBEGIN
70 MCFOLD int $updateDecayDelay(int const) const;
71
72 MCAPI int $updateFacingData(int const, ::Block const& block) const;
73
74 MCFOLD bool $canChangeBlockOnSpread() const;
75
76 MCFOLD bool $attemptSpreadVeins(
77 ::IBlockWorldGenAPI& target,
78 ::BlockPos const& pos,
79 ::Block const& block,
80 int,
82 ) const;
83
84 MCAPI int $attemptUseCharge(
85 ::IBlockWorldGenAPI& target,
86 ::BlockSource* region,
87 ::BlockPos const&,
88 ::BlockPos const& pos,
89 int charge,
90 int,
91 ::Random& random,
92 ::SculkSpreader& spreader,
93 bool const spreadVeins
94 ) const;
95
96 MCAPI void $onDischarged(::IBlockWorldGenAPI& target, ::BlockSource* region, ::BlockPos const& pos) const;
97
98
99 // NOLINTEND
100
101public:
102 // vftables
103 // NOLINTBEGIN
104 MCNAPI static void** $vftable();
105 // NOLINTEND
106};
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Block.h:43
Definition IBlockWorldGenAPI.h:25
Definition Random.h:10
Definition SculkBehavior.h:15
Definition SculkSpreader.h:18
Definition SculkVeinBlockBehavior.h:18
static MCAPI void ** $vftable()