Post your mod requests/ideas here

User avatar
kaeza
Member
 
Posts: 2141
Joined: Thu Oct 18, 2012 05:00
GitHub: kaeza
IRC: kaeza diemartin blaaaaargh
In-game: kaeza

by kaeza » Wed Mar 27, 2013 01:47

oxenfreedan wrote:Yea but still they cant transport stuff from chest to chest!!!!!

Yes, it can.
You must use a "Filter" to extract the items from a container (chest) and put them in the tube network.
Last edited by kaeza on Wed Mar 27, 2013 01:48, edited 1 time in total.
Your signature is not the place for a blog post. Please keep it as concise as possible. Thank you!

Check out my stuff! | Donations greatly appreciated! PayPal | BTC: 1DFZAa5VtNG7Levux4oP6BuUzr1e83pJK2
 

User avatar
Tedypig
Member
 
Posts: 284
Joined: Tue Mar 05, 2013 12:33
IRC: Piggybear87
In-game: Piggybear

by Tedypig » Wed Mar 27, 2013 13:49

01010100 01100101 01100100 01111001 01110000 01101001 01100111
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Wed Mar 27, 2013 13:53



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.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

Zedm0n
Member
 
Posts: 18
Joined: Sun Mar 24, 2013 14:48

by Zedm0n » Fri Mar 29, 2013 17:16

Is it possible to make a moon phase mod in lua, or would it have to be c++?


Zedm0n
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Fri Mar 29, 2013 17:31

Zedm0n wrote:Is it possible to make a moon phase mod in lua, or would it have to be c++?


Zedm0n


C++ Hardcore in game unless someone can find a way, to push the moon sun etc, out of the hardcore code.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
Mito551
Member
 
Posts: 1271
Joined: Sat Jun 16, 2012 15:03

by Mito551 » Sat Mar 30, 2013 14:24

how about porting this thing? it's way beyond my power, but if somebody...
http://www.youtube.com/watch?v=-jbCAe2cAA0
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Sat Mar 30, 2013 18:31

I look into it :)
Mito551 wrote:how about porting this thing? it's way beyond my power, but if somebody...
http://www.youtube.com/watch?v=-jbCAe2cAA0
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

dj22
Member
 
Posts: 60
Joined: Wed Feb 27, 2013 18:37

by dj22 » Tue Apr 02, 2013 03:57

 

markveidemanis
Member
 
Posts: 211
Joined: Thu Sep 27, 2012 15:41

by markveidemanis » Tue Apr 02, 2013 10:22

A mod that allows Admins to edit the inventory of other people with a GUI.

A mod that shows a speech bubble containing a message above the head of a player that said the message. Person says message, bubble pops up.

An edited stationary_npc mod that only has 1 skin and 1 lua file and is lighter overall.

A mod that allows a function to disable a command for a specified player like disabling the /spawn command in the jail mod.
BitCoin: 1Eq4arvykGNa1YC2DbJpWcwGfMvtFGjAoR
 

User avatar
jojoa1997
Member
 
Posts: 2890
Joined: Thu Dec 13, 2012 05:11

by jojoa1997 » Tue Apr 02, 2013 10:55

markveidemanis wrote:A mod that allows Admins to edit the inventory of other people with a GUI.

A mod that shows a speech bubble containing a message above the head of a player that said the message. Person says message, bubble pops up.

An edited stationary_npc mod that only has 1 skin and 1 lua file and is lighter overall.

A mod that allows a function to disable a command for a specified player like disabling the /spawn command in the jail mod.
the jail mod warps the person every 30 seconds. the speech bubble looks stupid unless it is squary. i dont think admins should have that power. and finally you can edit stationary npc.
Coding;
1X coding
3X debugging
12X tweaking to be just right
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Tue Apr 02, 2013 12:52

markveidemanis wrote:A mod that allows Admins to edit the inventory of other people with a GUI.

A mod that shows a speech bubble containing a message above the head of a player that said the message. Person says message, bubble pops up.

An edited stationary_npc mod that only has 1 skin and 1 lua file and is lighter overall.

A mod that allows a function to disable a command for a specified player like disabling the /spawn command in the jail mod.

And Last One a mod that allows Mics be use, to talk.


Edit Quote :) really that was kind of my, idea to allow mic be use to talk, like other games and the speech cube tells, who using there mic, like Tf2 :)
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Tue Apr 02, 2013 22:12

[Idea]Water and Lava Sounds!
I have a cool idea!

How about we have sound for lava and water make them more life like :)
Like how fire has sound when it is around.

And Notch didn't even had the idea for minecraft yet, so what you say Minetest Players?

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
function water.update_sounds_around(pos)
    local p0, p1 = water.get_area_p0p1(pos)
    local cp = {x=(p0.x+p1.x)/2, y=(p0.y+p1.y)/2, z=(p0.z+p1.z)/2}
    local flames_p = minetest.env:find_nodes_in_area(p0, p1, {"group:water"})
    --print("number of flames at "..minetest.pos_to_string(p0).."/"
    --        ..minetest.pos_to_string(p1)..": "..#flames_p)
    local should_have_sound = (#flames_p > 0)
    local wanted_sound = nil
    if #flames_p >= 9 then
        wanted_sound = {name="water_flow_loop1", gain=1.5}
    elseif #flames_p > 0 then
        wanted_sound = {name="water_flow_loop1", gain=1.5}
    end
    local p0_hash = minetest.hash_node_position(p0)
    local sound = water.sounds[p0_hash]
    if not sound then
        if should_have_sound then
            water.sounds[p0_hash] = {
                handle = minetest.sound_play(wanted_sound, {pos=cp, loop=true}),
                name = wanted_sound.name,
            }
        end
    else
        if not wanted_sound then
            minetest.sound_stop(sound.handle)
            water.sounds[p0_hash] = nil
        elseif sound.name ~= wanted_sound.name then
            minetest.sound_stop(sound.handle)
            water.sounds[p0_hash] = {
                handle = minetest.sound_play(wanted_sound, {pos=cp, loop=true}),
                name = wanted_sound.name,
            }
        end
    end
end


The code Based off of Fire Mod.

I tryed it out but didn't work so how do I make it work.

If anyone can get this work make sure you make a new lava and water without sound so, ppl don't have sound.
Last edited by Likwid H-Craft on Tue Apr 02, 2013 23:23, edited 1 time in total.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Wed Apr 03, 2013 20:11

A elevator A real one like we see, in Real Life since I am making a City Map I like to see real elevators for some buildings I am making, since I think no will walk up 83742857825 Sairs to get to there room and back down.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

clarksallador
Member
 
Posts: 57
Joined: Sun Sep 30, 2012 03:18

by clarksallador » Thu Apr 04, 2013 06:22

[Mod Request]
Making the pistons push you ... so we could have like an elevator
 

User avatar
PilzAdam
Member
 
Posts: 4026
Joined: Fri Jul 20, 2012 16:19
GitHub: PilzAdam
IRC: PilzAdam

by PilzAdam » Thu Apr 04, 2013 10:56

clarksallador wrote:[Mod Request]
Making the pistons push you ... so we could have like an elevator

This is not a mod request. Its just an enhancement to the mesecons mod.
Btw, I think the latest mesecons version has it already.
 

User avatar
pandaro
Member
 
Posts: 266
Joined: Sun Jan 08, 2012 21:34
GitHub: pandaro

by pandaro » Thu Apr 04, 2013 16:05

carnivorous plants?
sorry for bad english
Linux debian 7 wheezy 64
kde
 

User avatar
jojoa1997
Member
 
Posts: 2890
Joined: Thu Dec 13, 2012 05:11

by jojoa1997 » Sat Apr 06, 2013 02:58

could someone male a mob spawning api mod. it would have no dependencies and you would have spawn on mapgen and abm spawner.
Coding;
1X coding
3X debugging
12X tweaking to be just right
 

dj22
Member
 
Posts: 60
Joined: Wed Feb 27, 2013 18:37

by dj22 » Sat Apr 06, 2013 14:22

how do u make a chest suck in items
 

dj22
Member
 
Posts: 60
Joined: Wed Feb 27, 2013 18:37

by dj22 » Sat Apr 06, 2013 14:39

heres some code that makes an elivator just punch it


Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
minetest.register_node("blocks:elivator1", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, -0.3, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, -0.3, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator2"})
               
end,

     
})









minetest.register_node("blocks:elivator2", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator3"})
               
end,

     
})








minetest.register_node("blocks:elivator3", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-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}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator9"})
               
end,

     
})



minetest.register_node("blocks:elivator9", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator10"})
               
end,

     
})

minetest.register_node("blocks:elivator10", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.05, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.05, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator4"})
               
end,

     
})

minetest.register_node("blocks:elivator4", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-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}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator5"})
               
end,

     
})







minetest.register_node("blocks:elivator5", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.2, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.2, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator6"})
               
end,

     
})










minetest.register_node("blocks:elivator6", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.3, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.3, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator7"})
               
end,

     
})






minetest.register_node("blocks:elivator7", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.4, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.4, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator8"})
               
end,

     
})





minetest.register_node("blocks:elivator8", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator11"})
               
end,

     
})



minetest.register_node("blocks:elivator11", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.6, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.6, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator12"})
               
end,

     
})






minetest.register_node("blocks:elivator12", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.7, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.7, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator13"})
               
end,

     
})






minetest.register_node("blocks:elivator13", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.8, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.8, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator14"})
               
end,

     
})





minetest.register_node("blocks:elivator14", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.9, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 0.9, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator15"})
               
end,

     
})











minetest.register_node("blocks:elivator15", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator16"})
               
end,

     
})







minetest.register_node("blocks:elivator16", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.1, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.1, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator17"})
               
end,

     
})




minetest.register_node("blocks:elivator17", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.2, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.2, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator18"})
               
end,

     
})





minetest.register_node("blocks:elivator18", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.3, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.3, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator19"})
               
end,

     
})






minetest.register_node("blocks:elivator19", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.4, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.4, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
minetest.env:add_node(pos, {name="blocks:elivator20"})
               
end,

     
})







minetest.register_node("blocks:elivator20", {
    drawtype = "nodebox",
    tiles = {"default_stone.png"},
    paramtype = "light",
    paramtype2 = "wallmounted",
    sunlight_propagates = true,
      light_source = 20,
    walkable = true,
      selection_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5}
    },
node_box = {
        type = "fixed",
        fixed = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5}
    },

    groups = {cracky=3},
      description="elivator",
on_punch = function(pos,node)
               
end,

     
})
 

User avatar
jojoa1997
Member
 
Posts: 2890
Joined: Thu Dec 13, 2012 05:11

by jojoa1997 » Sat Apr 06, 2013 22:11

for elevators you could have walkthrough items that change the player gravity to a negative number. also can anyone make a gravity changing mod
Coding;
1X coding
3X debugging
12X tweaking to be just right
 

User avatar
rubenwardy
Member
 
Posts: 4500
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sun Apr 07, 2013 15:10

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.
 

User avatar
PilzAdam
Member
 
Posts: 4026
Joined: Fri Jul 20, 2012 16:19
GitHub: PilzAdam
IRC: PilzAdam

by PilzAdam » Sun Apr 07, 2013 15:12

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.
 

User avatar
jojoa1997
Member
 
Posts: 2890
Joined: Thu Dec 13, 2012 05:11

by jojoa1997 » Sun Apr 07, 2013 15:13

Coding;
1X coding
3X debugging
12X tweaking to be just right
 

User avatar
rubenwardy
Member
 
Posts: 4500
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sun Apr 07, 2013 16:06

 

dj22
Member
 
Posts: 60
Joined: Wed Feb 27, 2013 18:37

by dj22 » Sun Apr 07, 2013 18:35

semi automatic elevator






Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
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,


})
 

dj22
Member
 
Posts: 60
Joined: Wed Feb 27, 2013 18:37

by dj22 » Sun Apr 07, 2013 18:38

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

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
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,


})
 

User avatar
AspireMint
Member
 
Posts: 149
Joined: Mon Jul 09, 2012 12:59

by AspireMint » Sun Apr 07, 2013 18:48

Hello,
i have idea, aquarium with animated fish ^^
Home, Album
“The best way to cheer yourself is to cheer somebody else up.” ― Albert Einstein
“A day without sunshine is like, you know, night.” ― Steve Martin :D
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20

by Likwid H-Craft » Sun Apr 07, 2013 20:17

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.
Last edited by Likwid H-Craft on Sun Apr 07, 2013 20:18, edited 1 time in total.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

markveidemanis
Member
 
Posts: 211
Joined: Thu Sep 27, 2012 15:41

by markveidemanis » Mon Apr 08, 2013 08:22

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.
BitCoin: 1Eq4arvykGNa1YC2DbJpWcwGfMvtFGjAoR
 

User avatar
rubenwardy
Member
 
Posts: 4500
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Mon Apr 08, 2013 13:11

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.
 

PreviousNext

Return to Modding Discussion

Who is online

Users browsing this forum: No registered users and 9 guests

cron