LeviLamina
Loading...
Searching...
No Matches
ItemRegistryRef.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/WeakPtr.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/deps/game_refs/WeakRef.h"
9
10// auto generated forward declare list
11// clang-format off
13class BaseGameVersion;
16class Experiments;
17class HashedString;
19class Item;
20class ItemRegistry;
21class LevelData;
23struct ItemData;
25struct ItemTag;
26namespace cereal { struct ReflectionCtx; }
27// clang-format on
28
30public:
31 // ItemRegistryRef inner types declare
32 // clang-format off
33 class LockGuard;
34 // clang-format on
35
36 // ItemRegistryRef inner types define
37 using CreativeItemsServerInitCallbackSignature =
39
40 class LockGuard {
41 public:
42 // member variables
43 // NOLINTBEGIN
45 // NOLINTEND
46
47 public:
48 // prevent constructor by default
49 LockGuard& operator=(LockGuard const&);
50 LockGuard(LockGuard const&);
51 LockGuard();
52
53 public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI ~LockGuard();
57 // NOLINTEND
58
59 public:
60 // destructor thunk
61 // NOLINTBEGIN
62 MCAPI void $dtor();
63 // NOLINTEND
64 };
65
66public:
67 // member variables
68 // NOLINTBEGIN
69 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::ItemRegistry>> mWeakRegistry;
70 // NOLINTEND
71
72public:
73 // prevent constructor by default
74 ItemRegistryRef& operator=(ItemRegistryRef const&);
75
76public:
77 // member functions
78 // NOLINTBEGIN
80
81 MCAPI ::std::shared_ptr<::ItemRegistry> _lockRegistry() const;
82
83 MCAPI void addItemToTagMap(::Item const& item) const;
84
85 MCAPI void alterAvailableCreativeItems(::ActorInfoRegistry* infoRegistry, ::LevelData& levelData) const;
86
87 MCAPI bool canUpdateTags() const;
88
89 MCAPI ::Bedrock::NonOwnerPointer<::cereal::ReflectionCtx const> cerealContext() const;
90
91 MCAPI void clearDeadItemRegistry() const;
92
93 MCAPI ::Bedrock::NonOwnerPointer<::CreativeItemRegistry const> getCreativeItemRegistry() const;
94
95 MCAPI ::Bedrock::NonOwnerPointer<::CreativeItemRegistry> getCreativeItemRegistry();
96
97 MCFOLD ::WeakPtr<::Item> getItem(::HashedString const& id) const;
98
99 MCAPI ::WeakPtr<::Item> getItem(short itemId) const;
100
101 MCAPI int getItemCount() const;
102
103 MCAPI ::HashedString getNameFromLegacyID(short id) const;
104
105 MCAPI ::std::unordered_map<::HashedString, ::WeakPtr<::Item>> const& getNameToItemMap() const;
106
107 MCAPI ::BaseGameVersion getWorldBaseGameVersion() const;
108
109 MCAPI void initCreativeItemsServer(
110 ::BlockDefinitionGroup const& blockDefinitionGroup,
111 ::Experiments const& experiment,
112 ::ResourcePackManager const& resourcePackManager,
113 ::std::function<
115 registerCallback
116 ) const;
117
118 MCAPI bool isComplexAlias(::HashedString const& oldName) const;
119
120 MCAPI ::WeakPtr<::Item> lookupByName(::HashedString const& inString) const;
121
122 MCAPI ::WeakPtr<::Item> lookupByName(int& outItemAux, ::std::string_view inString) const;
123
124 MCAPI ::WeakPtr<::Item> lookupByName(int& outItemId, int& outItemAux, ::std::string_view inString) const;
125
126 MCAPI ::WeakPtr<::Item> lookupByNameNoAlias(::std::string_view inString) const;
127
128 MCAPI ::WeakPtr<::Item> lookupByNameNoAlias(::HashedString const& inString) const;
129
130 MCAPI ::std::unordered_set<::Item const*> lookupByTag(::ItemTag const& tag) const;
131
132 MCFOLD ::WeakPtr<::Item> lookupByVanillaName(::HashedString const& inString) const;
133
134 MCAPI void onLevelInit(::WeakRef<::IDynamicContainerSerialization> containerSerialization) const;
135
136 MCAPI void
137 registerAlias(::HashedString const& alias, ::HashedString const& name, ::BaseGameVersion const& fromVersion) const;
138
139 MCAPI ::WeakPtr<::Item>
140 registerComplexAlias(::HashedString const& alias, ::ItemRegistryComplexAlias const& complexAlias) const;
141
142 MCAPI void registerExtraItemInitCallback(::std::function<void(::ItemRegistryRef)> callback) const;
143
144 MCAPI void registerLegacyID(::HashedString const& name, short id) const;
145
146 MCAPI void
147 registerLegacyMapping(::HashedString const& alias, ::HashedString const& name, ::BaseGameVersion const& fromVersion)
148 const;
149
150 MCAPI uint64 remapToFullLegacyNameByHash(uint64 newHash) const;
151
152 MCAPI uint64 remapToLegacyNameByHash(uint64 newHash) const;
153
154 MCAPI void setCheckForItemWorldCompatibility(bool value) const;
155
156 MCAPI void setServerInitializingCreativeItems(bool value) const;
157
158 MCAPI void shutdown() const;
159
160 MCAPI void unregisterItem(::HashedString const& itemName) const;
161
162 MCAPI ::std::vector<::std::string> validateServerItemComponents(::std::vector<::ItemData> const& itemData);
163
164 MCAPI ~ItemRegistryRef();
165 // NOLINTEND
166
167public:
168 // constructor thunks
169 // NOLINTBEGIN
170 MCFOLD void* $ctor(::ItemRegistryRef const&);
171 // NOLINTEND
172
173public:
174 // destructor thunk
175 // NOLINTBEGIN
176 MCFOLD void $dtor();
177 // NOLINTEND
178};
Definition ActorInfoRegistry.h:10
Definition BaseGameVersion.h:13
Definition BlockDefinitionGroup.h:33
Definition CreativeItemRegistry.h:20
Definition Experiments.h:14
Definition HashedString.h:5
Definition IDynamicContainerSerialization.h:12
Definition ItemRegistryRef.h:40
Definition ItemRegistryRef.h:29
Definition ItemRegistry.h:35
Definition Item.h:65
Definition LevelData.h:48
Definition ResourcePackManager.h:24
Definition WeakRef.h:8
Definition ItemData.h:15
Definition ItemRegistryComplexAlias.h:5
Definition ItemTag.h:8
Definition ReflectionCtx.h:11
Definition Alias.h:14