1 dragonblocks.registerGroup({
4 dirt.registerDirt = function(obj){
5 if(! obj || ! obj.name)
7 let desc = obj.desc || "Dirt with " + dblib.humanFormat(obj.name);
8 let name = "dirt:" + obj.name;
9 let texture = "dirt_" + obj.name + ".png";
10 dragonblocks.registerNode({
14 groups: ["crumbly", "dirt"],
18 onset: (map, x, y) => {
19 map.getNode(x, y).meta.dirtInterval = setInterval(_ => {
20 for(let ix = x - 1; ix <= x + 1; ix++)
21 for(let iy = y - 1; iy <= y + 1; iy++)
22 if(dblib.random(0, 60) == 0 && map.getNode(ix, iy) && map.getNode(ix, iy).name == "dirt:dirt" && map.getNode(ix, iy - 1) && ! map.getNode(ix, iy - 1).stable)
23 map.setNode(ix, iy, name);
24 if(dblib.random(0, 45) == 0 && map.getNode(x, y - 1) && map.getNode(x, y - 1).stable)
25 map.setNode(x, y, "dirt:dirt");
28 onremove: (map, x, y) => {
29 clearInterval(map.getNode(x, y).meta.dirtInterval);