LeviLamina
Loading...
Searching...
No Matches
RandomBlockStateFunction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/storage/loot/functions/LootItemFunction.h"
7
8// auto generated forward declare list
9// clang-format off
10class Block;
11class ItemInstance;
12class ItemStack;
15class Random;
16namespace Json { class Value; }
17// clang-format on
18
20public:
21 // RandomBlockStateFunction inner types define
22 enum class RemapComplexAliasBlockResult : int {
23 NotComplexAlias = 0,
24 Succeed = 1,
25 Fail = 2,
26 };
27
28public:
29 // member variables
30 // NOLINTBEGIN
33 // NOLINTEND
34
35public:
36 // prevent constructor by default
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 // vIndex: 0
45 virtual ~RandomBlockStateFunction() /*override*/ = default;
46
47 // vIndex: 4
48 virtual void apply(::ItemStack& item, ::Random& random, ::LootTableContext& context) /*override*/;
49
50 // vIndex: 2
51 virtual void apply(::ItemInstance& item, ::Random& random, ::LootTableContext& context) /*override*/;
52
53 // vIndex: 5
54 virtual ::LootItemFunction::FunctionType getFunctionType() const /*override*/;
55 // NOLINTEND
56
57public:
58 // member functions
59 // NOLINTBEGIN
60 MCNAPI ::RandomBlockStateFunction::RemapComplexAliasBlockResult
61 _remapComplexAliasBlock(int randomInt, ::Block const*& inOutItemBlock, ::std::string const& originalNameStr);
62
63 MCNAPI ::RandomBlockStateFunction::RemapComplexAliasBlockResult _tryRemapComplexAliasBlock(
64 ::ItemStack& item,
65 int randomInt,
66 ::Block const*& inOutItemBlock,
67 ::std::string const& originalName
68 );
69
70 MCNAPI ::RandomBlockStateFunction::RemapComplexAliasBlockResult _tryRemapComplexAliasBlock(
71 ::ItemInstance& item,
72 int randomInt,
73 ::Block const*& inOutItemBlock,
74 ::std::string const& originalName
75 );
76 // NOLINTEND
77
78public:
79 // static functions
80 // NOLINTBEGIN
81 MCNAPI static ::std::unique_ptr<::LootItemFunction>
82 deserialize(::Json::Value object, ::std::vector<::std::unique_ptr<::LootItemCondition>>& predicates);
83 // NOLINTEND
84
85public:
86 // virtual function thunks
87 // NOLINTBEGIN
88 MCNAPI void $apply(::ItemStack& item, ::Random& random, ::LootTableContext& context);
89
91
92 MCNAPI ::LootItemFunction::FunctionType $getFunctionType() const;
93 // NOLINTEND
94
95public:
96 // vftables
97 // NOLINTBEGIN
98 MCNAPI static void** $vftable();
99 // NOLINTEND
100};
Definition Block.h:38
Definition ItemInstance.h:15
Definition ItemStack.h:23
Definition Value.h:16
Definition LootItemCondition.h:12
Definition LootItemFunction.h:17
Definition LootTableContext.h:19
Definition RandomBlockStateFunction.h:19
MCAPI::RandomBlockStateFunction::RemapComplexAliasBlockResult _tryRemapComplexAliasBlock(::ItemInstance &item, int randomInt, ::Block const *&inOutItemBlock, ::std::string const &originalName)
static MCAPI ::std::unique_ptr<::LootItemFunction > deserialize(::Json::Value object, ::std::vector<::std::unique_ptr<::LootItemCondition > > &predicates)
MCAPI::LootItemFunction::FunctionType $getFunctionType() const
MCAPI::RandomBlockStateFunction::RemapComplexAliasBlockResult _tryRemapComplexAliasBlock(::ItemStack &item, int randomInt, ::Block const *&inOutItemBlock, ::std::string const &originalName)
MCAPI void $apply(::ItemInstance &item, ::Random &random, ::LootTableContext &context)
MCAPI void $apply(::ItemStack &item, ::Random &random, ::LootTableContext &context)
MCAPI::RandomBlockStateFunction::RemapComplexAliasBlockResult _remapComplexAliasBlock(int randomInt, ::Block const *&inOutItemBlock, ::std::string const &originalNameStr)
static MCAPI void ** $vftable()
Definition Random.h:10
Definition context.h:5
Definition Alias.h:14