LeviLamina
Loading...
Searching...
No Matches
ScriptItemComponents.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/game_refs/WeakRef.h"
7#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
8#include "mc/deps/scripting/lifetime_registry/WeakTypedObjectHandle.h"
9
10// auto generated forward declare list
11// clang-format off
12class BaseGameVersion;
13namespace ScriptModuleMinecraft { class IScriptItemComponentFactory; }
14namespace ScriptModuleMinecraft { class IScriptItemCustomComponentReader; }
15namespace ScriptModuleMinecraft { class ScriptComponentTypeEnumBuilder; }
16namespace ScriptModuleMinecraft { class ScriptItemComponent; }
17namespace ScriptModuleMinecraft { class ScriptItemStack; }
18namespace ScriptModuleMinecraft { struct SupportedScriptComponentFactoriesEntry; }
19namespace Scripting { class ModuleBindingBuilder; }
20namespace Scripting { class WeakLifetimeScope; }
21// clang-format on
22
23namespace ScriptModuleMinecraft {
24
25class ScriptItemComponents {
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<
30 8,
31 64,
32 ::std::
33 unordered_map<::std::string_view, ::std::shared_ptr<::ScriptModuleMinecraft::IScriptItemComponentFactory>>>
34 mNativeFactories;
35 ::ll::TypedStorage<8, 16, ::WeakRef<::ScriptModuleMinecraft::IScriptItemCustomComponentReader const>>
36 mCustomComponentReader;
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 ScriptItemComponents();
42
43public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI ScriptItemComponents(
47 ::BaseGameVersion const& version,
48 ::std::string const& prerelease,
50 );
51
52 MCAPI ::std::vector<::std::string_view> getSupportedItemComponentIds(
54 bool includeCustom
55 );
56
57 MCAPI ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptItemComponent>>
58 tryCreateComponent(
59 ::std::string_view componentName,
62 bool includeCustom
63 );
64 // NOLINTEND
65
66public:
67 // static functions
68 // NOLINTBEGIN
69 MCAPI static ::std::
70 unordered_map<::std::string_view, ::std::shared_ptr<::ScriptModuleMinecraft::IScriptItemComponentFactory>>
71 _getSupportedNativeItemComponents(
72 ::std::vector<::ScriptModuleMinecraft::SupportedScriptComponentFactoriesEntry> const&
73 supportedComponentTypeNames,
74 ::BaseGameVersion const& version,
75 ::std::string const& prerelease
76 );
77
78 MCAPI static void bind(
81 );
82 // NOLINTEND
83
84public:
85 // constructor thunks
86 // NOLINTBEGIN
87 MCAPI void* $ctor(
88 ::BaseGameVersion const& version,
89 ::std::string const& prerelease,
91 );
92 // NOLINTEND
93};
94
95} // namespace ScriptModuleMinecraft
Definition BaseGameVersion.h:8
Definition IScriptItemComponentFactory.h:19
Definition IScriptItemCustomComponentReader.h:18
Definition ScriptComponentTypeEnumBuilder.h:17
Definition ScriptItemComponent.h:20
Definition ScriptItemStack.h:35
Definition ModuleBindingBuilder.h:27
Definition StrongTypedObjectHandle.h:8
Definition WeakLifetimeScope.h:7
Definition WeakTypedObjectHandle.h:8
Definition WeakRef.h:8
Definition SupportedScriptComponentFactoriesEntry.h:10