3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
7#include "mc/deps/scripting/runtime/Result.h"
8#include "mc/scripting/modules/minecraft/ScriptCustomComponentRegistry.h"
9#include "mc/scripting/modules/minecraft/block/IScriptBlockCustomComponentReader.h"
10#include "mc/scripting/modules/minecraft/events/ScriptBlockCustomComponentEventTypes.h"
11#include "mc/scripting/modules/minecraft/events/metadata/ScriptCustomComponentEventMetadata.h"
12#include "mc/world/events/ScriptDeferredEventListener.h"
25namespace BlockEvents {
class BlockBreakEvent; }
26namespace BlockEvents {
class BlockEntityFallOnEvent; }
27namespace BlockEvents {
class BlockPlaceEvent; }
28namespace BlockEvents {
class BlockPlayerDestroyEvent; }
29namespace BlockEvents {
class BlockPlayerInteractEvent; }
30namespace BlockEvents {
class BlockPlayerPlacingEvent; }
31namespace BlockEvents {
class BlockQueuedTickEvent; }
33namespace BlockEvents {
class BlockRandomTickLegacyEvent; }
34namespace BlockEvents {
class BlockStepOffEvent; }
35namespace BlockEvents {
class BlockStepOnEvent; }
36namespace ScriptModuleMinecraft {
class ScriptBlockCustomComponentInterface; }
37namespace ScriptModuleMinecraft {
class ScriptCustomComponentParameterCache; }
38namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentAlreadyRegisteredError; }
39namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentReloadNewComponentError; }
40namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentReloadNewEventError; }
41namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentReloadVersionError; }
42namespace ScriptModuleMinecraft {
struct ScriptCustomComponentInvalidRegistryError; }
43namespace ScriptModuleMinecraft {
struct ScriptCustomComponentParameters; }
44namespace Scripting {
class ModuleBindingBuilder; }
45namespace Scripting {
class WeakLifetimeScope; }
48namespace ScriptModuleMinecraft {
117 virtual void onPreFlushAfterEvents() ;
123 virtual void onPostFlushAfterEvents() ;
126 virtual void _onScriptInitializationComplete() ;
129 virtual void _onReload() ;
135 virtual ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptCustomComponentParameters>
const&
136 tryGetCustomComponentParametersForItem(
139 ::std::string_view componentName,
158 MCNAPI ::Scripting::Result<
166 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
173 MCNAPI ::Scripting::Result<
181 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
191 ::std::vector<::gsl::not_null<::BlockCustomComponentsComponent*>>
const& comps
219 MCNAPI ::Scripting::Result<
232 MCNAPI ::Scripting::Result<
249 MCNAPI static ::ScriptModuleMinecraft::ScriptCustomComponentEventMetadata<
285 MCNAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptCustomComponentParameters>
const&
289 ::std::string_view componentName,
Definition BlockCustomComponentsComponent.h:19
Definition BlockBreakEvent.h:17
Definition BlockEntityFallOnEvent.h:16
Definition BlockPlaceEvent.h:16
Definition BlockPlayerDestroyEvent.h:17
Definition BlockPlayerInteractEvent.h:17
Definition BlockPlayerPlacingEvent.h:18
Definition BlockQueuedTickEvent.h:16
Definition BlockRandomTickEvent.h:16
Definition BlockRandomTickLegacyEvent.h:16
Definition BlockStepOffEvent.h:16
Definition BlockStepOnEvent.h:16
Definition BlockType.h:84
Definition HashedString.h:5
Definition IBlockSource.h:37
Definition ScriptDeferredEventCoordinator.h:18
Definition ScriptDeferredEventListener.h:10
Definition ScriptDeferredFlushTracker.h:13
Definition IScriptBlockCustomComponentReader.h:18
Definition ScriptBlockCustomComponentInterface.h:10
Definition ScriptBlockCustomComponentsRegistry.h:52
MCAPI ::Scripting::Result< void, ::ScriptModuleMinecraft::ScriptCustomComponentInvalidRegistryError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentAlreadyRegisteredError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadVersionError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewEventError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewComponentError > tryRegisterCustomComponent(::HashedString const &name, ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface &&closures, ::Scripting::WeakLifetimeScope const &scope)
MCAPI void onPlayerBreak(::BlockEvents::BlockPlayerDestroyEvent const &eventData) const
MCAPI void _bindComponentToCereal(::HashedString const &compName, ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface const &closures)
static MCAPI void ** $vftableForIScriptBlockCustomComponentReader()
MCAPI void onStepOff(::BlockEvents::BlockStepOffEvent const &eventData) const
MCAPI void onPlace(::BlockEvents::BlockPlaceEvent const &eventData) const
static MCAPI void ** $vftableForScriptCustomComponentRegistry()
MCAPI void onEntityFallOn(::BlockEvents::BlockEntityFallOnEvent &eventData) const
MCAPI void onPlayerInteract(::BlockEvents::BlockPlayerInteractEvent &eventData) const
MCAPI void onRandomTickLegacy(::BlockEvents::BlockRandomTickLegacyEvent const &eventData) const
MCAPI ::Scripting::Result< void, ::ScriptModuleMinecraft::ScriptCustomComponentInvalidRegistryError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentAlreadyRegisteredError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadVersionError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewEventError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewComponentError > tryRegisterCustomComponentV1(::HashedString const &name, ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface &&closures, ::Scripting::WeakLifetimeScope const &scope)
MCAPI void $onPostFlushAfterEvents()
MCAPI ::Scripting::Result< void, ::ScriptModuleMinecraft::ScriptCustomComponentInvalidRegistryError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentAlreadyRegisteredError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadVersionError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewEventError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewComponentError > _componentReloadRegistrationValidators(::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair< ::HashedString const, ::ScriptModuleMinecraft::ScriptBlockCustomComponentsRegistry::ScriptBlockCustomComponentData > > > > const &compIt, ::HashedString const &name, ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface const &closures)
MCAPI void onQueuedTick(::BlockEvents::BlockQueuedTickEvent const &eventData) const
MCAPI void onBreak(::BlockEvents::BlockBreakEvent const &eventData) const
MCAPI void onRandomTick(::BlockEvents::BlockRandomTickEvent const &eventData) const
MCAPI void $onFlushBlockCustomComponentAfterEvents(::ScriptDeferredFlushTracker &deferredTracker)
MCAPI void _registerBlockForEventing(::BlockType &block, ::std::vector<::gsl::not_null<::BlockCustomComponentsComponent * > > const &comps)
MCAPI ScriptBlockCustomComponentsRegistry(::ServerScriptManagerEvents &events, ::ScriptDeferredEventCoordinator &deferredEventCoordinator, ::ScriptModuleMinecraft::ScriptCustomComponentParameterCache ¶meterCache)
static MCAPI void bind(::Scripting::ModuleBindingBuilder &moduleBuilder)
MCAPI void * $ctor(::ServerScriptManagerEvents &events, ::ScriptDeferredEventCoordinator &deferredEventCoordinator, ::ScriptModuleMinecraft::ScriptCustomComponentParameterCache ¶meterCache)
MCAPI void onStepOn(::BlockEvents::BlockStepOnEvent const &eventData) const
MCAPI void $_onScriptInitializationComplete()
MCAPI void beforeOnPlayerPlace(::BlockEvents::BlockPlayerPlacingEvent &eventData) const
static MCAPI ::ScriptModuleMinecraft::ScriptCustomComponentEventMetadata< ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface > const _getEventMetadata()
MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptCustomComponentParameters > const & $tryGetCustomComponentParametersForItem(::IBlockSource const ®ion, ::BlockPos blockPos, ::std::string_view componentName, ::Scripting::WeakLifetimeScope const &scope) const
MCAPI bool hasSubscriptionFor(::ScriptModuleMinecraft::ScriptBlockCustomComponentEventTypes type, ::Block const &block) const
MCAPI ::Scripting::Result< void, ::ScriptModuleMinecraft::ScriptCustomComponentInvalidRegistryError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentAlreadyRegisteredError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadVersionError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewEventError, ::ScriptModuleMinecraft::ScriptBlockCustomComponentReloadNewComponentError > _componentRegistrationValidatorsCommon(::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair< ::HashedString const, ::ScriptModuleMinecraft::ScriptBlockCustomComponentsRegistry::ScriptBlockCustomComponentData > > > > const &compIt, ::HashedString const &name)
MCAPI void $onPreFlushAfterEvents()
static MCAPI void ** $vftableForScriptDeferredEventListener()
Definition ScriptCustomComponentParameterCache.h:19
Definition ScriptCustomComponentRegistry.h:10
Definition ModuleBindingBuilder.h:29
Definition WeakLifetimeScope.h:7
Definition BlockRandomTickEvent.h:13
Definition ScriptBlockCustomComponentAlreadyRegisteredError.h:15
Definition ScriptBlockCustomComponentReloadNewComponentError.h:15
Definition ScriptBlockCustomComponentReloadNewEventError.h:15
Definition ScriptBlockCustomComponentReloadVersionError.h:15
Definition ScriptBlockCustomComponentsRegistry.h:60
MCAPI void setClosureData(::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface &&closures, ::Scripting::WeakLifetimeScope const &scope)
MCAPI ~ScriptBlockCustomComponentData()
Definition ScriptCustomComponentInvalidRegistryError.h:17
Definition ServerScriptManagerEvents.h:13