]> git.lizzy.rs Git - dragonblocks.git/blob - game/furnace/itemdef.js
Map abstraction and World class
[dragonblocks.git] / game / furnace / itemdef.js
1 dragonblocks.registerNode({
2         name: "furnace:furnace",
3         texture: "furnace_furnace.png",
4         groups: ["cracky"],
5         hardness: 10,
6         desc: "Furnace",
7         stable: true,
8         onset: (map, x, y) => {
9                 let meta = map.getNode(x, y).meta;
10                 meta.inventory = new furnace.Inventory();
11                 if(meta.inventoryString)
12                         meta.inventory.ceserialize(meta.inventoryString);
13         },
14         onclick: (map, x, y) => {
15                 let meta = map.getNode(x, y).meta;
16                 dragonblocks.player.setInventoryElements([meta.inventory, dragonblocks.player.tmp.mainInventory]);
17                 dragonblocks.player.openInventory();
18                 dragonblocks.player.onNextInventoryClose = _ => {
19                         dragonblocks.player.resetInventoryElements();
20                         meta.inventoryString = meta.inventory.serialize();
21                 };
22         },
23         ondig: (map, x, y) => {
24                 return map.getNode(x, y).meta.inventory.isEmpty();
25         },
26 });
27 for(let i = 0; i < 6; i++){
28         dragonblocks.registerItem({
29                 name: "furnace:burn_progress_" + i,
30                 texture: "furnace_burn_progress_" + i + ".png",
31                 groups: [],
32                 hidden: true,
33                 desc: "",
34         });
35         dragonblocks.registerItem({
36                 name: "furnace:fuel_progress_" + i,
37                 texture: "furnace_fuel_progress_" + i + ".png",
38                 groups: [],
39                 hidden: true,
40                 desc: "",
41         });
42 }