Examples: Furnace

Textures

Block

/* myFurnace.js */
id = config.getBlockId("myFurnaceId");
name = "myFurnace";
creativeTab = "decorations";
material = "iron";

// inactive
displayName[0] = "My Furnace";
addToCreative[0] = true; hardness[0] = 1.5;
resistance[0] = 5.0;
textureFileFront[0] = "furnaceFrontOff.png";
textureFileBack[0] = "furnaceSide.png";
textureFileSides[0] = "furnaceSide.png";
onActivated[0] = "player.openGui('myFurnaceGUI', position); result = true;";
hasTileEntity[0] = true;
tileEntity[0] = "myFurnaceTE";

// active
hardness[1] = 1.5;
resistance[1] = 5.0;
textureFileFront[1] = "furnaceFrontOn.png";
textureFileBack[1] = "furnaceSide.png";
textureFileSides[1] = "furnaceSide.png";
light[1] = 10;
onActivated[1] = "player.openGui('myFurnaceGUI', position); result = true;";
hasTileEntity[1] = true;
tileEntity[1] = "myFurnaceTE";

GUI

/* myFurnaceGUI.js */
name = "myFurnaceGUI";

Tile Entity

/* myFurnaceTE.js */
name = "myFurnaceTE";
ticksToSmelt = 75;

mod.js

config.addBlockIdProperty("myFurnaceId", 1500);
mod.addTileEntity("myFurnaceTE.js", "furnace");
mod.addGui("myFurnaceGUI.js", "furnace");
mod.addBlock("myFurnace.js", "furnace");