Default/mapgen: Add missing spaces
[oweals/minetest_game.git] / mods / default / nodes.lua
index d875531473849957cef2966f88c259fbfccbd6a9..0796db51319d170953c1c406ee518b2f08d9e06b 100644 (file)
@@ -147,7 +147,6 @@ default:nyancat_rainbow
 minetest.register_node("default:stone", {
        description = "Stone",
        tiles = {"default_stone.png"},
-       is_ground_content = true,
        groups = {cracky=3, stone=1},
        drop = 'default:cobble',
        legacy_mineral = true,
@@ -157,7 +156,7 @@ minetest.register_node("default:stone", {
 minetest.register_node("default:cobble", {
        description = "Cobblestone",
        tiles = {"default_cobble.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=3, stone=2},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -165,6 +164,7 @@ minetest.register_node("default:cobble", {
 minetest.register_node("default:stonebrick", {
        description = "Stone Brick",
        tiles = {"default_stone_brick.png"},
+       is_ground_content = false,
        groups = {cracky=2, stone=1},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -172,7 +172,7 @@ minetest.register_node("default:stonebrick", {
 minetest.register_node("default:mossycobble", {
        description = "Mossy Cobblestone",
        tiles = {"default_mossycobble.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=3, stone=1},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -182,7 +182,6 @@ minetest.register_node("default:mossycobble", {
 minetest.register_node("default:desert_stone", {
        description = "Desert Stone",
        tiles = {"default_desert_stone.png"},
-       is_ground_content = true,
        groups = {cracky=3, stone=1},
        drop = 'default:desert_cobble',
        legacy_mineral = true,
@@ -192,7 +191,7 @@ minetest.register_node("default:desert_stone", {
 minetest.register_node("default:desert_cobble", {
        description = "Desert Cobblestone",
        tiles = {"default_desert_cobble.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=3, stone=2},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -200,6 +199,7 @@ minetest.register_node("default:desert_cobble", {
 minetest.register_node("default:desert_stonebrick", {
        description = "Desert Stone Brick",
        tiles = {"default_desert_stone_brick.png"},
+       is_ground_content = false,
        groups = {cracky=2, stone=1},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -209,7 +209,6 @@ minetest.register_node("default:desert_stonebrick", {
 minetest.register_node("default:sandstone", {
        description = "Sandstone",
        tiles = {"default_sandstone.png"},
-       is_ground_content = true,
        groups = {crumbly=2,cracky=3},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -217,7 +216,7 @@ minetest.register_node("default:sandstone", {
 minetest.register_node("default:sandstonebrick", {
        description = "Sandstone Brick",
        tiles = {"default_sandstone_brick.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=2},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -227,7 +226,6 @@ minetest.register_node("default:sandstonebrick", {
 minetest.register_node("default:obsidian", {
        description = "Obsidian",
        tiles = {"default_obsidian.png"},
-       is_ground_content = true,
        sounds = default.node_sound_stone_defaults(),
        groups = {cracky=1,level=2},
 })
@@ -235,6 +233,7 @@ minetest.register_node("default:obsidian", {
 minetest.register_node("default:obsidianbrick", {
        description = "Obsidian Brick",
        tiles = {"default_obsidian_brick.png"},
+       is_ground_content = false,
        sounds = default.node_sound_stone_defaults(),
        groups = {cracky=1,level=2},
 })
@@ -246,7 +245,6 @@ minetest.register_node("default:obsidianbrick", {
 minetest.register_node("default:dirt", {
        description = "Dirt",
        tiles = {"default_dirt.png"},
-       is_ground_content = true,
        groups = {crumbly=3,soil=1},
        sounds = default.node_sound_dirt_defaults(),
 })
@@ -254,7 +252,6 @@ minetest.register_node("default:dirt", {
 minetest.register_node("default:dirt_with_grass", {
        description = "Dirt with Grass",
        tiles = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"},
-       is_ground_content = true,
        groups = {crumbly=3,soil=1},
        drop = 'default:dirt',
        sounds = default.node_sound_dirt_defaults({
@@ -265,7 +262,6 @@ minetest.register_node("default:dirt_with_grass", {
 minetest.register_node("default:dirt_with_grass_footsteps", {
        description = "Dirt with Grass and Footsteps",
        tiles = {"default_grass_footsteps.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"},
-       is_ground_content = true,
        groups = {crumbly=3,soil=1,not_in_creative_inventory=1},
        drop = 'default:dirt',
        sounds = default.node_sound_dirt_defaults({
@@ -276,7 +272,6 @@ minetest.register_node("default:dirt_with_grass_footsteps", {
 minetest.register_node("default:dirt_with_snow", {
        description = "Dirt with Snow",
        tiles = {"default_snow.png", "default_dirt.png", "default_dirt.png^default_snow_side.png"},
-       is_ground_content = true,
        groups = {crumbly=3,soil=1},
        drop = 'default:dirt',
        sounds = default.node_sound_dirt_defaults({
@@ -289,7 +284,6 @@ minetest.register_node("default:dirt_with_snow", {
 minetest.register_node("default:sand", {
        description = "Sand",
        tiles = {"default_sand.png"},
-       is_ground_content = true,
        groups = {crumbly=3, falling_node=1, sand=1},
        sounds = default.node_sound_sand_defaults(),
 })
@@ -297,7 +291,6 @@ minetest.register_node("default:sand", {
 minetest.register_node("default:desert_sand", {
        description = "Desert Sand",
        tiles = {"default_desert_sand.png"},
-       is_ground_content = true,
        groups = {crumbly=3, falling_node=1, sand=1},
        sounds = default.node_sound_sand_defaults(),
 })
@@ -307,7 +300,6 @@ minetest.register_node("default:desert_sand", {
 minetest.register_node("default:gravel", {
        description = "Gravel",
        tiles = {"default_gravel.png"},
-       is_ground_content = true,
        groups = {crumbly=2, falling_node=1},
        sounds = default.node_sound_dirt_defaults({
                footstep = {name="default_gravel_footstep", gain=0.5},
@@ -320,7 +312,6 @@ minetest.register_node("default:gravel", {
 minetest.register_node("default:clay", {
        description = "Clay",
        tiles = {"default_clay.png"},
-       is_ground_content = true,
        groups = {crumbly=3},
        drop = 'default:clay_lump 4',
        sounds = default.node_sound_dirt_defaults(),
@@ -333,7 +324,6 @@ minetest.register_node("default:snow", {
        tiles = {"default_snow.png"},
        inventory_image = "default_snowball.png",
        wield_image = "default_snowball.png",
-       is_ground_content = true,
        paramtype = "light",
        buildable_to = true,
        drawtype = "nodebox",
@@ -361,7 +351,6 @@ minetest.register_node("default:snow", {
 minetest.register_node("default:snowblock", {
        description = "Snow Block",
        tiles = {"default_snow.png"},
-       is_ground_content = true,
        groups = {crumbly=3},
        sounds = default.node_sound_dirt_defaults({
                footstep = {name="default_snow_footstep", gain=0.25},
@@ -398,6 +387,7 @@ minetest.register_node("default:tree", {
 minetest.register_node("default:wood", {
        description = "Wooden Planks",
        tiles = {"default_wood.png"},
+       is_ground_content = false,
        groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},
        sounds = default.node_sound_wood_defaults(),
 })
@@ -410,8 +400,8 @@ minetest.register_node("default:sapling", {
        inventory_image = "default_sapling.png",
        wield_image = "default_sapling.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
-       is_ground_content = true,
        selection_box = {
                type = "fixed",
                fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3}
@@ -458,13 +448,13 @@ minetest.register_node("default:apple", {
        paramtype = "light",
        sunlight_propagates = true,
        walkable = false,
-       is_ground_content = true,
+       is_ground_content = false,
        selection_box = {
                type = "fixed",
                fixed = {-0.2, -0.5, -0.2, 0.2, 0, 0.2}
        },
        groups = {fleshy=3,dig_immediate=3,flammable=2,leafdecay=3,leafdecay_drop=1},
-       on_use = minetest.item_eat(1),
+       on_use = minetest.item_eat(2),
        sounds = default.node_sound_leaves_defaults(),
 
        after_place_node = function(pos, placer, itemstack)
@@ -490,6 +480,7 @@ minetest.register_node("default:jungletree", {
 minetest.register_node("default:junglewood", {
        description = "Junglewood Planks",
        tiles = {"default_junglewood.png"},
+       is_ground_content = false,
        groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},
        sounds = default.node_sound_wood_defaults(),
 })
@@ -531,6 +522,7 @@ minetest.register_node("default:junglesapling", {
        inventory_image = "default_junglesapling.png",
        wield_image = "default_junglesapling.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
        selection_box = {
                type = "fixed",
@@ -556,6 +548,7 @@ minetest.register_node("default:pinetree", {
 minetest.register_node("default:pinewood", {
        description = "Pinewood Planks",
        tiles = {"default_pinewood.png"},
+       is_ground_content = false,
        groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},
        sounds = default.node_sound_wood_defaults(),
 })
@@ -598,7 +591,6 @@ minetest.register_node("default:pine_sapling", {
        wield_image = "default_pine_sapling.png",
        paramtype = "light",
        walkable = false,
-       is_ground_content = true,
        selection_box = {
                type = "fixed",
                fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3}
@@ -614,7 +606,6 @@ minetest.register_node("default:pine_sapling", {
 minetest.register_node("default:stone_with_coal", {
        description = "Coal Ore",
        tiles = {"default_stone.png^default_mineral_coal.png"},
-       is_ground_content = true,
        groups = {cracky=3},
        drop = 'default:coal_lump',
        sounds = default.node_sound_stone_defaults(),
@@ -623,7 +614,7 @@ minetest.register_node("default:stone_with_coal", {
 minetest.register_node("default:coalblock", {
        description = "Coal Block",
        tiles = {"default_coal_block.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=3},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -633,7 +624,6 @@ minetest.register_node("default:coalblock", {
 minetest.register_node("default:stone_with_iron", {
        description = "Iron Ore",
        tiles = {"default_stone.png^default_mineral_iron.png"},
-       is_ground_content = true,
        groups = {cracky=2},
        drop = 'default:iron_lump',
        sounds = default.node_sound_stone_defaults(),
@@ -642,7 +632,7 @@ minetest.register_node("default:stone_with_iron", {
 minetest.register_node("default:steelblock", {
        description = "Steel Block",
        tiles = {"default_steel_block.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=1,level=2},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -652,7 +642,6 @@ minetest.register_node("default:steelblock", {
 minetest.register_node("default:stone_with_copper", {
        description = "Copper Ore",
        tiles = {"default_stone.png^default_mineral_copper.png"},
-       is_ground_content = true,
        groups = {cracky=2},
        drop = 'default:copper_lump',
        sounds = default.node_sound_stone_defaults(),
@@ -661,7 +650,7 @@ minetest.register_node("default:stone_with_copper", {
 minetest.register_node("default:copperblock", {
        description = "Copper Block",
        tiles = {"default_copper_block.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=1,level=2},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -669,7 +658,7 @@ minetest.register_node("default:copperblock", {
 minetest.register_node("default:bronzeblock", {
        description = "Bronze Block",
        tiles = {"default_bronze_block.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=1,level=2},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -680,7 +669,6 @@ minetest.register_node("default:stone_with_mese", {
        description = "Mese Ore",
        tiles = {"default_stone.png^default_mineral_mese.png"},
        paramtype = "light",
-       is_ground_content = true,
        groups = {cracky = 1},
        drop = "default:mese_crystal",
        sounds = default.node_sound_stone_defaults(),
@@ -691,7 +679,6 @@ minetest.register_node("default:mese", {
        description = "Mese Block",
        tiles = {"default_mese_block.png"},
        paramtype = "light",
-       is_ground_content = true,
        groups = {cracky = 1, level = 2},
        sounds = default.node_sound_stone_defaults(),
        light_source = 3,
@@ -703,7 +690,6 @@ minetest.register_node("default:mese", {
 minetest.register_node("default:stone_with_gold", {
        description = "Gold Ore",
        tiles = {"default_stone.png^default_mineral_gold.png"},
-       is_ground_content = true,
        groups = {cracky=2},
        drop = "default:gold_lump",
        sounds = default.node_sound_stone_defaults(),
@@ -712,7 +698,7 @@ minetest.register_node("default:stone_with_gold", {
 minetest.register_node("default:goldblock", {
        description = "Gold Block",
        tiles = {"default_gold_block.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=1},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -722,7 +708,6 @@ minetest.register_node("default:goldblock", {
 minetest.register_node("default:stone_with_diamond", {
        description = "Diamond Ore",
        tiles = {"default_stone.png^default_mineral_diamond.png"},
-       is_ground_content = true,
        groups = {cracky=1},
        drop = "default:diamond",
        sounds = default.node_sound_stone_defaults(),
@@ -731,7 +716,7 @@ minetest.register_node("default:stone_with_diamond", {
 minetest.register_node("default:diamondblock", {
        description = "Diamond Block",
        tiles = {"default_diamond_block.png"},
-       is_ground_content = true,
+       is_ground_content = false,
        groups = {cracky=1,level=3},
        sounds = default.node_sound_stone_defaults(),
 })
@@ -744,7 +729,6 @@ minetest.register_node("default:cactus", {
        description = "Cactus",
        tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"},
        paramtype2 = "facedir",
-       is_ground_content = true,
        groups = {snappy=1,choppy=3,flammable=2},
        sounds = default.node_sound_wood_defaults(),
        on_place = minetest.rotate_node,
@@ -761,8 +745,8 @@ minetest.register_node("default:papyrus", {
        inventory_image = "default_papyrus.png",
        wield_image = "default_papyrus.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
-       is_ground_content = true,
        selection_box = {
                type = "fixed",
                fixed = {-0.3, -0.5, -0.3, 0.3, 0.5, 0.3}
@@ -784,8 +768,8 @@ minetest.register_node("default:dry_shrub", {
        inventory_image = "default_dry_shrub.png",
        wield_image = "default_dry_shrub.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
-       is_ground_content = true,
        buildable_to = true,
        groups = {snappy=3,flammable=3,attached_node=1},
        sounds = default.node_sound_leaves_defaults(),
@@ -804,9 +788,9 @@ minetest.register_node("default:junglegrass", {
        inventory_image = "default_junglegrass.png",
        wield_image = "default_junglegrass.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
        buildable_to = true,
-       is_ground_content = true,
        groups = {snappy=3,flammable=2,flora=1,attached_node=1},
        sounds = default.node_sound_leaves_defaults(),
        selection_box = {
@@ -824,8 +808,8 @@ minetest.register_node("default:grass_1", {
        inventory_image = "default_grass_3.png",
        wield_image = "default_grass_3.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
-       is_ground_content = true,
        buildable_to = true,
        groups = {snappy=3,flammable=3,flora=1,attached_node=1},
        sounds = default.node_sound_leaves_defaults(),
@@ -851,9 +835,9 @@ for i=2,5 do
                inventory_image = "default_grass_"..i..".png",
                wield_image = "default_grass_"..i..".png",
                paramtype = "light",
+               sunlight_propagates = true,
                walkable = false,
                buildable_to = true,
-               is_ground_content = true,
                drop = "default:grass_1",
                groups = {snappy=3,flammable=3,flora=1,attached_node=1,not_in_creative_inventory=1},
                sounds = default.node_sound_leaves_defaults(),
@@ -909,7 +893,7 @@ minetest.register_node("default:water_source", {
        liquid_alternative_flowing = "default:water_flowing",
        liquid_alternative_source = "default:water_source",
        liquid_viscosity = 1,
-       post_effect_color = {a=64, r=100, g=100, b=200},
+       post_effect_color = {a=120, r=30, g=60, b=90},
        groups = {water=3, liquid=3, puts_out_fire=1},
 })
 
@@ -954,18 +938,18 @@ minetest.register_node("default:water_flowing", {
        liquid_alternative_flowing = "default:water_flowing",
        liquid_alternative_source = "default:water_source",
        liquid_viscosity = 1,
-       post_effect_color = {a=64, r=100, g=100, b=200},
+       post_effect_color = {a=120, r=30, g=60, b=90},
        groups = {water=3, liquid=3, puts_out_fire=1, not_in_creative_inventory=1},
 })
 
 
 minetest.register_node("default:river_water_source", {
        description = "River Water Source",
-       inventory_image = minetest.inventorycube("default_water.png"),
+       inventory_image = minetest.inventorycube("default_river_water.png"),
        drawtype = "liquid",
        tiles = {
                {
-                       name = "default_water_source_animated.png",
+                       name = "default_river_water_source_animated.png",
                        animation = {
                                type = "vertical_frames",
                                aspect_w = 16,
@@ -976,7 +960,7 @@ minetest.register_node("default:river_water_source", {
        },
        special_tiles = {
                {
-                       name = "default_water_source_animated.png",
+                       name = "default_river_water_source_animated.png",
                        animation = {
                                type = "vertical_frames",
                                aspect_w = 16,
@@ -1001,18 +985,18 @@ minetest.register_node("default:river_water_source", {
        liquid_viscosity = 1,
        liquid_renewable = false,
        liquid_range = 2,
-       post_effect_color = {a=64, r=100, g=100, b=200},
+       post_effect_color = {a=120, r=30, g=76, b=90},
        groups = {water=3, liquid=3, puts_out_fire=1},
 })
 
 minetest.register_node("default:river_water_flowing", {
        description = "Flowing River Water",
-       inventory_image = minetest.inventorycube("default_water.png"),
+       inventory_image = minetest.inventorycube("default_river_water.png"),
        drawtype = "flowingliquid",
-       tiles = {"default_water.png"},
+       tiles = {"default_river_water.png"},
        special_tiles = {
                {
-                       name = "default_water_flowing_animated.png",
+                       name = "default_river_water_flowing_animated.png",
                        backface_culling = false,
                        animation = {
                                type = "vertical_frames",
@@ -1022,7 +1006,7 @@ minetest.register_node("default:river_water_flowing", {
                        },
                },
                {
-                       name = "default_water_flowing_animated.png",
+                       name = "default_river_water_flowing_animated.png",
                        backface_culling = true,
                        animation = {
                                type = "vertical_frames",
@@ -1048,7 +1032,7 @@ minetest.register_node("default:river_water_flowing", {
        liquid_viscosity = 1,
        liquid_renewable = false,
        liquid_range = 2,
-       post_effect_color = {a=64, r=100, g=100, b=200},
+       post_effect_color = {a=120, r=30, g=76, b=90},
        groups = {water=3, liquid=3, puts_out_fire=1, not_in_creative_inventory=1},
 })
 
@@ -1213,6 +1197,8 @@ local chest_formspec =
        "list[current_name;main;0,0.3;8,4;]"..
        "list[current_player;main;0,4.85;8,1;]"..
        "list[current_player;main;0,6.08;8,3;8]"..
+       "listring[current_name;main]"..
+       "listring[current_player;main]"..
        default.get_hotbar_bg(0,4.85)
 
 local function get_locked_chest_formspec(pos)
@@ -1225,6 +1211,8 @@ local function get_locked_chest_formspec(pos)
                "list[nodemeta:".. spos .. ";main;0,0.3;8,4;]"..
                "list[current_player;main;0,4.85;8,1;]"..
                "list[current_player;main;0,6.08;8,3;8]"..
+               "listring[nodemeta:".. spos .. ";main]"..
+               "listring[current_player;main]"..
                default.get_hotbar_bg(0,4.85)
  return formspec
 end
@@ -1341,6 +1329,7 @@ minetest.register_node("default:chest_locked", {
                        )
                end
        end,
+       on_blast = function() end,
 })
 
 
@@ -1353,6 +1342,8 @@ local bookshelf_formspec =
        "list[context;books;0,0.3;8,2;]"..
        "list[current_player;main;0,2.85;8,1;]"..
        "list[current_player;main;0,4.08;8,3;8]"..
+       "listring[context;books]"..
+       "listring[current_player;main]"..
        default.get_hotbar_bg(0,2.85)
 
 minetest.register_node("default:bookshelf", {
@@ -1394,7 +1385,8 @@ minetest.register_node("default:bookshelf", {
                local stack = inv:get_stack(from_list, from_index)
                local to_stack = inv:get_stack(to_list, to_index)
                if to_list == "books" then
-                       if stack:get_name() == "default:book" and to_stack:is_empty() then
+                       if minetest.get_item_group(stack:get_name(), "book") ~= 0
+                                       and to_stack:is_empty() then
                                return 1
                        else
                                return 0
@@ -1468,6 +1460,7 @@ minetest.register_node("default:ladder", {
        wield_image = "default_ladder.png",
        paramtype = "light",
        paramtype2 = "wallmounted",
+       sunlight_propagates = true,
        walkable = false,
        climbable = true,
        is_ground_content = false,
@@ -1490,6 +1483,7 @@ minetest.register_node("default:fence_wood", {
        inventory_image = fence_texture,
        wield_image = fence_texture,
        paramtype = "light",
+       sunlight_propagates = true,
        is_ground_content = false,
        selection_box = {
                type = "fixed",
@@ -1533,6 +1527,7 @@ minetest.register_node("default:rail", {
        inventory_image = "default_rail.png",
        wield_image = "default_rail.png",
        paramtype = "light",
+       sunlight_propagates = true,
        walkable = false,
        is_ground_content = false,
        selection_box = {
@@ -1540,7 +1535,7 @@ minetest.register_node("default:rail", {
                 -- but how to specify the dimensions for curved and sideways rails?
                 fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2},
        },
-       groups = {bendy=2,dig_immediate=2,attached_node=1},
+       groups = {bendy=2,dig_immediate=2,attached_node=1,connect_to_raillike=minetest.raillike_group("rail")},
 })
 
 
@@ -1573,6 +1568,7 @@ minetest.register_node("default:meselamp", {
 minetest.register_node("default:cloud", {
        description = "Cloud",
        tiles = {"default_cloud.png"},
+       is_ground_content = false,
        sounds = default.node_sound_defaults(),
        groups = {not_in_creative_inventory=1},
 })