Maciej Kasatkin
2012-09-12 a42299d668e9890fde7e086f690e379a96e3d6e0
commit | author | age
1590dd 1 sonic_screwdriver_max_charge=15000
MK 2
3     minetest.register_tool("technic:sonic_screwdriver", {
4             description = "Sonic Screwdriver",
5             inventory_image = "technic_sonic_screwdriver.png",
6             on_use = function(itemstack, user, pointed_thing)
7                     -- Must be pointing to facedir applicable node
8                     if pointed_thing.type~="node" then return end
9             local pos=minetest.get_pointed_thing_position(pointed_thing,above)
10             local node=minetest.env:get_node(pos)
11             local node_name=node.name
12             if node.param2==nil  then return end
13                     item=itemstack:to_table()
14             local charge=tonumber((item["wear"])) 
15             if charge ==0 then charge =65535 end
16             charge=get_RE_item_load(charge,sonic_screwdriver_max_charge)
17             if charge-100>0 then
18                   minetest.sound_play("technic_sonic_screwdriver", {pos = pos, gain = 1.0, max_hear_distance = 10,})
19                local n = node.param2
20                n = n+1
21                        if n == 4 then n = 0 end
22                         -- hacky_swap_node, unforunatly.
23                     local meta = minetest.env:get_meta(pos)
24                 local meta0 = meta:to_table()
25                         node.param2 = n
26                 minetest.env:set_node(pos,node)
27                         meta = minetest.env:get_meta(pos)
28                     meta:from_table(meta0)
29           
30               charge =charge-100;    
31               charge=set_RE_item_load(charge,sonic_screwdriver_max_charge)
32               item["wear"]=tostring(charge)
33               itemstack:replace(item)
34               end
35             return itemstack
36             end,
37       
38     })
39      
40     minetest.register_craft({
41             output = "technic:sonic_screwdriver",
42             recipe = {
43             {"technic:green_energy_crystal"},
44                     {"technic:stainless_steel_ingot"},
a42299 45                     {"technic:stainless_steel_ingot"}
1590dd 46             }
MK 47     })