2017-07-07 16:52:28 +02:00
-- Simple solid cubic nodes, most of them are the ground materials and simple building blocks
2017-02-20 06:24:04 +01:00
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone " , {
2015-06-29 19:55:56 +02:00
description = " Stone " ,
2017-03-14 05:59:58 +01:00
_doc_items_longdesc = " One of the most common blocks in the world, almost the entire underground consists of stone. It sometimes contains ores. Stone may be created when water meets lava. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_stone.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-07-06 00:03:36 +02:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:cobble ' ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_coal " , {
2015-06-29 19:55:56 +02:00
description = " Coal Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Some coal contained in stone, it is very common and can be found inside stone in medium to large clusters at nearly every height. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_coal_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , building_block = 1 , material_stone = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:coal_lump ' ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_iron " , {
2015-06-29 19:55:56 +02:00
description = " Iron Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Some iron contained in stone, it is prety common and can be found below sea level. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_iron_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 3 , building_block = 1 , material_stone = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:stone_with_iron ' ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_gold " , {
2015-06-29 19:55:56 +02:00
description = " Gold Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " This stone contains pure gold, a rare metal. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_gold_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 4 , building_block = 1 , material_stone = 1 } ,
2017-01-31 23:32:56 +01:00
drop = " mcl_core:stone_with_gold " ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-04 10:27:12 +01:00
local redstone_timer = 68.28
2017-01-12 23:58:42 +01:00
local redstone_ore_activate = function ( pos )
2017-01-31 23:32:56 +01:00
minetest.swap_node ( pos , { name = " mcl_core:stone_with_redstone_lit " } )
2017-01-12 23:58:42 +01:00
local t = minetest.get_node_timer ( pos )
t : start ( redstone_timer )
end
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_redstone " , {
2015-06-29 19:55:56 +02:00
description = " Redstone Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Redstone ore is commonly found near the bottom of the world. It glows when it is punched or walked upon. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_redstone_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 4 , building_block = 1 , material_stone = 1 } ,
2017-01-04 08:01:40 +01:00
drop = {
items = {
max_items = 1 ,
{
2017-01-09 18:45:34 +01:00
items = { " mesecons:redstone 4 " } ,
2017-01-04 08:01:40 +01:00
rarity = 2 ,
} ,
{
2017-01-09 18:45:34 +01:00
items = { " mesecons:redstone 5 " } ,
2017-01-04 08:01:40 +01:00
} ,
}
} ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-01-12 23:58:42 +01:00
on_punch = redstone_ore_activate ,
on_walk_over = redstone_ore_activate , -- Uses walkover mod
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2017-01-04 10:27:12 +01:00
} )
2017-01-12 23:58:42 +01:00
local redstone_ore_reactivate = function ( pos )
local t = minetest.get_node_timer ( pos )
t : start ( redstone_timer )
end
2017-01-04 10:27:12 +01:00
-- Light the redstone ore up when it has been touched
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_redstone_lit " , {
2017-01-04 10:27:12 +01:00
description = " Lit Redstone Ore " ,
2017-03-02 19:53:53 +01:00
_doc_items_create_entry = false ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_redstone_ore.png " } ,
2017-01-04 10:27:12 +01:00
paramtype = " light " ,
2017-02-01 22:12:08 +01:00
light_source = 9 ,
2017-01-04 10:27:12 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 4 , not_in_creative_inventory = 1 , material_stone = 1 } ,
2017-01-04 10:27:12 +01:00
drop = {
items = {
max_items = 1 ,
{
2017-01-09 18:45:34 +01:00
items = { " mesecons:redstone 4 " } ,
2017-01-04 10:27:12 +01:00
rarity = 2 ,
} ,
{
2017-01-09 18:45:34 +01:00
items = { " mesecons:redstone 5 " } ,
2017-01-04 10:27:12 +01:00
} ,
}
} ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-01-12 23:58:42 +01:00
-- Reset timer after re-punching or stepping on
on_punch = redstone_ore_reactivate ,
on_walk_over = redstone_ore_reactivate , -- Uses walkover mod
2017-01-04 10:27:12 +01:00
-- Turn back to normal node after some time has passed
on_timer = function ( pos , elapsed )
2017-01-31 23:32:56 +01:00
minetest.swap_node ( pos , { name = " mcl_core:stone_with_redstone " } )
2017-01-04 10:27:12 +01:00
end ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_lapis " , {
2015-06-29 19:55:56 +02:00
description = " Lapis Lazuli Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_lapis_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 3 , building_block = 1 , material_stone = 1 } ,
2015-06-29 19:55:56 +02:00
drop = {
2017-01-04 08:01:40 +01:00
max_items = 1 ,
2015-06-29 19:55:56 +02:00
items = {
2017-01-30 15:33:04 +01:00
{ items = { ' mcl_dye:blue 8 ' } , rarity = 5 } ,
{ items = { ' mcl_dye:blue 7 ' } , rarity = 5 } ,
{ items = { ' mcl_dye:blue 6 ' } , rarity = 5 } ,
{ items = { ' mcl_dye:blue 5 ' } , rarity = 5 } ,
{ items = { ' mcl_dye:blue 4 ' } } ,
2015-06-29 19:55:56 +02:00
}
} ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_emerald " , {
2015-06-29 19:55:56 +02:00
description = " Emerald Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Emerald ore is the ore of emeralds. It is very rare and can be found alone, not in clusters. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_emerald_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 4 , building_block = 1 , material_stone = 1 } ,
2017-01-31 23:32:56 +01:00
drop = " mcl_core:emerald " ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stone_with_diamond " , {
2017-01-04 06:20:13 +01:00
description = " Diamond Ore " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Diamond ore is rare and can be found in clusters near the bottom of the world. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_diamond_ore.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 4 , building_block = 1 , material_stone = 1 } ,
2017-01-31 23:32:56 +01:00
drop = " mcl_core:diamond " ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stonebrick " , {
2017-01-04 06:20:13 +01:00
description = " Stone Bricks " ,
2017-03-18 18:01:28 +01:00
_doc_items_longdesc = doc.sub . items.temp . build ,
2015-06-29 19:55:56 +02:00
tiles = { " default_stone_brick.png " } ,
stack_max = 64 ,
2017-07-06 00:03:36 +02:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stonebrickcarved " , {
2017-01-04 06:20:13 +01:00
description = " Chiseled Stone Bricks " ,
2017-03-18 18:01:28 +01:00
_doc_items_longdesc = doc.sub . items.temp . build ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_stonebrick_carved.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-07-06 00:03:36 +02:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stonebrickcracked " , {
2017-01-04 06:20:13 +01:00
description = " Cracked Stone Bricks " ,
2017-03-18 18:01:28 +01:00
_doc_items_longdesc = doc.sub . items.temp . build ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_stonebrick_cracked.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-07-06 00:03:36 +02:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:stonebrickmossy " , {
2017-01-04 06:20:13 +01:00
description = " Mossy Stone Bricks " ,
2017-03-18 18:01:28 +01:00
_doc_items_longdesc = doc.sub . items.temp . build ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_stonebrick_mossy.png " } ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-07-06 00:03:36 +02:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:granite " , {
2017-01-08 01:59:50 +01:00
description = " Granite " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Granite is an igneous rock. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_granite.png " } ,
2017-01-08 01:59:50 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2017-01-08 01:59:50 +01:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:granite_smooth " , {
2017-01-08 01:59:50 +01:00
description = " Polished Granite " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Polished granite is a decorational building block made from granite. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_granite_smooth.png " } ,
2017-01-08 01:59:50 +01:00
stack_max = 64 ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2017-01-08 01:59:50 +01:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:andesite " , {
2017-01-08 01:59:50 +01:00
description = " Andesite " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Andesite is an igneous rock. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_andesite.png " } ,
2017-01-08 01:59:50 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2017-01-08 01:59:50 +01:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:andesite_smooth " , {
2017-01-08 01:59:50 +01:00
description = " Polished Andesite " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Polished andesite is a decorational building block made from andesite. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_andesite_smooth.png " } ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-01-08 01:59:50 +01:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2017-01-08 01:59:50 +01:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:diorite " , {
2017-01-08 01:59:50 +01:00
description = " Diorite " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Diorite is an igneous rock. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_diorite.png " } ,
2017-01-08 01:59:50 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2017-01-08 01:59:50 +01:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:diorite_smooth " , {
2017-01-08 01:59:50 +01:00
description = " Polished Diorite " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Polished diorite is a decorational building block made from diorite. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_diorite_smooth.png " } ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2017-01-08 01:59:50 +01:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 1.5 ,
2017-01-08 01:59:50 +01:00
} )
2017-11-14 23:44:53 +01:00
-- Grass Block
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:dirt_with_grass " , {
2017-01-04 06:20:13 +01:00
description = " Grass Block " ,
2017-05-14 02:51:03 +02:00
_doc_items_longdesc = " A grass block is dirt with a grass cover. Grass blocks are resourceful blocks which allow the growth of all sorts of plants. They can be turned into farmland with a hoe and turned into grass paths with a shovel. In light, the grass slowly spreads onto dirt nearby. Under an opaque block or a liquid, a grass block may turn back to dirt. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2017-07-19 19:04:05 +02:00
tiles = { " default_grass.png " , " default_dirt.png " , " default_dirt.png^default_grass_side.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-11-14 23:44:53 +01:00
groups = { handy = 1 , shovely = 1 , grass_block = 1 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , cultivatable = 2 , spreading_dirt_type = 1 , enderman_takable = 1 , building_block = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:dirt ' ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2015-06-29 19:55:56 +02:00
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
2017-11-15 03:47:08 +01:00
on_construct = function ( pos )
local found_node = minetest.find_node_near ( pos , 1 , { " mcl_core:dirt_with_dry_grass " , " mcl_core:dirt_with_dry_grass_snow " } )
if found_node then
minetest.set_node ( pos , { name = " mcl_core:dirt_with_dry_grass " } )
end
return mcl_core.on_snowable_construct ( pos )
end ,
2017-09-06 19:46:51 +02:00
_mcl_snowed = " mcl_core:dirt_with_grass_snow " ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 3 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.6 ,
2015-06-29 19:55:56 +02:00
} )
2017-09-06 19:17:36 +02:00
mcl_core.register_snowed_node ( " mcl_core:dirt_with_grass_snow " , " mcl_core:dirt_with_grass " )
2017-04-01 06:44:02 +02:00
2017-11-14 23:44:53 +01:00
-- Grass Block variant for dry biomes
minetest.register_node ( " mcl_core:dirt_with_dry_grass " , {
_doc_items_create_entry = false ,
tiles = { " default_dry_grass.png " , " default_dirt.png " , " default_dirt.png^default_dry_grass_side.png " } ,
is_ground_content = true ,
stack_max = 64 ,
groups = { handy = 1 , shovely = 1 , grass_block = 1 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , cultivatable = 2 , spreading_dirt_type = 1 , enderman_takable = 1 , building_block = 1 , not_in_creative_inventory = 1 } ,
drop = ' mcl_core:dirt ' ,
sounds = mcl_sounds.node_sound_dirt_defaults ( {
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
on_construct = mcl_core.on_snowable_construct ,
_mcl_snowed = " mcl_core:dirt_with_dry_grass_snow " ,
_mcl_blast_resistance = 3 ,
_mcl_hardness = 0.6 ,
} )
mcl_core.register_snowed_node ( " mcl_core:dirt_with_dry_grass_snow " , " mcl_core:dirt_with_dry_grass " )
if minetest.get_modpath ( " doc " ) then
doc.add_entry_alias ( " nodes " , " mcl_core:dirt_with_grass " , " nodes " , " mcl_core:dirt_with_dry_grass " )
doc.add_entry_alias ( " nodes " , " mcl_core:dirt_with_grass " , " nodes " , " mcl_core:dirt_with_dry_grass_snow " )
end
2017-02-06 19:25:15 +01:00
minetest.register_node ( " mcl_core:grass_path " , {
2017-07-08 18:08:02 +02:00
tiles = { " mcl_core_grass_path_top.png " , " default_dirt.png " , " mcl_core_grass_path_side.png " } ,
2017-02-06 19:25:15 +01:00
description = " Grass Path " ,
2017-05-14 22:55:46 +02:00
_doc_items_longdesc = " Grass paths are a decorational variant of grass blocks. Their top has a different color and they are a bit lower than grass blocks, making them useful to build footpaths. Grass paths can be created with a shovel. A grass path turns into dirt when it is below a solid block. " ,
2017-02-06 19:25:15 +01:00
drop = " mcl_core:dirt " ,
is_ground_content = true ,
drawtype = " nodebox " ,
paramtype = " light " ,
node_box = {
type = " fixed " ,
fixed = {
-- 15/16 of the normal height
{ - 0.5 , - 0.5 , - 0.5 , 0.5 , 0.4375 , 0.5 } ,
}
} ,
2017-05-14 22:44:34 +02:00
groups = { handy = 1 , shovely = 1 , cultivatable = 2 , dirtifies_below_solid = 1 , not_in_creative_inventory = 1 , } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2017-02-06 19:29:11 +01:00
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 3.25 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.6 ,
2017-02-06 19:25:15 +01:00
} )
2017-01-10 04:24:42 +01:00
-- TODO: Add particles
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:mycelium " , {
2017-01-10 03:54:15 +01:00
description = " Mycelium " ,
2017-05-14 02:51:03 +02:00
_doc_items_longdesc = " Mycelium is a type of dirt and the ideal soil for mushrooms. Unlike other dirt-type blocks, it can not be turned into farmland with a hoe. In light, mycelium slowly spreads over nearby dirt. Under an opaque block or a liquid, it eventually turns back into dirt. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_mycelium_top.png " , " default_dirt.png " , " mcl_core_mycelium_side.png " } ,
2017-01-10 03:54:15 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-05-13 23:32:43 +02:00
groups = { handy = 1 , shovely = 1 , spreading_dirt_type = 1 , building_block = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:dirt ' ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2017-01-10 03:54:15 +01:00
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
2017-09-06 19:46:51 +02:00
2017-09-06 19:33:39 +02:00
on_construct = mcl_core.on_snowable_construct ,
2017-09-06 19:46:51 +02:00
_mcl_snowed = " mcl_core:mycelium_snow " ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.6 ,
2017-01-10 03:54:15 +01:00
} )
2017-09-06 19:17:36 +02:00
mcl_core.register_snowed_node ( " mcl_core:mycelium_snow " , " mcl_core:mycelium " )
2017-04-01 06:44:02 +02:00
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:podzol " , {
2017-01-10 04:24:42 +01:00
description = " Podzol " ,
2017-03-11 17:32:39 +01:00
_doc_items_longdesc = " Podzol is a type of dirt found in taiga forests. Only a few plants are able to survive on it. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_dirt_podzol_top.png " , " default_dirt.png " , " mcl_core_dirt_podzol_side.png " } ,
2017-01-10 04:24:42 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 3 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , enderman_takable = 1 , building_block = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:dirt ' ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-09-06 19:33:39 +02:00
on_construct = mcl_core.on_snowable_construct ,
2017-09-06 19:46:51 +02:00
_mcl_snowed = " mcl_core:podzol_snow " ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.6 ,
2017-01-10 04:24:42 +01:00
} )
2017-09-06 19:17:36 +02:00
mcl_core.register_snowed_node ( " mcl_core:podzol_snow " , " mcl_core:podzol " )
2017-04-01 06:44:02 +02:00
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:dirt " , {
2015-06-29 19:55:56 +02:00
description = " Dirt " ,
2017-05-14 02:51:03 +02:00
_doc_items_longdesc = " Dirt acts as a soil for a few plants. When in light, this block may grow a grass or mycelium cover if such blocks are nearby. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_dirt.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 1 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , cultivatable = 2 , enderman_takable = 1 , building_block = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 3 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:coarse_dirt " , {
2017-01-05 01:28:43 +01:00
description = " Coarse Dirt " ,
2017-05-14 02:51:03 +02:00
_doc_items_longdesc = " Coarse dirt acts as a soil for some plants and is similar to dirt, but it will never grow a cover. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_coarse_dirt.png " } ,
2017-01-05 01:28:43 +01:00
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 1 , soil = 1 , soil_sugarcane = 1 , cultivatable = 1 , enderman_takable = 1 , building_block = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 3 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2017-01-05 01:28:43 +01:00
} )
2015-06-29 19:55:56 +02:00
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:gravel " , {
2015-06-29 19:55:56 +02:00
description = " Gravel " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " This block consists of a couple of loose stones and can't support itself. " ,
2015-06-29 19:55:56 +02:00
tiles = { " default_gravel.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 1 , falling_node = 1 , enderman_takable = 1 , building_block = 1 , material_sand = 1 } ,
2015-06-29 19:55:56 +02:00
drop = {
max_items = 1 ,
items = {
2017-01-31 23:32:56 +01:00
{ items = { ' mcl_core:flint ' } , rarity = 10 } ,
{ items = { ' mcl_core:gravel ' } }
2015-06-29 19:55:56 +02:00
}
} ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2015-06-29 19:55:56 +02:00
footstep = { name = " default_gravel_footstep " , gain = 0.45 } ,
} ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 3 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.6 ,
2015-06-29 19:55:56 +02:00
} )
-- sandstone --
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:sand " , {
2015-06-29 19:55:56 +02:00
description = " Sand " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Sand is found in large quantities at beaches and deserts. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_sand.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 1 , falling_node = 1 , sand = 1 , soil_sugarcane = 1 , enderman_takable = 1 , building_block = 1 , material_sand = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_sand_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:sandstone " , {
2015-06-29 19:55:56 +02:00
description = " Sandstone " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Sandstone is compressed sand and is a rather soft kind of stone. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_sandstone_top.png " , " mcl_core_sandstone_bottom.png " , " mcl_core_sandstone_normal.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-08-03 00:56:12 +02:00
groups = { pickaxey = 1 , sandstone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 4 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.8 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:sandstonesmooth " , {
2017-01-04 06:20:13 +01:00
description = " Smooth Sandstone " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Smooth sandstone is a decorational building block. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_sandstone_top.png " , " mcl_core_sandstone_bottom.png " , " mcl_core_sandstone_smooth.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , sandstone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 4 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.8 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:sandstonecarved " , {
2017-01-04 06:20:13 +01:00
description = " Chiseled Sandstone " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Chiseled sandstone is a decorational building block. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_sandstone_top.png " , " mcl_core_sandstone_bottom.png " , " mcl_core_sandstone_carved.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , sandstone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 4 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.8 ,
2015-06-29 19:55:56 +02:00
} )
-- red sandstone --
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:redsand " , {
2015-06-29 19:55:56 +02:00
description = " Red Sand " ,
2017-03-14 05:58:10 +01:00
_doc_items_longdesc = " Red sand is found in large quantities in mesa biomes. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_red_sand.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 1 , falling_node = 1 , sand = 1 , soil_sugarcane = 1 , enderman_takable = 1 , building_block = 1 , material_sand = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_sand_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:redsandstone " , {
2017-01-04 06:20:13 +01:00
description = " Red Sandstone " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Red sandstone is compressed red sand and is a rather soft kind of stone. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_red_sandstone_top.png " , " mcl_core_red_sandstone_bottom.png " , " mcl_core_red_sandstone_normal.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , redsandstone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 4 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.8 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:redsandstonesmooth " , {
2017-01-04 06:20:13 +01:00
description = " Smooth Red Sandstone " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Smooth red sandstone is a decorational building block. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_red_sandstone_top.png " , " mcl_core_red_sandstone_bottom.png " , " mcl_core_red_sandstone_smooth.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , redsandstone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 4 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.8 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:redsandstonecarved " , {
2017-01-04 06:20:13 +01:00
description = " Chiseled Red Sandstone " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Chiseled red sandstone is a decorational building block. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_red_sandstone_top.png " , " mcl_core_red_sandstone_bottom.png " , " mcl_core_red_sandstone_carved.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , redsandstone = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 4 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.8 ,
2015-06-29 19:55:56 +02:00
} )
---
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:clay " , {
2017-09-11 02:26:43 +02:00
description = " Clay " ,
_doc_items_longdesc = " Clay is a versatile kind of earth commonly found at beaches underwater. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_clay.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-07-05 20:14:37 +02:00
groups = { handy = 1 , shovely = 1 , enderman_takable = 1 , building_block = 1 } ,
2017-01-31 23:32:56 +01:00
drop = ' mcl_core:clay_lump 4 ' ,
2017-05-22 23:23:53 +02:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 3 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.6 ,
2015-06-29 19:55:56 +02:00
} )
2017-02-01 18:51:26 +01:00
minetest.register_node ( " mcl_core:brick_block " , {
-- Original name: “Bricks”
description = " Brick Block " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Brick blocks are a good building material for building solid houses and can take quite a punch. " ,
2015-06-29 19:55:56 +02:00
tiles = { " default_brick.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 2 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:bedrock " , {
2015-06-29 19:55:56 +02:00
description = " Bedrock " ,
2017-09-08 15:28:38 +02:00
_doc_items_longdesc = " Bedrock is a very hard type of rock. It can not be broken, destroyed, collected or moved by normal means, unless in Creative Mode. " .. " \n " ..
" In the End dimension, starting a fire on this block will create an eternal fire. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_bedrock.png " } ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { creative_breakable = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-01-04 09:42:25 +01:00
is_ground_content = false ,
on_blast = function ( ) end ,
2017-01-05 01:00:43 +01:00
drop = ' ' ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 18000000 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = - 1 ,
2017-11-11 19:52:11 +01:00
-- Eternal fire on top of bedrock, if in the End dimension
after_destruct = function ( pos )
pos.y = pos.y + 1
if minetest.get_node ( pos ) . name == " mcl_fire:eternal_fire " then
minetest.remove_node ( pos )
end
end ,
_on_ignite = function ( player , pointed_thing )
local pos = pointed_thing.under
local _ , dim = mcl_util.y_to_layer ( pos.y )
local flame_pos = { x = pos.x , y = pos.y + 1 , z = pos.z }
local fn = minetest.get_node ( flame_pos )
if dim == " end " and fn.name == " air " and not minetest.is_protected ( flame_pos , " fire " ) and pointed_thing.under . y < pointed_thing.above . y then
minetest.set_node ( flame_pos , { name = " mcl_fire:eternal_fire " } )
return true
else
return false
end
end ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:cobble " , {
2015-06-29 19:55:56 +02:00
description = " Cobblestone " ,
2017-03-18 18:01:28 +01:00
_doc_items_longdesc = doc.sub . items.temp . build ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_cobble.png " } ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-07-06 00:03:36 +02:00
groups = { pickaxey = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 2 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:mossycobble " , {
2017-01-04 06:20:13 +01:00
description = " Moss Stone " ,
2017-03-18 18:01:28 +01:00
_doc_items_longdesc = doc.sub . items.temp . build ,
2015-06-29 19:55:56 +02:00
tiles = { " default_mossycobble.png " } ,
2017-03-11 16:36:05 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 2 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:coalblock " , {
2017-01-04 11:44:55 +01:00
description = " Block of Coal " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Blocks of coal are useful as a compact storage of coal and very useful as a furnace fuel. A block of coal is as efficient as 10 coal. " ,
2017-01-04 11:44:55 +01:00
tiles = { " default_coal_block.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2017-01-04 11:44:55 +01:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 1 , flammable = 1 , building_block = 1 , material_stone = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 5 ,
2017-01-04 11:44:55 +01:00
} )
2017-02-11 21:14:40 +01:00
minetest.register_node ( " mcl_core:ironblock " , {
2017-01-04 05:29:55 +01:00
description = " Block of Iron " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " A block of iron is mostly a decorational block but also useful as a compact storage of iron ingots. " ,
2015-06-29 19:55:56 +02:00
tiles = { " default_steel_block.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-02-25 16:19:24 +01:00
groups = { pickaxey = 2 , building_block = 1 } ,
2017-06-06 21:10:24 +02:00
sounds = mcl_sounds.node_sound_metal_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:goldblock " , {
2017-01-04 06:20:13 +01:00
description = " Block of Gold " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " A block of gold is mostly a shiny decorational block but also useful as a compact storage of gold ingots. " ,
2015-06-29 19:55:56 +02:00
tiles = { " default_gold_block.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-02-25 16:19:24 +01:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-06-06 21:10:24 +02:00
sounds = mcl_sounds.node_sound_metal_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:diamondblock " , {
2017-01-04 06:20:13 +01:00
description = " Block of Diamond " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " A block of diamond mostly a shiny decorational block but also useful as a compact storage of diamonds. " ,
2015-06-29 19:55:56 +02:00
tiles = { " default_diamond_block.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-02-25 16:19:24 +01:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:lapisblock " , {
2017-02-09 00:10:37 +01:00
description = " Lapis Lazuli Block " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " A lapis lazuli block is mostly a decorational block but also useful as a compact storage of lapis lazuli. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_lapis_block.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-02-25 16:19:24 +01:00
groups = { pickaxey = 3 , building_block = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 15 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 3 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:emeraldblock " , {
2017-01-04 06:20:13 +01:00
description = " Block of Emerald " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " A block of emerald is mostly a shiny decorational block but also useful as a compact storage of emeralds. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_emerald_block.png " } ,
2017-01-04 22:36:51 +01:00
is_ground_content = false ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-02-25 16:19:24 +01:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 30 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:obsidian " , {
2015-06-29 19:55:56 +02:00
description = " Obsidian " ,
2017-03-10 22:27:27 +01:00
_doc_items_longdesc = " Obsidian is an extremely hard mineral with an enourmous blast-resistance. Obsidian is formed when water meets lava. " ,
2015-06-29 19:55:56 +02:00
tiles = { " default_obsidian.png " } ,
is_ground_content = true ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2015-06-29 19:55:56 +02:00
stack_max = 64 ,
2017-03-11 05:34:58 +01:00
groups = { pickaxey = 5 , building_block = 1 , material_stone = 1 } ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 6000 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 50 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:ice " , {
2015-06-29 19:55:56 +02:00
description = " Ice " ,
2017-07-08 18:34:56 +02:00
_doc_items_longdesc = " Ice is a translucent solid block usually found in cold areas. When it is broken while resting on top of another block, it will turn into still water. " ,
2015-06-29 19:55:56 +02:00
drawtype = " glasslike " ,
tiles = { " default_ice.png " } ,
is_ground_content = true ,
paramtype = " light " ,
use_texture_alpha = true ,
stack_max = 64 ,
2017-08-26 16:00:32 +02:00
groups = { handy = 1 , pickaxey = 1 , slippery = 3 , building_block = 1 } ,
2017-01-04 08:01:40 +01:00
drop = " " ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2017-07-08 18:34:56 +02:00
after_destruct = function ( pos , oldnode )
-- Create a water source if ice is destroyed and there was something below it
local below = { x = pos.x , y = pos.y - 1 , z = pos.z }
local belownode = minetest.get_node ( below )
2017-08-21 19:12:37 +02:00
local _ , dim = mcl_util.y_to_layer ( below.y )
if dim ~= " nether " and belownode.name ~= " air " and belownode.name ~= " ignore " and belownode.name ~= " mcl_core:void " then
2017-07-08 18:34:56 +02:00
minetest.set_node ( pos , { name = " mcl_core:water_source " } )
end
end ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:packed_ice " , {
2015-06-29 19:55:56 +02:00
description = " Packed Ice " ,
2017-03-11 17:32:39 +01:00
_doc_items_longdesc = " Packed ice is a compressed form of ice. It is opaque and solid. " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_ice_packed.png " } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
stack_max = 64 ,
2017-08-26 16:00:32 +02:00
groups = { handy = 1 , pickaxey = 1 , slippery = 3 , building_block = 1 } ,
2017-01-04 08:01:40 +01:00
drop = " " ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-08 02:49:07 +01:00
-- Frosted Ice (4 nodes)
for i = 0 , 3 do
local ice = { }
ice.increase_age = function ( pos , ice_near , first_melt )
-- Increase age of frosted age or turn to water source if too old
local nn = minetest.get_node ( pos ) . name
local age = tonumber ( string.sub ( nn , - 1 ) )
2017-08-21 19:12:37 +02:00
local _ , dim = mcl_util.y_to_layer ( pos.y )
2017-01-08 02:49:07 +01:00
if age == nil then return end
if age < 3 then
2017-08-21 19:12:37 +02:00
minetest.swap_node ( pos , { name = " mcl_core:frosted_ice_ " .. ( age + 1 ) } )
2017-01-08 02:49:07 +01:00
else
2017-08-21 19:12:37 +02:00
if dim ~= " nether " then
minetest.set_node ( pos , { name = " mcl_core:water_source " } )
else
minetest.remove_node ( pos )
end
2017-01-08 02:49:07 +01:00
end
-- Spread aging to neighbor blocks, but not recursively
if first_melt and i == 3 then
for j = 1 , # ice_near do
ice.increase_age ( ice_near [ j ] , false )
end
end
end
2017-03-20 18:12:05 +01:00
local use_doc = i == 0
2017-03-11 17:32:39 +01:00
local longdesc
2017-03-20 18:12:05 +01:00
if use_doc then
2017-03-11 17:32:39 +01:00
longdesc = " Frosted ice is a short-lived solid translucent block. It melts into a water source within a few seconds. "
end
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:frosted_ice_ " .. i , {
2017-01-08 02:49:07 +01:00
description = " Frosted Ice " ,
2017-03-20 18:12:05 +01:00
_doc_items_create_entry = use_doc ,
2017-03-11 17:32:39 +01:00
_doc_items_longdesc = longdesc ,
2017-01-08 02:49:07 +01:00
drawtype = " glasslike " ,
2017-05-26 01:06:54 +02:00
tiles = { " mcl_core_frosted_ice_ " .. i .. " .png " } ,
2017-01-08 02:49:07 +01:00
is_ground_content = false ,
paramtype = " light " ,
use_texture_alpha = true ,
stack_max = 64 ,
2017-08-26 16:00:32 +02:00
groups = { handy = 1 , frosted_ice = 1 , slippery = 3 , not_in_creative_inventory = 1 } ,
2017-01-08 02:49:07 +01:00
drop = " " ,
2017-02-11 18:46:23 +01:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2017-01-08 02:49:07 +01:00
on_construct = function ( pos )
local timer = minetest.get_node_timer ( pos )
timer : start ( 1.5 )
end ,
on_timer = function ( pos , elapsed )
local ice_near = minetest.find_nodes_in_area (
{ x = pos.x - 1 , y = pos.y - 1 , z = pos.z - 1 } ,
{ x = pos.x + 1 , y = pos.y + 1 , z = pos.z + 1 } ,
{ " group:frosted_ice " }
)
-- Check condition to increase age
if ( # ice_near < 4 and minetest.get_node_light ( pos ) > ( 11 - i ) ) or math.random ( 1 , 3 ) == 1 then
ice.increase_age ( pos , ice_near , true )
end
local timer = minetest.get_node_timer ( pos )
timer : start ( 1.5 )
end ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.5 ,
2017-01-08 02:49:07 +01:00
} )
2017-03-20 18:12:05 +01:00
-- Add entry aliases for the Help
if minetest.get_modpath ( " doc " ) and i > 0 then
doc.add_entry_alias ( " nodes " , " mcl_core:frosted_ice_0 " , " nodes " , " mcl_core:frosted_ice_ " .. i )
end
2017-01-08 02:49:07 +01:00
end
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:snow " , {
2017-01-04 11:26:35 +01:00
description = " Top Snow " ,
2017-03-11 17:32:39 +01:00
_doc_items_longdesc = " Top snow is a thin layer of snow. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_snow.png " } ,
2017-03-02 16:38:56 +01:00
wield_image = " default_snow.png " ,
2017-03-02 17:03:14 +01:00
wield_scale = { x = 1 , y = 1 , z = 1 } ,
2015-06-29 19:55:56 +02:00
is_ground_content = true ,
paramtype = " light " ,
2017-03-02 17:31:21 +01:00
sunlight_propagates = true ,
2015-06-29 19:55:56 +02:00
buildable_to = true ,
drawtype = " nodebox " ,
2017-03-02 16:39:58 +01:00
stack_max = 64 ,
2017-03-02 17:33:50 +01:00
floodable = true ,
2017-06-20 15:40:49 +02:00
on_flood = function ( pos , oldnode , newnode )
local npos = { x = pos.x , y = pos.y - 1 , z = pos.z }
local node = minetest.get_node ( npos )
2017-09-06 19:17:36 +02:00
mcl_core.clear_snow_dirt ( npos , node )
2017-06-20 15:40:49 +02:00
end ,
2015-06-29 19:55:56 +02:00
node_box = {
type = " fixed " ,
fixed = {
{ - 0.5 , - 0.5 , - 0.5 , 0.5 , - 0.5 + 2 / 16 , 0.5 } ,
} ,
} ,
2017-09-06 19:17:36 +02:00
groups = { shovely = 1 , attached_node = 1 , deco_block = 1 , dig_by_piston = 1 , snow_cover = 1 } ,
2017-02-19 19:48:16 +01:00
sounds = mcl_sounds.node_sound_snow_defaults ( ) ,
2017-09-06 19:17:36 +02:00
on_construct = mcl_core.on_snow_construct ,
after_destruct = mcl_core.after_snow_destruct ,
2017-01-16 23:11:04 +01:00
drop = " mcl_throwing:snowball 2 " ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 0.5 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.1 ,
2015-06-29 19:55:56 +02:00
} )
2017-01-31 23:32:56 +01:00
minetest.register_node ( " mcl_core:snowblock " , {
2017-01-04 06:20:13 +01:00
description = " Snow " ,
2017-03-11 17:32:39 +01:00
_doc_items_longdesc = " This is a full block of snow. Snow of this thickness is usually found in areas of extreme cold. " ,
2017-03-20 16:38:16 +01:00
_doc_items_hidden = false ,
2015-06-29 19:55:56 +02:00
tiles = { " default_snow.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-09-06 19:17:36 +02:00
groups = { shovely = 1 , building_block = 1 , snow_cover = 1 } ,
2017-02-19 19:48:16 +01:00
sounds = mcl_sounds.node_sound_snow_defaults ( ) ,
2017-09-06 19:17:36 +02:00
on_construct = mcl_core.on_snow_construct ,
after_destruct = mcl_core.after_snow_destruct ,
2017-01-16 23:11:04 +01:00
drop = " mcl_throwing:snowball 4 " ,
2017-02-22 15:40:22 +01:00
_mcl_blast_resistance = 1 ,
2017-02-24 15:56:46 +01:00
_mcl_hardness = 0.2 ,
2015-06-29 19:55:56 +02:00
} )
2017-03-22 18:55:02 +01:00
-- Add entry aliases for the Help
if minetest.get_modpath ( " doc " ) then
doc.add_entry_alias ( " nodes " , " mcl_core:stone_with_redstone " , " nodes " , " mcl_core:stone_with_redstone_lit " )
doc.add_entry_alias ( " nodes " , " mcl_core:water_source " , " nodes " , " mcl_core:water_flowing " )
doc.add_entry_alias ( " nodes " , " mcl_core:lava_source " , " nodes " , " mcl_core:lava_flowing " )
end
2017-05-26 02:36:25 +02:00