LeviLamina
Loading...
Searching...
No Matches
BlockActorDynamicPropertiesComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/platform/brstd/flat_map.h"
8#include "mc/world/level/block/actor/BlockActorVersion.h"
9#include "mc/world/level/block/actor/component/IBlockActorComponent.h"
10
11// auto generated forward declare list
12// clang-format off
13class CompoundTag;
14// clang-format on
15
17public:
18 // BlockActorDynamicPropertiesComponent inner types define
19 enum class SetResult : int {
20 Success = 0,
21 StorageLimitExceeded = 1,
22 StorageNotFound = 2,
23 };
24
25 using SetCallbackFn = ::std::function<
26 void(::std::string const&, uint, ::std::variant<double, float, bool, ::std::string, ::Vec3> const*)>;
27
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<
32 8,
33 48,
35 uint,
36 ::std::variant<double, float, bool, ::std::string, ::Vec3>,
37 ::std::less<uint>,
38 ::std::vector<uint>,
39 ::std::vector<::std::variant<double, float, bool, ::std::string, ::Vec3>>>>
40 mDataMap;
41 ::ll::TypedStorage<8, 8, uint64> mStorageBytes;
42 // NOLINTEND
43
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 virtual void save(::CompoundTag& parentTag) const /*override*/;
48
49 virtual void load(::CompoundTag const& parentTag, ::BlockActorVersion version) /*override*/;
50 // NOLINTEND
51
52public:
53 // member functions
54 // NOLINTBEGIN
55 MCAPI void _loadInception(::CompoundTag const& parentTag);
56
57 MCAPI ::BlockActorDynamicPropertiesComponent::SetResult _set(
58 ::std::string const& key,
59 uint keyHash,
60 ::std::variant<double, float, bool, ::std::string, ::Vec3> const& value,
61 ::std::function<
62 void(::std::string const&, uint, ::std::variant<double, float, bool, ::std::string, ::Vec3> const*)>
63 callback
64 );
65
66 MCAPI ::BlockActorDynamicPropertiesComponent::SetResult remove(
67 ::std::string const& key,
68 ::std::function<
69 void(::std::string const&, uint, ::std::variant<double, float, bool, ::std::string, ::Vec3> const*)>
70 callback
71 );
72 // NOLINTEND
73
74public:
75 // static variables
76 // NOLINTBEGIN
77 MCAPI static ::std::add_lvalue_reference_t<char const[]> DYNAMIC_PROPERTIES_TAG();
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCAPI void $save(::CompoundTag& parentTag) const;
84
85 MCAPI void $load(::CompoundTag const& parentTag, ::BlockActorVersion version);
86
87
88 // NOLINTEND
89
90public:
91 // vftables
92 // NOLINTBEGIN
93 MCNAPI static void** $vftable();
94 // NOLINTEND
95};
Definition BlockActorDynamicPropertiesComponent.h:16
static MCAPI void ** $vftable()
Definition CompoundTag.h:18
Definition flat_map.h:15
Definition IBlockActorComponent.h:13