UNPKG

@minecraft/creator-tools

Version:

Minecraft Creator Tools command line and libraries.

73 lines (72 loc) 3.22 kB
import BlockBaseType from "./BlockBaseType"; import { BlockRenderType } from "./BlockRenderType"; import IBlockTypeData from "./IBlockTypeData"; import IJavaBlockTypeData from "./IJavaBlockTypeData"; import IFile from "../storage/IFile"; import IComponent from "./IComponent"; import IBlockTypeBehaviorPack from "./IBlockTypeBehaviorPack"; import IManagedComponentSetItem from "./IManagedComponentSetItem"; import IManagedComponent from "./IManagedComponent"; import { ManagedComponent } from "./ManagedComponent"; import { IBlocksMetadataBlockProperty } from "./IBlocksMetadata"; import { IBlockResource } from "./IBlocksCatalog"; export default class BlockType implements IManagedComponentSetItem { data: IBlockTypeData; javaData: IJavaBlockTypeData | null; private _baseType?; private _baseTypeId; private _isCustom; private _behaviorPackData; private _behaviorPackFile?; private _blockResource?; private _isLoaded; private _loadedWithComments; private _properties; behaviorPackBlockTypeDef?: IBlockTypeBehaviorPack; private _managed; private _onLoaded; private _onComponentAdded; private _onComponentRemoved; private _onComponentChanged; get numericId(): number | undefined; set numericId(newId: number | undefined); get baseTypeId(): string; get mapColor(): string | undefined; get isCustom(): boolean; get baseType(): BlockBaseType; get catalogResource(): IBlockResource | undefined; set baseType(baseType: BlockBaseType); get material(): string; renderType: BlockRenderType; get icon(): string; get title(): string; get friendlyName(): string; constructor(typeId: string); getIcon(): string; get id(): string; set id(newId: string); get onComponentAdded(): import("ste-events").IEvent<BlockType, IManagedComponent>; get onComponentRemoved(): import("ste-events").IEvent<BlockType, string>; get onComponentChanged(): import("ste-events").IEvent<BlockType, IManagedComponent>; get isLoaded(): boolean; get behaviorPackFile(): IFile | undefined; get onLoaded(): import("ste-events").IEvent<BlockType, BlockType>; set behaviorPackFile(newFile: IFile | undefined); get shortId(): string; getComponent(id: string): IManagedComponent; notifyComponentUpdated(id: string): void; getAllComponents(): IManagedComponent[]; getComponents(): IManagedComponent[]; ensurePropertyDefinition(propertyName: string, propertyDef: IBlocksMetadataBlockProperty): void; addComponent(id: string, componentOrData: ManagedComponent | IComponent | string | string[] | boolean | number[] | number | undefined): ManagedComponent; removeComponent(id: string): void; _ensureBehaviorPackDataInitialized(): void; persist(): boolean; /** * Loads the definition from the file. * @param preserveComments If true, uses comment-preserving JSON parsing for edit/save cycles. * If false (default), uses efficient standard JSON parsing. * Can be called again with true to "upgrade" a read-only load to read/write. */ load(preserveComments?: boolean): Promise<void>; }