3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/scripting/runtime/Result.h"
7#include "mc/scripting/modules/minecraft/ScriptCustomComponentRegistry.h"
8#include "mc/scripting/modules/minecraft/block/IScriptBlockCustomComponentReader.h"
9#include "mc/scripting/modules/minecraft/events/ScriptBlockCustomComponentEventTypes.h"
10#include "mc/scripting/modules/minecraft/events/metadata/ScriptCustomComponentEventMetadata.h"
11#include "mc/world/events/ScriptDeferredEventListener.h"
23namespace BlockEvents {
class BlockEntityFallOnEvent; }
24namespace BlockEvents {
class BlockPlaceEvent; }
25namespace BlockEvents {
class BlockPlayerDestroyEvent; }
26namespace BlockEvents {
class BlockPlayerInteractEvent; }
27namespace BlockEvents {
class BlockPlayerPlacingEvent; }
28namespace BlockEvents {
class BlockQueuedTickEvent; }
30namespace BlockEvents {
class BlockRandomTickLegacyEvent; }
31namespace BlockEvents {
class BlockStepOffEvent; }
32namespace BlockEvents {
class BlockStepOnEvent; }
33namespace Json {
class Value; }
34namespace ScriptModuleMinecraft {
class ScriptBlockCustomComponentInterface; }
35namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentAlreadyRegisteredError; }
36namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentReloadNewComponentError; }
37namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentReloadNewEventError; }
38namespace ScriptModuleMinecraft {
struct ScriptBlockCustomComponentReloadVersionError; }
39namespace ScriptModuleMinecraft {
struct ScriptCustomComponentInvalidRegistryError; }
40namespace Scripting {
class ModuleBindingBuilder; }
41namespace Scripting {
class WeakLifetimeScope; }
42namespace Scripting {
struct ModuleDescriptor; }
45namespace ScriptModuleMinecraft {
112 virtual void onPreFlushAfterEvents() ;
118 virtual void onPostFlushAfterEvents() ;
121 virtual void _onScriptInitializationComplete() ;
124 virtual void _onReload() ;
145 MCNAPI ::Scripting::Result<
153 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
161 MCNAPI ::Scripting::Result<
169 ::std::_List_iterator<::std::_List_val<::std::_List_simple_types<::std::pair<
179 ::std::vector<::gsl::not_null<::BlockCustomComponentsComponent*>>
const& comps
205 MCNAPI ::Scripting::Result<
218 MCNAPI ::Scripting::Result<
235 MCNAPI static ::ScriptModuleMinecraft::ScriptCustomComponentEventMetadata<
275 ::std::string_view componentName
Definition BlockCustomComponentsComponent.h:17
Definition BlockEntityFallOnEvent.h:16
Definition BlockPlaceEvent.h:16
Definition BlockPlayerDestroyEvent.h:17
Definition BlockPlayerInteractEvent.h:17
Definition BlockPlayerPlacingEvent.h:17
Definition BlockQueuedTickEvent.h:16
Definition BlockRandomTickEvent.h:16
Definition BlockRandomTickLegacyEvent.h:16
Definition BlockStepOffEvent.h:16
Definition BlockStepOnEvent.h:16
Definition BlockLegacy.h:88
Definition HashedString.h:5
Definition IBlockSource.h:35
Definition ScriptDeferredEventCoordinator.h:16
Definition ScriptDeferredEventListener.h:10
Definition ScriptDeferredFlushTracker.h:5
Definition IScriptBlockCustomComponentReader.h:13
Definition ScriptBlockCustomComponentInterface.h:10
Definition ScriptBlockCustomComponentsRegistry.h:49
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 _bindComponentToCereal(::HashedString const &compName, ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface const &closures)
MCAPI ScriptBlockCustomComponentsRegistry(::ScriptDeferredEventCoordinator &deferredEventCoordinator)
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 void _registerBlockForEventing(::BlockLegacy &block, ::std::vector<::gsl::not_null<::BlockCustomComponentsComponent * > > const &comps)
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 onRandomTick(::BlockEvents::BlockRandomTickEvent const &eventData) const
MCAPI void $onFlushBlockCustomComponentAfterEvents(::ScriptDeferredFlushTracker &deferredTracker)
static MCAPI void generateOrderDocumentationForVersion(::Scripting::ModuleDescriptor const &moduleToDocumentFor, ::Json::Value &eventOrderArray)
static MCAPI void bind(::Scripting::ModuleBindingBuilder &moduleBuilder)
MCAPI void onStepOn(::BlockEvents::BlockStepOnEvent const &eventData) const
MCAPI void $_onScriptInitializationComplete()
MCAPI void onPlayerDestroy(::BlockEvents::BlockPlayerDestroyEvent const &eventData) const
MCAPI void beforeOnPlayerPlace(::BlockEvents::BlockPlayerPlacingEvent &eventData) const
static MCAPI ::ScriptModuleMinecraft::ScriptCustomComponentEventMetadata< ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface > const _getEventMetadata()
MCAPI bool hasSubscriptionFor(::ScriptModuleMinecraft::ScriptBlockCustomComponentEventTypes type, ::Block const &block) const
MCAPI void * $ctor(::ScriptDeferredEventCoordinator &deferredEventCoordinator)
MCAPI void $onPreFlushAfterEvents()
static MCAPI void ** $vftableForScriptDeferredEventListener()
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, ::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface const &closures)
MCAPI bool $isValidComponentForBlock(::IBlockSource const ®ion, ::BlockPos blockPos, ::std::string_view componentName) const
Definition ScriptCustomComponentRegistry.h:7
Definition ModuleBindingBuilder.h:30
Definition WeakLifetimeScope.h:12
Definition BlockRandomTickEvent.h:13
Definition ScriptBlockCustomComponentAlreadyRegisteredError.h:15
Definition ScriptBlockCustomComponentReloadNewComponentError.h:15
Definition ScriptBlockCustomComponentReloadNewEventError.h:15
Definition ScriptBlockCustomComponentReloadVersionError.h:15
Definition ScriptBlockCustomComponentsRegistry.h:57
MCAPI void setClosureData(::ScriptModuleMinecraft::ScriptBlockCustomComponentInterface &&closures, ::Scripting::WeakLifetimeScope const &scope)
MCAPI ~ScriptBlockCustomComponentData()
Definition ScriptCustomComponentInvalidRegistryError.h:17
Definition ModuleDescriptor.h:7