@minecraft/creator-tools
Version:
Minecraft Creator Tools command line and libraries.
92 lines (91 loc) • 3.12 kB
TypeScript
import BlockVolumeLine from "./BlockVolumeLine";
import BlockProperty from "./BlockProperty";
import IBlockData from "./IBlockData";
import IBlockSurroundings from "./IBlockSurroundings";
import BlockType from "./BlockType";
import { BlockRenderType } from "./BlockRenderType";
import IPropertyObject from "../dataform/IPropertyObject";
import ComponentizedBase from "./ComponentizedBase";
export declare enum BlockFacingDirection {
Down = 0,
up = 1,
north = 2,
south = 3,
west = 4,
east = 5
}
export declare enum BlockDirection {
South = 0,
West = 1,
North = 2,
East = 3
}
export default class Block extends ComponentizedBase implements IPropertyObject {
static MAX_WATER_LEVEL: number;
private _type;
private _blockType;
private _data;
private _covered;
private _typeId;
private _z;
private _surroundings;
line: BlockVolumeLine | undefined;
extraLiquidDepth: number;
persistenceVersion: number;
properties: {
[id: string]: BlockProperty;
};
private _onTypeChanged;
private _onPropertyChanged;
get onTypeChanged(): import("ste-events").IEvent<Block, Block>;
get onPropertyChanged(): import("ste-events").IEvent<Block, BlockProperty>;
get data(): number;
set data(newData: number);
get surroundings(): IBlockSurroundings;
/**
* Clears the cached surroundings so they will be recalculated on next access.
* This should be called when a neighboring block changes.
*/
clearSurroundings(): void;
setType(blockType: BlockType): void;
get opaqueSideCount(): number;
get isOpaque(): boolean;
private _ensureTypes;
_updateDataFromProperties(): void;
_notifyTypeChanged(): void;
_notifyPropertyChanged(blockProperty: BlockProperty): void;
get blockType(): BlockType;
get textureName(): string;
copyFrom(block: Block): void;
static fromLegacyId(byte: number): Block;
get effectiveWaterLevel(): number;
get renderType(): BlockRenderType;
getProperty(name: string): BlockProperty;
ensureProperty(name: string): BlockProperty;
getPropertyBoolean(name: string, defaultValue: boolean): boolean;
getPropertyString(name: string, defaultValue: string): string;
getPropertyNumber(name: string, defaultValue: number): number;
addProperty(name: string): BlockProperty;
get z(): number | undefined;
set z(value: number | undefined);
get x(): number;
get y(): number;
get coordinatesString(): string;
get typeName(): string | undefined;
set typeName(val: string | undefined);
getBlockData(): IBlockData;
toString(): string;
get isEmpty(): boolean;
private _ensureSurroundingsIfCube;
get isCovered(): boolean;
get isTouchingOtherBlock(): boolean;
get up(): Block | undefined;
get down(): Block | undefined;
get left(): Block | undefined;
get right(): Block | undefined;
get forward(): Block | undefined;
get backward(): Block | undefined;
get shortTypeId(): string;
constructor(typeId?: string);
applyFrom(template: Block): void;
}