LeviLamina
Loading...
Searching...
No Matches
IScriptBlockComponentFactory.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
5
// auto generated inclusion list
6
#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
7
8
// auto generated forward declare list
9
// clang-format off
10
class
Block
;
11
class
BlockPos
;
12
class
BlockSource
;
13
namespace
ScriptModuleMinecraft {
class
BaseScriptBlockComponent
; }
14
namespace
Scripting {
class
Release
; }
15
namespace
Scripting {
class
WeakLifetimeScope
; }
16
namespace
Scripting {
struct
ClassBinding
; }
17
// clang-format on
18
19
namespace
ScriptModuleMinecraft {
20
21
class
IScriptBlockComponentFactory
{
22
public
:
23
// virtual functions
24
// NOLINTBEGIN
25
virtual
~IScriptBlockComponentFactory
() =
default
;
26
27
virtual ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::BaseScriptBlockComponent>>
28
createComponent(
::BlockSource
& region,
::BlockPos
const
& position,
::Scripting::WeakLifetimeScope
const
& scope) = 0;
29
30
virtual ::std::vector<::Scripting::ClassBinding> bind()
const
= 0;
31
32
virtual
bool
canAddOn(
::Block
const
& block)
const
;
33
34
virtual ::std::optional<::Scripting::Release> overrideEnumVersion()
const
;
35
// NOLINTEND
36
37
public
:
38
// virtual function thunks
39
// NOLINTBEGIN
40
MCFOLD
bool
$canAddOn(
::Block
const
& block)
const
;
41
42
43
// NOLINTEND
44
};
45
46
}
// namespace ScriptModuleMinecraft
BlockPos
Definition
BlockPos.h:19
BlockSource
Definition
BlockSource.h:71
Block
Definition
Block.h:43
ScriptModuleMinecraft::BaseScriptBlockComponent
Definition
BaseScriptBlockComponent.h:20
ScriptModuleMinecraft::IScriptBlockComponentFactory
Definition
IScriptBlockComponentFactory.h:21
Scripting::Release
Definition
Release.h:16
Scripting::WeakLifetimeScope
Definition
WeakLifetimeScope.h:7
Scripting::ClassBinding
Definition
ClassBinding.h:19
src
mc
scripting
modules
minecraft
block
components
IScriptBlockComponentFactory.h
Generated on
for LeviLamina by
1.16.1