]> git.lizzy.rs Git - Crafter.git/blob - mods/hand/init.lua
Merge remote-tracking branch 'origin/master'
[Crafter.git] / mods / hand / init.lua
1 -- The hand
2
3 --Create an initial hand tool
4 minetest.register_item(":", {
5         type = "none",
6         wield_image = "wieldhand.png",
7         wield_scale = {x=1,y=1,z=2.5},
8         tool_capabilities = {
9                 full_punch_interval = 0.9,
10                 max_drop_level = 0,
11                 groupcaps = {
12                         stone = {times={[4]=32.00, [3]=26.50, [2]=20.70,[1]=16.5}, uses=0, maxlevel=0},
13                         dirt = {times={[4]=11.0,[3]=8.4,[2]=6.40,[1]=4.2}, uses=0, maxlevel=1},
14                         sand = {times={[4]=11.0,[3]=8.4,[2]=6.40,[1]=4.2}, uses=0, maxlevel=1},
15                         wood = {times={[4]=11.5,[3]=8.5,[2]=6.70,[1]=5.5}, uses=0, maxlevel=1},
16                         leaves = {times={[4]=4.5,[3]=3.2,[2]=2.20,[1]=1.2}, uses=0, maxlevel=0},
17                 },
18                 damage_groups = {fleshy=1},
19         }
20 })
21
22
23 -- This is a fake node that should never be placed in the world
24 local def = minetest.registered_items[""]
25 minetest.register_node("hand:player", {
26         description = "",
27         tiles = {"player.png"},
28         visual_scale = 1,
29         wield_scale = {x=1,y=1,z=1},
30         paramtype = "light",
31         drawtype = "mesh",
32         mesh = "hand.b3d",
33         -- Prevent construction
34         node_placement_prediction = "",
35         on_construct = function(pos)
36                 minetest.log("error", "Tried to place hand at "..minetest.pos_to_string(pos))
37                 minetest.remove_node(pos)
38         end,
39         drop = "",
40         on_drop = function()
41                 return ""
42         end,
43         groups = { dig_immediate = 3, not_in_creative_inventory = 1 },
44         range = def.range,
45 })
46
47
48 --Create a hand list and then enable the hand node
49 minetest.register_on_joinplayer(function(player)
50         player:get_inventory():set_size("hand", 1)
51         player:get_inventory():set_stack("hand", 1, "hand:player")
52 end)
53