70 struct ScriptBlockCustomComponentData {
74 ::ll::TypedStorage<2, 2, ::Bedrock::EnumSet<::ScriptModuleMinecraft::ScriptBlockCustomComponentEventTypes, 14>>
76 ::ll::TypedStorage<8, 288, ::std::optional<::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface>>
78 ::ll::TypedStorage<8, 40, ::Scripting::Version> mVersionBoundWith;
79 ::ll::TypedStorage<1, 1, bool> mInitialized;
80 ::ll::TypedStorage<1, 1, bool> mUsedByBlock;
85 ScriptBlockCustomComponentData& operator=(ScriptBlockCustomComponentData
const&);
86 ScriptBlockCustomComponentData();
91 MCAPI ScriptBlockCustomComponentData(
95 MCAPI
void setClosureData(
100 MCAPI ~ScriptBlockCustomComponentData();
120 ::ll::TypedStorage<8, 8, ::ScriptDeferredEventCoordinator&> mDeferredEventCoordinator;
121 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::cereal::ReflectionCtx>> mCerealContext;
122 ::ll::TypedStorage<8, 24, ::std::vector<::Bedrock::PubSub::Subscription>> mBlockSubscriptions;
126 ::std::unordered_map<
130 ::ll::TypedStorage<8, 24, ::ScriptModuleMinecraft::ScriptCustomComponentAfterEventList> mAsyncEventQueues;
131 ::ll::TypedStorage<2, 2, ::Bedrock::EnumSet<::ScriptModuleMinecraft::ScriptBlockCustomComponentEventTypes, 14>>
132 mV1EventSubscriptionList;
133 ::ll::TypedStorage<8, 8, ::ScriptModuleMinecraft::ScriptCustomComponentParameterCache&>
134 mCustomComponentParameterCache;
139 ScriptBlockCustomComponentsRegistry& operator=(ScriptBlockCustomComponentsRegistry
const&);
140 ScriptBlockCustomComponentsRegistry(ScriptBlockCustomComponentsRegistry
const&);
141 ScriptBlockCustomComponentsRegistry();
146 virtual void onPreFlushAfterEvents() ;
150 virtual void onPostFlushAfterEvents() ;
152 virtual void _onScriptInitializationComplete() ;
154 virtual void _onReload() ;
156 virtual ~ScriptBlockCustomComponentsRegistry() ;
158 virtual ::std::vector<::std::string_view> getValidComponentsForBlock(
162 virtual ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptCustomComponentParameters>
const&
163 tryGetCustomComponentParametersForBlock(
165 ::std::string_view componentName,
173 MCAPI ScriptBlockCustomComponentsRegistry(
179 MCAPI
void _bindComponentToCereal(
184 MCAPI
bool _checkDifferentEventRegistered(
189 MCAPI ::Scripting::Result<
196 _componentRegistrationValidators(
197 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
204 MCAPI ::Scripting::Result<
211 _componentRegistrationValidatorsCommon(
212 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
219 MCAPI ::Scripting::Result<
226 _componentRegistrationValidatorsV1(
227 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
235 MCAPI ::Scripting::Result<
242 _componentReloadRegistrationValidators(
243 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
251 MCAPI
void _registerBlockForEventing(
253 ::std::vector<::gsl::not_null<::BlockCustomComponentsComponent*>>
const& comps
256 MCAPI
void _validateBlockQueuedTickingComponentPresentWithClosure(
::Block const& block)
const;
258 MCAPI
void _validateBlockRedstoneConsumerComponentPresentWithClosure(
::Block const& block)
const;
260 MCAPI
void _validateBlockStateChangeComponentPresentWithClosure(
::Block const& block)
const;
264 MCFOLD ::ScriptModuleMinecraft::ScriptCustomComponentParameterCache& getCustomComponentParameterCache()
const;
267 hasSubscriptionFor(::ScriptModuleMinecraft::ScriptBlockCustomComponentEventTypes type,
::Block const& block)
const;
297 MCAPI ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface
const*
300 MCAPI ::Scripting::Result<
307 tryRegisterCustomComponent(
313 MCAPI ::Scripting::Result<
320 tryRegisterCustomComponentV1(
330 MCAPI static ::ScriptModuleMinecraft::ScriptCustomComponentEventMetadata<
336 MCAPI
static void generateOrderDocumentationForVersion(
361 MCAPI
void $onPreFlushAfterEvents();
365 MCAPI
void $onPostFlushAfterEvents();
367 MCAPI
void $_onScriptInitializationComplete();
369 MCAPI
void $_onReload();
371 MCAPI ::std::vector<::std::string_view> $getValidComponentsForBlock(
375 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptCustomComponentParameters>
const&
376 $tryGetCustomComponentParametersForBlock(
378 ::std::string_view componentName,