mc-beta-server/server/blocks/BlockBehaviour.ts

19 lines
905 B
TypeScript
Raw Normal View History

import AABB from "../AABB";
import Block from "./Block";
import IBlockBehaviour from "./IBlockBehaviour";
import Random from "../Random";
import World from "../World";
2023-08-20 01:17:05 +01:00
export default class BlockBehaviour implements IBlockBehaviour {
2024-10-18 21:47:03 +01:00
public block!:Block;
public placed(world:World, x:number, y:number, z:number) {}
public destroyed(world:World, x:number, y:number, z:number) {}
public interactable() { return false; }
2023-08-20 01:17:05 +01:00
public neighborBlockChange(world:World, x:number, y:number, z:number, blockId:number) {}
2023-11-02 08:31:43 +00:00
public droppedItem(blockId:number) { return blockId; }
public droppedCount(blockId:number) { return 1; }
public getBoundingBox(x:number, y:number, z:number) { return AABB.getAABB(0 + x, 0 + y, 0 + z, 1 + x, 1 + y, 1 + z); }
public randomTick(world:World, x:number, y:number, z:number, random:Random) {}
2024-10-18 21:47:03 +01:00
public canPlaceBlockAt(world:World, x:number, y:number, z:number) { return true; }
2023-08-20 01:17:05 +01:00
}