LeviLamina
Loading...
Searching...
No Matches
BlockStateCommandParam.h
1#pragma once
2
3#include "ll/api/Expected.h"
4#include "mc/_HeaderOutputPredefine.h"
5#include "mc/world/level/block/Block.h"
6
7// auto generated forward declare list
8// clang-format off
9class Block;
10class BlockState;
11class CommandOutput;
12class CompoundTag;
13// clang-format on
14
16public:
17 // BlockStateCommandParam inner types define
18 enum class Type : int {
19 Integer = 0,
20 Float = 1,
21 Bool = 2,
22 String = 3,
23 Invalid = 4,
24 };
25
26public:
27 LLNDAPI ll::Expected<Block::BlockStateValueType> toStateValue() const;
28
29 LLNDAPI static ll::Expected<Block::BlockStatesType> toStateMap(std::vector<BlockStateCommandParam> const&);
30
31public:
32 // member variables
33 // NOLINTBEGIN
34 ::std::string mBlockState;
35 ::std::string mValue;
36 ::BlockStateCommandParam::Type mType;
37 // NOLINTEND
38
39public:
40 // member functions
41 // NOLINTBEGIN
42 MCAPI bool _createCompoundTag(::CompoundTag& tag, ::CommandOutput& output) const;
43
44 MCAPI ::BlockState const* getBlockState(::Block const& block) const;
45 // NOLINTEND
46};
47
48// clang-format off
49template <>
50MCAPI ::ll::type_id_ref Bedrock::typeid_storage_impl<class CommandRegistry, ::std::vector<::BlockStateCommandParam, ::std::allocator<::BlockStateCommandParam> >>();
51// clang-format on
Definition BlockStateCommandParam.h:15
Definition BlockState.h:14
Definition Block.h:41
Definition CommandOutput.h:20
Definition CompoundTag.h:18