30class ScriptStructureTemplate {
34 ::ll::TypedStorage<8, 32, ::std::string const> mId;
35 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::StructureManager>> mStructureManager;
36 ::ll::TypedStorage<8, 16, ::Scripting::WeakLifetimeScope> mScope;
37 ::ll::TypedStorage<8, 8, ::LevelStorage&> mLevelStorage;
38 ::ll::TypedStorage<8, 32, ::Scripting::WeakTypedObjectHandle<::ScriptModuleMinecraft::ScriptStructureManager>>
39 mScriptStructureManager;
44 ScriptStructureTemplate& operator=(ScriptStructureTemplate
const&);
45 ScriptStructureTemplate();
52 MCAPI ScriptStructureTemplate(
53 ::std::string
const&
id,
54 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,
60 MCFOLD ::Scripting::InvalidArgumentError
63 MCAPI ::Scripting::Result<
64 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptBlockPermutation>>,
67 getBlockPermutation(
::Vec3 const& location)
const;
69 MCAPI ::Scripting::Result<::Vec3, ::ScriptModuleMinecraft::ScriptInvalidStructureError> getSize()
const;
72 Result<bool, ::ScriptModuleMinecraft::ScriptInvalidStructureError, ::Scripting::InvalidArgumentError>
73 isWaterlogged(
::Vec3 const& location)
const;
75 MCAPI ::Scripting::Result<
80 saveAs(::std::string
const& identifier, ::StructureRedstoneSaveMode saveMode);
82 MCAPI ::Scripting::Result<void, ::ScriptModuleMinecraft::ScriptInvalidStructureError> saveToWorld();
85 Result<void, ::Scripting::InvalidArgumentError, ::ScriptModuleMinecraft::ScriptInvalidStructureError>
93 MCAPI ~ScriptStructureTemplate();
99 MCAPI static ::Scripting::ClassBinding bind();
101 MCAPI static ::Scripting::EnumBinding bindAnimationModeEnum();
103 MCAPI static ::Scripting::EnumBinding bindMirrorEnum();
105 MCAPI static ::Scripting::EnumBinding bindRotationEnum();
107 MCAPI static ::Scripting::EnumBinding bindStructureSaveModeEnum();
116 ::std::string
const&
id,
117 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,