Page 21 of 93

Posted: Sun Apr 07, 2013 15:10
by rubenwardy
jojoa1997 wrote:for elevators you could have walkthrough items that change the player gravity to a negative number. also can anyone make a gravity changing mod
Gravity is hard coded.

Posted: Sun Apr 07, 2013 15:12
by PilzAdam
rubenwardy wrote:
jojoa1997 wrote:for elevators you could have walkthrough items that change the player gravity to a negative number. also can anyone make a gravity changing mod
Gravity is hard coded.
Nope.

Posted: Sun Apr 07, 2013 15:13
by jojoa1997

Posted: Sun Apr 07, 2013 16:06
by rubenwardy
jojoa1997 wrote:Not with this commit https://github.com/minetest/minetest/co ... 5d4568a46d
Wow!

Posted: Sun Apr 07, 2013 18:35
by dj22
semi automatic elevator





Code: Select all



minetest.register_node("ele:button6", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, -0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, -0.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, -0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, -0.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
minetest.env:add_node(pos, {name="ele:button7"})
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')


minetest.env:add_node(pos, {name="ele:button7"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button7", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, 0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, 0.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, 0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, 0.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)

    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button8"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})









minetest.register_node("ele:button8", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.2, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.2, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main',4*4, 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button9"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})













minetest.register_node("ele:button9", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button10"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})




minetest.register_node("ele:button10", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.4, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.4, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button11"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})












minetest.register_node("ele:button11", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main',4*4, 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button12"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button12", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.6, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.6, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.6, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.6, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button13"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})










minetest.register_node("ele:button13", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button14"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})









minetest.register_node("ele:button14", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.8, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.8, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.8, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.8, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button15"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button15", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button16"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button16", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button17"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})









minetest.register_node("ele:button17", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button18"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})











minetest.register_node("ele:button18", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.2, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.2, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button19"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button19", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button20"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button20", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button21"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button21", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.5, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.5, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
minetest.env:add_node(pos, {name="ele:button22"})
player:get_inventory():add_item('main', 'default:iron_lump 1')

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})





























minetest.register_node("ele:button22", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))

minetest.env:add_node(pos, {name="ele:button23"})
player:get_inventory():add_item('main', 'default:iron_lump 1')

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})













minetest.register_node("ele:button23", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button24"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button24", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button25"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})


minetest.register_node("ele:button25", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button26"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})



minetest.register_node("ele:button26", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button27"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button27", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button28"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button28", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button4"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})












minetest.register_abm(
    {nodenames = {"ele:button8"},
    interval = 1,
    chance = 2,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button9"})


    end,


})





minetest.register_abm(
    {nodenames = {"ele:button9"},
    interval = 1,
    chance = 4,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button10"})


    end,


})





minetest.register_abm(
    {nodenames = {"ele:button10"},
    interval = 1,
    chance = 6,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button11"})


    end,


})








minetest.register_abm(
    {nodenames = {"ele:button11"},
    interval = 1,
    chance = 8,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button12"})


    end,


})






minetest.register_abm(
    {nodenames = {"ele:button12"},
    interval = 1,
    chance = 10,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button13"})


    end,


})




minetest.register_abm(
    {nodenames = {"ele:button13"},
    interval = 1,
    chance = 12,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button14"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button14"},
    interval = 1,
    chance = 14,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button15"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button15"},
    interval = 1,
    chance = 16,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button16"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button16"},
    interval = 1,
    chance = 18,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button17"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button17"},
    interval = 1,
    chance = 20,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button18"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button18"},
    interval = 1,
    chance = 22,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button19"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button19"},
    interval = 1,
    chance = 24,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button20"})


    end,


})


minetest.register_abm(
    {nodenames = {"ele:button20"},
    interval = 1,
    chance = 26,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button21"})


    end,


})





minetest.register_abm(
    {nodenames = {"ele:button22"},
    interval = 1,
    chance = 2,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button23"})


    end,


})







minetest.register_abm(
    {nodenames = {"ele:button23"},
    interval = 1,
    chance = 4,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button24"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button24"},
    interval = 1,
    chance = 6,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button25"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button25"},
    interval = 1,
    chance = 8,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button26"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button26"},
    interval = 1,
    chance = 10,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button27"})


    end,


})

Posted: Sun Apr 07, 2013 18:38
by dj22
rubenwardy wrote:
jojoa1997 wrote:for elevators you could have walkthrough items that change the player gravity to a negative number. also can anyone make a gravity changing mod
Gravity is hard coded.
this isn't

Code: Select all

minetest.register_node("ele:button6", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, -0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, -0.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, -0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, -0.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
minetest.env:add_node(pos, {name="ele:button7"})
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')


minetest.env:add_node(pos, {name="ele:button7"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button7", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, 0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, 0.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.5, 0.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.5, 0.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)

    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button8"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})









minetest.register_node("ele:button8", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.2, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.2, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main',4*4, 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button9"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})













minetest.register_node("ele:button9", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button10"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})




minetest.register_node("ele:button10", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.4, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.4, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 4*4,'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button11"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})












minetest.register_node("ele:button11", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main',4*4, 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button12"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button12", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.6, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.6, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.6, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.6, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button13"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})










minetest.register_node("ele:button13", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button14"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})









minetest.register_node("ele:button14", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.8, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.8, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.8, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.8, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button15"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button15", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button16"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button16", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button17"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})









minetest.register_node("ele:button17", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button18"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})











minetest.register_node("ele:button18", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.2, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.2, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.2, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button19"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button19", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button20"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button20", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button21"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button21", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.5, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.5, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
minetest.env:add_node(pos, {name="ele:button22"})
player:get_inventory():add_item('main', 'default:iron_lump 1')

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})





























minetest.register_node("ele:button22", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.4, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.4, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))

minetest.env:add_node(pos, {name="ele:button23"})
player:get_inventory():add_item('main', 'default:iron_lump 1')

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})













minetest.register_node("ele:button23", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button24"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button24", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 1.1, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 1.1, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button25"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})


minetest.register_node("ele:button25", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.9, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.9, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button26"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})



minetest.register_node("ele:button26", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.7, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.7, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button27"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})







minetest.register_node("ele:button27", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.5, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.5, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button28"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})








minetest.register_node("ele:button28", {
    drawtype = "nodebox",
    tiles = {"light.png"},
   legacy_facedir_simple = true,

   
    paramtype = "light",
    paramtype2 = "wallmounted",
    walkable = true,
    groups = {cracky=3},
 selection_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}

      }    
    },

    node_box = {
        type = "fixed",
        fixed = {{ -0.5, -0.5, -0.5, 0.6, 0.3, 0.5},
    
                    { -0.5, -0.5, -0.5, 0.6, 0.3, 0.5}



      }    
      },

    

      description="ore miner",
    on_construct = function(pos)
        local meta = minetest.env:get_meta(pos)
        meta:set_string("formspec",
                "size[8,9]"..
                      "list[current_name;main;0,0;3,4;]"..
                "list[current_name;main;4,0;3,4;]"..
                "list[current_player;main;0,5;8,4;]")
        meta:set_string("infotext", "iron_miner")
        local inv = meta:get_inventory()
        inv:set_size("main", 4*4)
    end,
    on_punch = function(pos,player)
        local meta = minetest.env:get_meta(pos);
        local inv = meta:get_inventory()
        return inv:is_empty("main")
    end,
    on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff in chest at "..minetest.pos_to_string(pos))
    end,
    on_metadata_inventory_put = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " moves stuff to chest at "..minetest.pos_to_string(pos))
player:get_inventory():add_item('main', 'default:iron_lump 1')

minetest.env:add_node(pos, {name="ele:button4"})

    end,
    on_metadata_inventory_take = function(pos, listname, index, stack, player)
        minetest.log("action", player:get_player_name()..
                " takes stuff from chest at "..minetest.pos_to_string(pos))
    end,


})












minetest.register_abm(
    {nodenames = {"ele:button8"},
    interval = 1,
    chance = 2,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button9"})


    end,


})





minetest.register_abm(
    {nodenames = {"ele:button9"},
    interval = 1,
    chance = 4,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button10"})


    end,


})





minetest.register_abm(
    {nodenames = {"ele:button10"},
    interval = 1,
    chance = 6,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button11"})


    end,


})








minetest.register_abm(
    {nodenames = {"ele:button11"},
    interval = 1,
    chance = 8,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button12"})


    end,


})






minetest.register_abm(
    {nodenames = {"ele:button12"},
    interval = 1,
    chance = 10,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button13"})


    end,


})




minetest.register_abm(
    {nodenames = {"ele:button13"},
    interval = 1,
    chance = 12,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button14"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button14"},
    interval = 1,
    chance = 14,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button15"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button15"},
    interval = 1,
    chance = 16,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button16"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button16"},
    interval = 1,
    chance = 18,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button17"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button17"},
    interval = 1,
    chance = 20,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button18"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button18"},
    interval = 1,
    chance = 22,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button19"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button19"},
    interval = 1,
    chance = 24,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button20"})


    end,


})


minetest.register_abm(
    {nodenames = {"ele:button20"},
    interval = 1,
    chance = 26,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button21"})


    end,


})





minetest.register_abm(
    {nodenames = {"ele:button22"},
    interval = 1,
    chance = 2,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button23"})


    end,


})







minetest.register_abm(
    {nodenames = {"ele:button23"},
    interval = 1,
    chance = 4,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button24"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button24"},
    interval = 1,
    chance = 6,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button25"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button25"},
    interval = 1,
    chance = 8,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button26"})


    end,


})

minetest.register_abm(
    {nodenames = {"ele:button26"},
    interval = 1,
    chance = 10,
    action = function(pos)

minetest.env:add_node(pos, {name="ele:button27"})


    end,


})

Posted: Sun Apr 07, 2013 18:48
by AspireMint
Hello,
i have idea, aquarium with animated fish ^^

Posted: Sun Apr 07, 2013 20:17
by Likwid H-Craft
AspireMint wrote:Hello,
i have idea, aquarium with animated fish ^^
Now that is a cool, idea but if you like have two blocks like this "▄▄" then I think it be in version 2...anyways I will make it one block for now.

so I will make this work.

Edit: And you will not see me, posting the topic until I finish it.

Posted: Mon Apr 08, 2013 08:22
by markveidemanis
Maybe have a mod that makes the player disappear or remove the nameplate.
Also have a mod that allows multiple chatrooms, like admins and players.

Posted: Mon Apr 08, 2013 13:11
by rubenwardy
Likwid H-Craft wrote:
If like that to happen we need to program it in C++ Since you can't program in .lua I know of to make players eye view level, lower or higher.
You could edit the player entity to make it smaller, but everything would look that same, you would just be a small guy floating around.

Posted: Mon Apr 08, 2013 23:58
by jojoa1997
could someone make a battle for wesnoth mod. here is the site http://www.wesnoth.org and look up youtube videos for a general idea

Posted: Tue Apr 09, 2013 16:17
by danny
id like a mod with mobs and staffs wands and potions plz

Posted: Tue Apr 09, 2013 17:45
by danny
if someone helps ill provide a texture...

Posted: Wed Apr 10, 2013 06:30
by clarksallador
Idea ^^ :
maybe add sprint to the game
also make piston push ..
sorry for my bad english

Posted: Wed Apr 10, 2013 09:42
by patrickgarvilles
slender man mod :D

Posted: Wed Apr 10, 2013 12:31
by rubenwardy
clarksallador wrote:Idea ^^ :
maybe add sprint to the game
also make piston push ..
sorry for my bad english
Sprint is in the game.

Press J to enable sprint, and then E when you want to sprint.

NB: you need the "fast" privilege - /grant singleplayer fast if you are on single player

Pistons do push nodes(blocks), but do not push players.

Posted: Wed Apr 10, 2013 14:30
by Calinou
In the Git version (not in 0.4.6), you can set per-player speed/gravity/jump height, so we could give per-player "fast move" speeds. :P

Posted: Thu Apr 11, 2013 00:12
by angelusbarney
I don't know if this has been mentioned earlier, but I couldn't find much in terms of this on the forums, hence I'll probably throw this idea to you folks anyway.

What about a mod that would allow for Energy Generation, Energy Transfer, and using this energy in Machines?
Like in IndustrialCraft2, BuildCraft, Universal Electricity or even RedPower?

If anyone has some suggestions for what would need to be done, and if it is possible with the Lua-based API, I would love to hear it, and begin work on an energy system (I'll probably release it under BSD license, or LGPL if I can't use another license) which can be used by others as well.

Posted: Thu Apr 11, 2013 10:37
by windmere33
is there any mod for items (like shovels and picks) to mine faster? i was just watching some minecraft vids, and saw that their dig time was like 10x faster than ours.

Posted: Thu Apr 11, 2013 12:26
by Calinou
In creative mode, you'll dig any block rapidly. Else, you could just edit the "default" mod's code to make digging times shorter.

Posted: Thu Apr 11, 2013 12:31
by CryAngel
angelusbarney wrote:What about a mod that would allow for Energy Generation, Energy Transfer, and using this energy in Machines?
here Technic mod already which introduce some generators and machines and i prefer extend and improve it rather than make some other mod.

Posted: Thu Apr 11, 2013 14:45
by angelusbarney
CryAngel wrote:
angelusbarney wrote:What about a mod that would allow for Energy Generation, Energy Transfer, and using this energy in Machines?
here Technic mod already which introduce some generators and machines and i prefer extend and improve it rather than make some other mod.
Neat. I should look for that, as that would be splendid.

Posted: Thu Apr 11, 2013 14:50
by clarksallador
Another Idea:
1.Make a boss in the neather.
2.Make hunger as a default.
3.Make some animation like making the chest open and close.

Posted: Thu Apr 11, 2013 23:27
by ERIC
my idea is for a brook stone mod_



brookstone is found deep in the earth and you can mistake it for gold despite gold looking and hiding in gold clusters gold is 3x stronger than gold in evry way

ty.ps:brookstone is not real and was a mod i made for a diff game once

Posted: Fri Apr 12, 2013 08:53
by clarksallador
How about a double piston extender ^.^