2015-06-29 17:55:56 +00:00
-- mods/default/nodes.lua
2017-01-27 12:45:21 +00:00
local WATER_ALPHA = 160
local WATER_VISC = 1
local LAVA_VISC = 7
2015-06-29 17:55:56 +00:00
--
-- Node definitions
--
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:barrier " , {
2017-01-04 08:57:20 +00:00
description = " Barrier " ,
2017-03-02 20:55:25 +00:00
_doc_items_longdesc = " Barriers are invisble walkable blocks. They are used to create boundaries of adventure maps and the like. Monsters and animals won't appear on barriers, and fences do not connect to barriers. Other blocks can be built on barriers like on any other block. " ,
_doc_items_usagehelp = " When you hold a barrier in hand, you reveal all placed barriers in a short distance around you. " ,
2017-01-04 08:57:20 +00:00
drawtype = " airlike " ,
paramtype = " light " ,
inventory_image = " default_barrier.png " ,
wield_image = " default_barrier.png " ,
2017-03-02 21:55:07 +00:00
tiles = { " blank.png " } ,
2017-01-04 08:57:20 +00:00
stack_max = 64 ,
sunlight_propagates = true ,
is_ground_content = false ,
2017-02-25 15:19:24 +00:00
groups = { creative_breakable = 1 , not_in_creative_inventory = 1 , not_solid = 1 } ,
2017-01-04 08:57:20 +00:00
on_blast = function ( ) end ,
2017-02-21 15:25:41 +00:00
drop = " " ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 18000003 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = - 1 ,
2017-02-24 05:24:16 +00:00
after_place_node = function ( pos , placer , itemstack , pointed_thing )
if placer == nil then
return
end
minetest.add_particle ( {
pos = pos ,
expirationtime = 1 ,
size = 8 ,
texture = " default_barrier.png " ,
playername = placer : get_player_name ( )
} )
end ,
2017-01-04 08:57:20 +00:00
} )
2017-02-22 14:40:22 +00:00
-- The void below the bedrock. Void damage is handled in playerplus.
-- The void does not exist as a block in Minecraft but we register it as a
-- block here to make things easier for us.
2017-02-20 05:56:17 +00:00
minetest.register_node ( " mcl_core:void " , {
2017-02-20 05:24:04 +00:00
description = " Void " ,
2017-03-02 18:53:53 +00:00
_doc_items_create_entry = false ,
2017-02-20 05:24:04 +00:00
drawtype = " airlike " ,
paramtype = " light " ,
pointable = false ,
walkable = false ,
floodable = false ,
buildable_to = false ,
2017-02-20 05:56:17 +00:00
inventory_image = " unknown_node.png " ,
wield_image = " unknown_node.png " ,
2017-02-20 05:24:04 +00:00
stack_max = 64 ,
sunlight_propagates = true ,
is_ground_content = false ,
groups = { not_in_creative_inventory = 1 } ,
on_blast = function ( ) end ,
2017-02-21 15:25:41 +00:00
drop = " " ,
2017-02-22 14:40:22 +00:00
-- Infinite blast resistance; it should never be destroyed by explosions
_mcl_blast_resistance = - 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = - 1 ,
2017-02-20 05:24:04 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone " , {
2015-06-29 17:55:56 +00:00
description = " Stone " ,
tiles = { " default_stone.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 , deco_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:cobble ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_coal " , {
2015-06-29 17:55:56 +00:00
description = " Coal Ore " ,
tiles = { " default_stone.png^default_mineral_coal.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:coal_lump ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_iron " , {
2015-06-29 17:55:56 +00:00
description = " Iron Ore " ,
tiles = { " default_stone.png^default_mineral_iron.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 3 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:stone_with_iron ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_gold " , {
2015-06-29 17:55:56 +00:00
description = " Gold Ore " ,
tiles = { " default_stone.png^default_mineral_gold.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = " mcl_core:stone_with_gold " ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-04 09:27:12 +00:00
local redstone_timer = 68.28
2017-01-12 22:58:42 +00:00
local redstone_ore_activate = function ( pos )
2017-01-31 22:32:56 +00:00
minetest.swap_node ( pos , { name = " mcl_core:stone_with_redstone_lit " } )
2017-01-12 22:58:42 +00:00
local t = minetest.get_node_timer ( pos )
t : start ( redstone_timer )
end
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_redstone " , {
2015-06-29 17:55:56 +00:00
description = " Redstone Ore " ,
tiles = { " default_stone.png^default_mineral_redstone.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-01-04 07:01:40 +00:00
drop = {
items = {
max_items = 1 ,
{
2017-01-09 17:45:34 +00:00
items = { " mesecons:redstone 4 " } ,
2017-01-04 07:01:40 +00:00
rarity = 2 ,
} ,
{
2017-01-09 17:45:34 +00:00
items = { " mesecons:redstone 5 " } ,
2017-01-04 07:01:40 +00:00
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-01-12 22:58:42 +00:00
on_punch = redstone_ore_activate ,
on_walk_over = redstone_ore_activate , -- Uses walkover mod
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2017-01-04 09:27:12 +00:00
} )
2017-01-12 22:58:42 +00:00
local redstone_ore_reactivate = function ( pos )
local t = minetest.get_node_timer ( pos )
t : start ( redstone_timer )
end
2017-01-04 09:27:12 +00:00
-- Light the redstone ore up when it has been touched
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_redstone_lit " , {
2017-01-04 09:27:12 +00:00
description = " Lit Redstone Ore " ,
2017-03-02 18:53:53 +00:00
_doc_items_create_entry = false ,
2017-01-04 09:27:12 +00:00
tiles = { " default_stone.png^default_mineral_redstone.png " } ,
paramtype = " light " ,
2017-02-01 21:12:08 +00:00
light_source = 9 ,
2017-01-04 09:27:12 +00:00
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , not_in_creative_inventory = 1 } ,
2017-01-04 09:27:12 +00:00
drop = {
items = {
max_items = 1 ,
{
2017-01-09 17:45:34 +00:00
items = { " mesecons:redstone 4 " } ,
2017-01-04 09:27:12 +00:00
rarity = 2 ,
} ,
{
2017-01-09 17:45:34 +00:00
items = { " mesecons:redstone 5 " } ,
2017-01-04 09:27:12 +00:00
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-01-12 22:58:42 +00: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 09:27:12 +00:00
-- Turn back to normal node after some time has passed
on_timer = function ( pos , elapsed )
2017-01-31 22:32:56 +00:00
minetest.swap_node ( pos , { name = " mcl_core:stone_with_redstone " } )
2017-01-04 09:27:12 +00:00
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_lapis " , {
2015-06-29 17:55:56 +00:00
description = " Lapis Lazuli Ore " ,
tiles = { " default_stone.png^default_mineral_lapis.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 3 , building_block = 1 } ,
2015-06-29 17:55:56 +00:00
drop = {
2017-01-04 07:01:40 +00:00
max_items = 1 ,
2015-06-29 17:55:56 +00:00
items = {
2017-01-30 14:33:04 +00: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 17:55:56 +00:00
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_emerald " , {
2015-06-29 17:55:56 +00:00
description = " Emerald Ore " ,
tiles = { " default_stone.png^default_mineral_emerald.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = " mcl_core:emerald " ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stone_with_diamond " , {
2017-01-04 05:20:13 +00:00
description = " Diamond Ore " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_stone.png^default_mineral_diamond.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = " mcl_core:diamond " ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stonebrick " , {
2017-01-04 05:20:13 +00:00
description = " Stone Bricks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_stone_brick.png " } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stonebrickcarved " , {
2017-01-04 05:20:13 +00:00
description = " Chiseled Stone Bricks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_stonebrick_carved.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stonebrickcracked " , {
2017-01-04 05:20:13 +00:00
description = " Cracked Stone Bricks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_stonebrick_cracked.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:stonebrickmossy " , {
2017-01-04 05:20:13 +00:00
description = " Mossy Stone Bricks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_stonebrick_mossy.png " } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , stonebrick = 1 , building_block = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:granite " , {
2017-01-08 00:59:50 +00:00
description = " Granite " ,
tiles = { " default_granite.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2017-01-08 00:59:50 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:granite_smooth " , {
2017-01-08 00:59:50 +00:00
description = " Polished Granite " ,
tiles = { " default_granite_smooth.png " } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2017-01-08 00:59:50 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:andesite " , {
2017-01-08 00:59:50 +00:00
description = " Andesite " ,
tiles = { " default_andesite.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2017-01-08 00:59:50 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:andesite_smooth " , {
2017-01-08 00:59:50 +00:00
description = " Polished Andesite " ,
tiles = { " default_andesite_smooth.png " } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2017-01-08 00:59:50 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:diorite " , {
2017-01-08 00:59:50 +00:00
description = " Diorite " ,
tiles = { " default_diorite.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2017-01-08 00:59:50 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:diorite_smooth " , {
2017-01-08 00:59:50 +00:00
description = " Polished Diorite " ,
tiles = { " default_diorite_smooth.png " } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , stone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 1.5 ,
2017-01-08 00:59:50 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:dirt_with_grass " , {
2017-01-04 05:20:13 +00:00
description = " Grass Block " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_grass.png " , " default_dirt.png " , " default_dirt.png^default_grass_side.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , cultivatable = 2 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:dirt ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2015-06-29 17:55:56 +00:00
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 3 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.6 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-06 18:25:15 +00:00
minetest.register_node ( " mcl_core:grass_path " , {
tiles = { " mcl_core_grass_path_top.png " , " mcl_core_grass_path_side.png " } ,
description = " Grass Path " ,
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-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , not_in_creative_inventory = 1 , } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2017-02-06 18:29:11 +00:00
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 3.25 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.6 ,
2017-02-06 18:25:15 +00:00
} )
2017-01-10 03:24:42 +00:00
-- TODO: Add particles
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:mycelium " , {
2017-01-10 02:54:15 +00:00
description = " Mycelium " ,
tiles = { " default_mycelium_top.png " , " default_dirt.png " , " default_mycelium_side.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:dirt ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2017-01-10 02:54:15 +00:00
footstep = { name = " default_grass_footstep " , gain = 0.4 } ,
} ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.6 ,
2017-01-10 02:54:15 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:podzol " , {
2017-01-10 03:24:42 +00:00
description = " Podzol " ,
tiles = { " default_dirt_podzol_top.png " , " default_dirt.png " , " default_dirt_podzol_side.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 3 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:dirt ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.6 ,
2017-01-10 03:24:42 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:dirt " , {
2015-06-29 17:55:56 +00:00
description = " Dirt " ,
tiles = { " default_dirt.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , soil = 1 , soil_sapling = 2 , soil_sugarcane = 1 , cultivatable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 3 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:coarse_dirt " , {
2017-01-05 00:28:43 +00:00
description = " Coarse Dirt " ,
tiles = { " default_coarse_dirt.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , soil = 1 , soil_sugarcane = 1 , cultivatable = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 3 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2017-01-05 00:28:43 +00:00
} )
2015-06-29 17:55:56 +00:00
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:gravel " , {
2015-06-29 17:55:56 +00:00
description = " Gravel " ,
tiles = { " default_gravel.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , falling_node = 1 , building_block = 1 } ,
2015-06-29 17:55:56 +00:00
drop = {
max_items = 1 ,
items = {
2017-01-31 22:32:56 +00:00
{ items = { ' mcl_core:flint ' } , rarity = 10 } ,
{ items = { ' mcl_core:gravel ' } }
2015-06-29 17:55:56 +00:00
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2015-06-29 17:55:56 +00:00
footstep = { name = " default_gravel_footstep " , gain = 0.45 } ,
} ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 3 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.6 ,
2015-06-29 17:55:56 +00:00
} )
-- sandstone --
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sand " , {
2015-06-29 17:55:56 +00:00
description = " Sand " ,
tiles = { " default_sand.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , falling_node = 1 , sand = 1 , soil_sugarcane = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_sand_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sandstone " , {
2015-06-29 17:55:56 +00:00
description = " Sandstone " ,
tiles = { " default_sandstone_top.png " , " default_sandstone_bottom.png " , " default_sandstone_normal.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 2 , sandstone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 4 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.8 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sandstonesmooth " , {
2017-01-04 05:20:13 +00:00
description = " Smooth Sandstone " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_sandstone_top.png " , " default_sandstone_bottom.png " , " default_sandstone_smooth.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , sandstone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 4 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.8 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sandstonecarved " , {
2017-01-04 05:20:13 +00:00
description = " Chiseled Sandstone " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_sandstone_top.png " , " default_sandstone_bottom.png " , " default_sandstone_carved.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , sandstone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 4 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.8 ,
2015-06-29 17:55:56 +00:00
} )
-- red sandstone --
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:redsand " , {
2015-06-29 17:55:56 +00:00
description = " Red Sand " ,
tiles = { " default_red_sand.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , falling_node = 1 , sand = 1 , soil_sugarcane = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_sand_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:redsandstone " , {
2017-01-04 05:20:13 +00:00
description = " Red Sandstone " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_redsandstone_top.png " , " default_redsandstone_bottom.png " , " default_redsandstone_normal.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , redsandstone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 4 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.8 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:redsandstonesmooth " , {
2017-01-04 05:20:13 +00:00
description = " Smooth Red Sandstone " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_redsandstone_top.png " , " default_redsandstone_bottom.png " , " default_redsandstone_smooth.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , redsandstone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 4 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.8 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:redsandstonecarved " , {
2017-01-04 05:20:13 +00:00
description = " Chiseled Red Sandstone " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_redsandstone_top.png " , " default_redsandstone_bottom.png " , " default_redsandstone_carved.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , redsandstone = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 4 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.8 ,
2015-06-29 17:55:56 +00:00
} )
---
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:clay " , {
2017-01-10 02:29:34 +00:00
-- Original name: Clay
description = " Block of Clay " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_clay.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , shovely = 1 , building_block = 1 } ,
2017-01-31 22:32:56 +00:00
drop = ' mcl_core:clay_lump 4 ' ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_dirt_defaults ( {
2015-06-29 17:55:56 +00:00
footstep = " " ,
} ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 3 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.6 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-01 17:51:26 +00:00
minetest.register_node ( " mcl_core:brick_block " , {
-- Original name: “Bricks”
description = " Brick Block " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_brick.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:bone_block " , {
2017-01-10 03:49:18 +00:00
description = " Bone Block " ,
2017-02-06 16:22:21 +00:00
tiles = { " mcl_core_bone_block_top.png " , " mcl_core_bone_block_top.png " , " mcl_core_bone_block_side.png " } ,
2017-01-10 03:49:18 +00:00
is_ground_content = false ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2017-01-10 03:49:18 +00:00
} )
2015-06-29 17:55:56 +00:00
2017-02-16 19:22:20 +00:00
-- Oak --
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:tree " , {
2017-01-07 03:17:08 +00:00
description = " Oak Wood " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_tree_top.png " , " default_tree_top.png " , " default_tree.png " } ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , tree = 1 , flammable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sapling " , {
2017-01-04 05:20:13 +00:00
description = " Oak Sapling " ,
2015-06-29 17:55:56 +00:00
drawtype = " plantlike " ,
visual_scale = 1.0 ,
tiles = { " default_sapling.png " } ,
inventory_image = " default_sapling.png " ,
wield_image = " default_sapling.png " ,
paramtype = " light " ,
walkable = false ,
selection_box = {
type = " fixed " ,
fixed = { - 0.3 , - 0.5 , - 0.3 , 0.3 , 0.35 , 0.3 }
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , sapling = 1 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-19 22:31:06 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-03-07 22:28:54 +00:00
on_construct = function ( pos )
local meta = minetest.get_meta ( pos )
meta : set_int ( " stage " , 0 )
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:leaves " , {
2017-01-04 05:20:13 +00:00
description = " Oak Leaves " ,
2015-06-29 17:55:56 +00:00
drawtype = " allfaces_optional " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2015-06-29 17:55:56 +00:00
visual_scale = 1.3 ,
tiles = { " default_leaves.png " } ,
paramtype = " light " ,
stack_max = 64 ,
2017-03-07 23:10:22 +00:00
groups = { handy = 1 , shearsy = 1 , swordy = 1 , leafdecay = 4 , flammable = 2 , leaves = 1 , deco_block = 1 } ,
2015-06-29 17:55:56 +00:00
drop = {
max_items = 1 ,
items = {
{
-- player will get sapling with 1/20 chance
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:sapling ' } ,
2015-06-29 17:55:56 +00:00
rarity = 20 ,
} ,
2017-01-09 03:54:46 +00:00
{
2017-01-04 07:01:40 +00:00
-- player will get apple with 1/200 chance
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:apple ' } ,
2015-06-29 17:55:56 +00:00
rarity = 200 ,
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-16 20:24:27 +00:00
minetest.register_node ( " mcl_core:wood " , {
description = " Oak Wood Planks " ,
tiles = { " default_wood.png " } ,
stack_max = 64 ,
is_ground_content = false ,
2017-03-06 03:51:26 +00:00
groups = { handy = 1 , axey = 1 , flammable = 3 , wood = 1 , building_block = 1 } ,
2017-02-16 20:24:27 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2017-02-16 20:24:27 +00:00
} )
2017-02-16 19:22:20 +00:00
-- Dark oak --
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:darktree " , {
2017-01-09 03:44:07 +00:00
description = " Dark Oak Wood " ,
tiles = { " default_log_big_oak_top.png " , " default_log_big_oak_top.png " , " default_log_big_oak.png " } ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2017-01-09 03:44:07 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , tree = 1 , flammable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2017-01-09 03:44:07 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:darksapling " , {
2017-01-09 03:44:07 +00:00
description = " Dark Oak Sapling " ,
drawtype = " plantlike " ,
visual_scale = 1.0 ,
tiles = { " default_sapling_big_oak.png " } ,
inventory_image = " default_sapling_big_oak.png " ,
wield_image = " default_sapling_big_oak.png " ,
paramtype = " light " ,
walkable = false ,
selection_box = {
type = " fixed " ,
fixed = { - 0.3 , - 0.5 , - 0.3 , 0.3 , 0.35 , 0.3 }
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , sapling = 1 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-19 22:31:06 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-03-07 22:28:54 +00:00
on_construct = function ( pos )
local meta = minetest.get_meta ( pos )
meta : set_int ( " stage " , 0 )
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2017-01-09 03:44:07 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:darkleaves " , {
2017-01-09 03:44:07 +00:00
description = " Dark Oak Leaves " ,
drawtype = " allfaces_optional " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2017-01-09 03:44:07 +00:00
visual_scale = 1.3 ,
tiles = { " default_leaves_big_oak.png " } ,
paramtype = " light " ,
stack_max = 64 ,
2017-03-07 23:10:22 +00:00
groups = { handy = 1 , shearsy = 1 , swordy = 1 , leafdecay = 4 , flammable = 2 , leaves = 1 , deco_block = 1 } ,
2017-01-09 03:44:07 +00:00
drop = {
max_items = 1 ,
items = {
{
-- player will get sapling with 1/20 chance
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:darksapling ' } ,
2017-01-09 03:44:07 +00:00
rarity = 20 ,
} ,
2017-01-09 03:54:46 +00:00
{
-- player will get apple with 1/200 chance
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:apple ' } ,
2017-01-09 03:54:46 +00:00
rarity = 200 ,
} ,
2017-01-09 03:44:07 +00:00
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2017-01-09 03:44:07 +00:00
} )
2017-02-16 20:24:27 +00:00
minetest.register_node ( " mcl_core:darkwood " , {
description = " Dark Oak Wood Planks " ,
tiles = { " default_planks_big_oak.png " } ,
stack_max = 64 ,
is_ground_content = false ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , flammable = 3 , wood = 1 , building_block = 1 } ,
2017-02-16 20:24:27 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2017-02-16 20:24:27 +00:00
} )
2017-02-16 19:22:20 +00:00
-- Jungle tree --
2015-06-29 17:55:56 +00:00
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:jungletree " , {
2017-01-04 05:20:13 +00:00
description = " Jungle Wood " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_jungletree_top.png " , " default_jungletree_top.png " , " default_jungletree.png " } ,
stack_max = 64 ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2017-02-18 20:07:57 +00:00
-- This is a bad bad workaround which is only done because cocoas are not wallmounted (but should)
-- As long cocoas only EVER stick to jungle trees, and nothing else, this is probably a lesser sin.
after_dig_node = function ( pos , oldnode , oldmetadata , digger )
-- Drop attached cocoas
local posses = {
{ x = pos.x + 1 , y = pos.y , z = pos.z } ,
{ x = pos.x - 1 , y = pos.y , z = pos.z } ,
{ x = pos.x , y = pos.y , z = pos.z + 1 } ,
{ x = pos.x , y = pos.y , z = pos.z - 1 } ,
}
for p = 1 , # posses do
local node = minetest.get_node ( posses [ p ] )
local g = minetest.get_item_group ( node.name , " cocoa " )
if g and g >= 1 then
minetest.remove_node ( posses [ p ] )
local drops = minetest.get_node_drops ( node.name , " " )
for d = 1 , # drops do
minetest.add_item ( posses [ p ] , drops [ d ] )
end
end
end
end ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , tree = 1 , flammable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:junglewood " , {
2017-01-04 05:20:13 +00:00
description = " Jungle Wood Planks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_junglewood.png " } ,
stack_max = 64 ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , flammable = 3 , wood = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:jungleleaves " , {
2015-06-29 17:55:56 +00:00
description = " Jungle Leaves " ,
drawtype = " allfaces_optional " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2015-06-29 17:55:56 +00:00
visual_scale = 1.3 ,
tiles = { " default_jungleleaves.png " } ,
paramtype = " light " ,
stack_max = 64 ,
2017-03-07 23:10:22 +00:00
groups = { handy = 1 , shearsy = 1 , swordy = 1 , leafdecay = 4 , flammable = 2 , leaves = 1 , deco_block = 1 } ,
2015-06-29 17:55:56 +00:00
drop = {
max_items = 1 ,
items = {
{
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:junglesapling ' } ,
2017-01-04 07:01:40 +00:00
rarity = 40 ,
2015-06-29 17:55:56 +00:00
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:junglesapling " , {
2015-06-29 17:55:56 +00:00
description = " Jungle Sapling " ,
drawtype = " plantlike " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2015-06-29 17:55:56 +00:00
visual_scale = 1.0 ,
tiles = { " default_junglesapling.png " } ,
inventory_image = " default_junglesapling.png " ,
wield_image = " default_junglesapling.png " ,
paramtype = " light " ,
walkable = false ,
selection_box = {
type = " fixed " ,
fixed = { - 0.3 , - 0.5 , - 0.3 , 0.3 , 0.35 , 0.3 }
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , sapling = 1 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-19 22:31:06 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-03-07 22:28:54 +00:00
on_construct = function ( pos )
local meta = minetest.get_meta ( pos )
meta : set_int ( " stage " , 0 )
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-16 19:22:20 +00:00
-- Acacia --
2015-06-29 17:55:56 +00:00
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:acaciatree " , {
2017-01-04 05:20:13 +00:00
description = " Acacia Wood " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_acaciatree_top.png " , " default_acaciatree_top.png " , " default_acaciatree.png " } ,
stack_max = 64 ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , tree = 1 , flammable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:acaciawood " , {
2017-01-04 05:20:13 +00:00
description = " Acacia Wood Planks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_acaciawood.png " } ,
stack_max = 64 ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , flammable = 3 , wood = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:acacialeaves " , {
2015-06-29 17:55:56 +00:00
description = " Acacia Leaves " ,
drawtype = " allfaces_optional " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2015-06-29 17:55:56 +00:00
visual_scale = 1.3 ,
tiles = { " default_acacialeaves.png " } ,
paramtype = " light " ,
stack_max = 64 ,
2017-03-07 23:10:22 +00:00
groups = { handy = 1 , shearsy = 1 , swordy = 1 , leafdecay = 4 , flammable = 2 , leaves = 1 , deco_block = 1 } ,
2015-06-29 17:55:56 +00:00
drop = {
max_items = 1 ,
items = {
{
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:acaciasapling ' } ,
2015-06-29 17:55:56 +00:00
rarity = 20 ,
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:acaciasapling " , {
2015-06-29 17:55:56 +00:00
description = " Acacia Sapling " ,
drawtype = " plantlike " ,
visual_scale = 1.0 ,
tiles = { " default_acaciasapling.png " } ,
inventory_image = " default_acaciasapling.png " ,
wield_image = " default_acaciasapling.png " ,
paramtype = " light " ,
walkable = false ,
selection_box = {
type = " fixed " ,
fixed = { - 0.3 , - 0.5 , - 0.3 , 0.3 , 0.35 , 0.3 }
} ,
2017-03-07 22:28:54 +00:00
on_construct = function ( pos )
local meta = minetest.get_meta ( pos )
meta : set_int ( " stage " , 0 )
end ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , sapling = 1 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-19 22:31:06 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-16 19:22:20 +00:00
-- Spruce --
2015-06-29 17:55:56 +00:00
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sprucetree " , {
2017-01-04 05:20:13 +00:00
description = " Spruce Wood " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_sprucetree_top.png " , " default_sprucetree_top.png " , " default_sprucetree.png " } ,
stack_max = 64 ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , tree = 1 , flammable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sprucewood " , {
2017-01-04 05:20:13 +00:00
description = " Spruce Wood Planks " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_sprucewood.png " } ,
stack_max = 64 ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , flammable = 3 , wood = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:spruceleaves " , {
2015-06-29 17:55:56 +00:00
description = " Spruce Leaves " ,
drawtype = " allfaces_optional " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2015-06-29 17:55:56 +00:00
visual_scale = 1.3 ,
tiles = { " default_spruceleaves.png " } ,
paramtype = " light " ,
stack_max = 64 ,
2017-03-07 23:10:22 +00:00
groups = { handy = 1 , shearsy = 1 , swordy = 1 , leafdecay = 4 , flammable = 2 , leaves = 1 , deco_block = 1 } ,
2015-06-29 17:55:56 +00:00
drop = {
max_items = 1 ,
items = {
{
-- player will get sapling with 1/20 chance
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:sprucesapling ' } ,
2015-06-29 17:55:56 +00:00
rarity = 20 ,
} ,
{
-- player will get leaves only if he get no saplings,
-- this is because max_items is 1
items = { ' ' } ,
}
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:sprucesapling " , {
2015-06-29 17:55:56 +00:00
description = " Spruce Sapling " ,
drawtype = " plantlike " ,
visual_scale = 1.0 ,
tiles = { " default_sprucesapling.png " } ,
inventory_image = " default_sprucesapling.png " ,
wield_image = " default_sprucesapling.png " ,
paramtype = " light " ,
walkable = false ,
selection_box = {
type = " fixed " ,
fixed = { - 0.3 , - 0.5 , - 0.3 , 0.3 , 0.35 , 0.3 }
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , sapling = 1 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-19 22:31:06 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-03-07 22:28:54 +00:00
on_construct = function ( pos )
local meta = minetest.get_meta ( pos )
meta : set_int ( " stage " , 0 )
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-16 19:22:20 +00:00
-- Birch
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:birchtree " , {
2017-01-10 01:38:08 +00:00
description = " Birch Wood " ,
tiles = { " default_log_birch_top.png " , " default_log_birch_top.png " , " default_log_birch.png " } ,
stack_max = 64 ,
paramtype2 = " facedir " ,
2017-02-11 03:37:14 +00:00
on_place = mcl_util.rotate_axis ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , tree = 1 , flammable = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 10 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2017-01-10 01:38:08 +00:00
} )
2015-06-29 17:55:56 +00:00
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:birchwood " , {
2017-01-10 01:38:08 +00:00
description = " Birch Wood Planks " ,
tiles = { " default_planks_birch.png " } ,
stack_max = 64 ,
is_ground_content = false ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , flammable = 3 , wood = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2017-01-10 01:38:08 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:birchleaves " , {
2017-01-10 01:38:08 +00:00
description = " Birch Leaves " ,
drawtype = " allfaces_optional " ,
2017-03-07 23:25:04 +00:00
place_param2 = 1 , -- Prevent leafdecay for placed nodes
2017-01-10 01:38:08 +00:00
visual_scale = 1.3 ,
tiles = { " default_leaves_birch.png " } ,
paramtype = " light " ,
stack_max = 64 ,
2017-03-07 23:10:22 +00:00
groups = { handy = 1 , shearsy = 1 , swordy = 1 , leafdecay = 4 , flammable = 2 , leaves = 1 , deco_block = 1 } ,
2017-01-10 01:38:08 +00:00
drop = {
max_items = 1 ,
items = {
{
-- player will get sapling with 1/20 chance
2017-01-31 22:32:56 +00:00
items = { ' mcl_core:birchsapling ' } ,
2017-01-10 01:38:08 +00:00
rarity = 20 ,
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2017-01-10 01:38:08 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:birchsapling " , {
2017-01-10 01:38:08 +00:00
description = " Birch Sapling " ,
drawtype = " plantlike " ,
visual_scale = 1.0 ,
tiles = { " default_sapling_birch.png " } ,
inventory_image = " default_sapling_birch.png " ,
wield_image = " default_sapling_birch.png " ,
paramtype = " light " ,
walkable = false ,
selection_box = {
type = " fixed " ,
fixed = { - 0.3 , - 0.5 , - 0.3 , 0.3 , 0.35 , 0.3 }
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , sapling = 1 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-19 22:31:06 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-03-07 22:28:54 +00:00
on_construct = function ( pos )
local meta = minetest.get_meta ( pos )
meta : set_int ( " stage " , 0 )
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2017-01-10 01:38:08 +00:00
} )
2015-06-29 17:55:56 +00:00
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:cactus " , {
2015-06-29 17:55:56 +00:00
description = " Cactus " ,
drawtype = " nodebox " ,
tiles = { " default_cactus_top.png " , " default_cactus_bottom.png " , " default_cactus_side.png " , " default_cactus_side.png " , " default_cactus_side.png " , " default_cactus_side.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2015-06-29 17:55:56 +00:00
paramtype = " light " ,
node_box = {
type = " fixed " ,
fixed = {
{ - 7 / 16 , - 8 / 16 , - 7 / 16 , 7 / 16 , 8 / 16 , 7 / 16 } , -- Main Body
{ - 8 / 16 , - 8 / 16 , - 7 / 16 , 8 / 16 , 8 / 16 , - 7 / 16 } , -- Spikes
{ - 8 / 16 , - 8 / 16 , 7 / 16 , 8 / 16 , 8 / 16 , 7 / 16 } , -- Spikes
{ - 7 / 16 , - 8 / 16 , - 8 / 16 , - 7 / 16 , 8 / 16 , 8 / 16 } , -- Spikes
{ 7 / 16 , - 8 / 16 , 8 / 16 , 7 / 16 , 8 / 16 , - 8 / 16 } , -- Spikes
} ,
} ,
selection_box = {
type = " fixed " ,
fixed = {
{ - 7 / 16 , - 8 / 16 , - 7 / 16 , 7 / 16 , 8 / 16 , 7 / 16 } ,
} ,
} ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.4 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:reeds " , {
2017-01-04 05:20:13 +00:00
description = " Sugar Canes " ,
2015-06-29 17:55:56 +00:00
drawtype = " plantlike " ,
tiles = { " default_papyrus.png " } ,
inventory_image = " default_sugar_cane.png " ,
wield_image = " default_sugar_cane.png " ,
paramtype = " light " ,
walkable = false ,
is_ground_content = true ,
node_box = {
type = " fixed " ,
fixed = {
{ - 7 / 16 , - 8 / 16 , - 7 / 16 , 7 / 16 , 8 / 16 , 7 / 16 } , -- Main Body
{ - 8 / 16 , - 8 / 16 , - 7 / 16 , 8 / 16 , 8 / 16 , - 7 / 16 } , -- Spikes
{ - 8 / 16 , - 8 / 16 , 7 / 16 , 8 / 16 , 8 / 16 , 7 / 16 } , -- Spikes
{ - 7 / 16 , - 8 / 16 , - 8 / 16 , - 7 / 16 , 8 / 16 , 8 / 16 } , -- Spikes
{ 7 / 16 , - 8 / 16 , 8 / 16 , 7 / 16 , 8 / 16 , - 8 / 16 } , -- Spikes
} ,
} ,
selection_box = {
type = " fixed " ,
fixed = {
{ - 7 / 16 , - 8 / 16 , - 7 / 16 , 7 / 16 , 8 / 16 , 7 / 16 } ,
} ,
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , craftitem = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:bedrock " , {
2015-06-29 17:55:56 +00:00
description = " Bedrock " ,
tiles = { " default_bedrock.png " } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { creative_breakable = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-01-04 08:42:25 +00:00
is_ground_content = false ,
on_blast = function ( ) end ,
2017-01-05 00:00:43 +00:00
drop = ' ' ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 18000000 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = - 1 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:slimeblock " , {
2015-06-29 17:55:56 +00:00
description = " Slime Block " ,
drawtype = " nodebox " ,
paramtype = " light " ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
node_box = {
type = " fixed " ,
fixed = {
{ - 0.25 , - 0.25 , - 0.25 , 0.25 , 0.25 , 0.25 } ,
{ - 0.5 , - 0.5 , - 0.5 , 0.5 , 0.5 , 0.5 } ,
}
} ,
tiles = { " default_slimeblock.png " } ,
paramtype = " light " ,
use_texture_alpha = true ,
sunlight_propagates = true ,
stack_max = 64 ,
2017-01-04 06:19:15 +00:00
-- According to Minecraft Wiki, bouncing off a slime block from a height off 255 blocks should result in a bounce height of 50 blocks
-- bouncy=44 makes the player bounce up to 49.6. This value was chosen by experiment.
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , bouncy = 44 , fall_damage_add_percent =- 100 , deco_block = 1 } ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:glass " , {
2015-06-29 17:55:56 +00:00
description = " Glass " ,
drawtype = " glasslike " ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
tiles = { " default_glass.png " } ,
paramtype = " light " ,
sunlight_propagates = true ,
stack_max = 64 ,
2017-03-01 14:19:51 +00:00
groups = { handy = 1 , glass = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2015-06-29 17:55:56 +00:00
drop = " " ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.3 ,
2015-06-29 17:55:56 +00:00
} )
---- colored glass
2017-01-31 22:32:56 +00:00
mcl_core.add_glass ( " Red Stained Glass " , " basecolor_red " , " red " )
mcl_core.add_glass ( " Green Stained Glass " , " unicolor_dark_green " , " green " )
mcl_core.add_glass ( " Blue Stained Glass " , " basecolor_blue " , " blue " )
mcl_core.add_glass ( " Light Blue Stained Glass " , " unicolor_light_blue " , " light_blue " )
mcl_core.add_glass ( " Black Stained Glass " , " basecolor_black " , " black " )
mcl_core.add_glass ( " White Stained Glass " , " basecolor_white " , " white " )
mcl_core.add_glass ( " Yellow Stained Glass " , " basecolor_yellow " , " yellow " )
mcl_core.add_glass ( " Brown Stained Glass " , " unicolor_dark_orange " , " brown " )
mcl_core.add_glass ( " Orange Stained Glass " , " excolor_orange " , " orange " )
mcl_core.add_glass ( " Pink Stained Glass " , " unicolor_light_red " , " pink " )
2017-02-11 23:00:17 +00:00
mcl_core.add_glass ( " Grey Stained Glass " , " unicolor_darkgrey " , " gray " )
2017-01-31 22:32:56 +00:00
mcl_core.add_glass ( " Lime Stained Glass " , " basecolor_green " , " lime " )
2017-02-11 23:00:17 +00:00
mcl_core.add_glass ( " Light Grey Stained Glass " , " basecolor_grey " , " silver " )
2017-01-31 22:32:56 +00:00
mcl_core.add_glass ( " Magenta Stained Glass " , " basecolor_magenta " , " magenta " )
mcl_core.add_glass ( " Purple Stained Glass " , " excolor_violet " , " purple " )
mcl_core.add_glass ( " Cyan Stained Glass " , " basecolor_cyan " , " cyan " )
minetest.register_node ( " mcl_core:ladder " , {
2015-06-29 17:55:56 +00:00
description = " Ladder " ,
drawtype = " signlike " ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
tiles = { " default_ladder.png " } ,
inventory_image = " default_ladder.png " ,
wield_image = " default_ladder.png " ,
paramtype = " light " ,
2017-03-01 14:41:06 +00:00
sunlight_propagates = true ,
2015-06-29 17:55:56 +00:00
paramtype2 = " wallmounted " ,
2017-03-01 14:40:30 +00:00
walkable = true ,
2015-06-29 17:55:56 +00:00
climbable = true ,
2017-03-01 14:40:30 +00:00
node_box = {
type = " wallmounted " ,
wall_side = { - 0.5 , - 0.5 , - 0.5 , - 7 / 16 , 0.5 , 0.5 } ,
} ,
2015-06-29 17:55:56 +00:00
selection_box = {
type = " wallmounted " ,
2017-03-01 14:40:30 +00:00
wall_side = { - 0.5 , - 0.5 , - 0.5 , - 7 / 16 , 0.5 , 0.5 } ,
2015-06-29 17:55:56 +00:00
} ,
stack_max = 64 ,
2017-03-01 14:18:23 +00:00
groups = { handy = 1 , axey = 1 , attached_node = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2017-03-01 14:18:23 +00:00
node_placement_prediction = " " ,
-- Restrict placement of ladders
on_place = function ( itemstack , placer , pointed_thing )
if pointed_thing.type ~= " node " then
-- no interaction possible with entities
return itemstack
end
local under = pointed_thing.under
local node = minetest.get_node ( under )
local def = minetest.registered_nodes [ node.name ]
2017-03-01 14:32:51 +00:00
local groups = def.groups
2017-03-01 14:47:36 +00:00
-- Don't allow to place the ladder at particular nodes
2017-03-01 14:32:51 +00:00
if ( groups and ( groups.glass or groups.leaves or groups.slab ) ) or
2017-03-01 14:47:36 +00:00
node.name == " mcl_core:ladder " or node.name == " mcl_core:ice " or node.name == " mcl_nether:glowstone " or node.name == " mcl_ocean:sea_lantern " then
2017-03-01 14:32:51 +00:00
return itemstack
end
-- Check special rightclick action of pointed node
2017-03-01 14:18:23 +00:00
if def and def.on_rightclick then
2017-03-01 14:32:51 +00:00
if not placer : get_player_control ( ) . sneak then
return def.on_rightclick ( under , node , placer , itemstack ,
pointed_thing ) or itemstack , false
end
2017-03-01 14:18:23 +00:00
end
local above = pointed_thing.above
-- Ladders may not be placed on ceiling or floor
if under.y ~= above.y then
return itemstack
end
local success = minetest.item_place_node ( itemstack , placer , pointed_thing )
2017-03-04 15:55:57 +00:00
local idef = itemstack : get_definition ( )
if success then
if idef.sounds and idef.sounds . place then
minetest.sound_play ( idef.sounds . place , { pos = above , gain = 1 } )
end
2017-03-01 14:18:23 +00:00
end
return itemstack
end ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.4 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:vine " , {
2017-01-04 05:20:13 +00:00
description = " Vines " ,
2015-06-29 17:55:56 +00:00
drawtype = " signlike " ,
tiles = { " default_vine.png " } ,
inventory_image = " default_vine.png " ,
wield_image = " default_vine.png " ,
paramtype = " light " ,
2017-02-10 05:02:09 +00:00
sunlight_propagates = true ,
2015-06-29 17:55:56 +00:00
paramtype2 = " wallmounted " ,
walkable = false ,
climbable = true ,
2017-02-10 04:34:42 +00:00
buildable_to = true ,
2015-06-29 17:55:56 +00:00
selection_box = {
type = " wallmounted " ,
} ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , axey = 1 , shearsy = 1 , swordy = 1 , flammable = 2 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2015-06-29 17:55:56 +00:00
drop = " " ,
after_dig_node = function ( pos , oldnode , oldmetadata , user )
2017-03-07 23:33:05 +00:00
local item = user : get_wielded_item ( )
if item : get_name ( ) == " mcl_tools:shears " then
2017-03-07 23:37:07 +00:00
minetest.add_item ( pos , oldnode.name )
2015-06-29 17:55:56 +00:00
end
2017-02-22 14:40:22 +00:00
end ,
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:water_flowing " , {
2015-06-29 17:55:56 +00:00
description = " Flowing Water " ,
inventory_image = minetest.inventorycube ( " default_water.png " ) ,
drawtype = " flowingliquid " ,
2017-01-05 03:53:52 +00:00
tiles = { name = " default_water_flowing_animated.png " , animation = { type = " vertical_frames " , aspect_w = 32 , aspect_h = 32 , length = 2.0 } } ,
2015-06-29 17:55:56 +00:00
special_tiles = {
{
image = " default_water_flowing_animated.png " ,
backface_culling = false ,
2017-01-05 03:53:52 +00:00
animation = { type = " vertical_frames " , aspect_w = 64 , aspect_h = 64 , length = 2.0 }
2015-06-29 17:55:56 +00:00
} ,
{
image = " default_water_flowing_animated.png " ,
backface_culling = true ,
2017-01-05 03:53:52 +00:00
animation = { type = " vertical_frames " , aspect_w = 64 , aspect_h = 64 , length = 2.0 }
2015-06-29 17:55:56 +00:00
} ,
} ,
alpha = WATER_ALPHA ,
paramtype = " light " ,
paramtype2 = " flowingliquid " ,
walkable = false ,
pointable = false ,
diggable = false ,
buildable_to = true ,
drop = " " ,
2017-01-11 23:59:56 +00:00
drowning = 4 ,
2015-06-29 17:55:56 +00:00
liquidtype = " flowing " ,
2017-01-31 22:32:56 +00:00
liquid_alternative_flowing = " mcl_core:water_flowing " ,
liquid_alternative_source = " mcl_core:water_source " ,
2015-06-29 17:55:56 +00:00
liquid_viscosity = WATER_VISC ,
liquid_range = 7 ,
2017-01-31 22:32:56 +00:00
freezemelt = " mcl_core:snow " ,
2015-06-29 17:55:56 +00:00
post_effect_color = { a = 64 , r = 100 , g = 100 , b = 200 } ,
2017-02-25 15:19:24 +00:00
groups = { water = 3 , liquid = 3 , puts_out_fire = 1 , not_in_creative_inventory = 1 , freezes = 1 , melt_around = 1 } ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 500 ,
2017-03-01 17:49:47 +00:00
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = - 1 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:water_source " , {
2017-01-12 00:41:40 +00:00
description = " Still Water " ,
2015-06-29 17:55:56 +00:00
inventory_image = minetest.inventorycube ( " default_water.png " ) ,
drawtype = " liquid " ,
tiles = {
{ name = " default_water_source_animated.png " , animation = { type = " vertical_frames " , aspect_w = 32 , aspect_h = 32 , length = 5.0 } }
} ,
special_tiles = {
-- New-style water source material (mostly unused)
{
name = " default_water_source_animated.png " ,
animation = { type = " vertical_frames " , aspect_w = 32 , aspect_h = 32 , length = 5.0 } ,
backface_culling = false ,
}
} ,
alpha = WATER_ALPHA ,
paramtype = " light " ,
walkable = false ,
pointable = false ,
diggable = false ,
buildable_to = true ,
drop = " " ,
2017-01-11 23:59:56 +00:00
drowning = 4 ,
2015-06-29 17:55:56 +00:00
liquidtype = " source " ,
2017-01-31 22:32:56 +00:00
liquid_alternative_flowing = " mcl_core:water_flowing " ,
liquid_alternative_source = " mcl_core:water_source " ,
2015-06-29 17:55:56 +00:00
liquid_viscosity = WATER_VISC ,
liquid_range = 7 ,
2017-01-31 22:32:56 +00:00
freezemelt = " mcl_core:ice " ,
2015-06-29 17:55:56 +00:00
post_effect_color = { a = 64 , r = 100 , g = 100 , b = 200 } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { water = 3 , liquid = 3 , puts_out_fire = 1 , freezes = 1 , not_in_creative_inventory = 1 } ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 500 ,
2017-03-01 17:49:47 +00:00
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = - 1 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:lava_flowing " , {
2015-06-29 17:55:56 +00:00
description = " Flowing Lava " ,
inventory_image = minetest.inventorycube ( " default_lava.png " ) ,
drawtype = " flowingliquid " ,
tiles = { " default_lava.png " } ,
special_tiles = {
{
image = " default_lava_flowing_animated.png " ,
backface_culling = false ,
animation = { type = " vertical_frames " , aspect_w = 64 , aspect_h = 64 , length = 3.3 }
} ,
{
image = " default_lava_flowing_animated.png " ,
backface_culling = true ,
animation = { type = " vertical_frames " , aspect_w = 64 , aspect_h = 64 , length = 3.3 }
} ,
} ,
paramtype = " light " ,
paramtype2 = " flowingliquid " ,
2017-02-01 21:12:08 +00:00
-- Real light level: 15 (but Minetest caps at 14)
2017-01-04 09:11:35 +00:00
light_source = 14 ,
2015-06-29 17:55:56 +00:00
walkable = false ,
pointable = false ,
diggable = false ,
buildable_to = true ,
drop = " " ,
2017-01-11 23:59:56 +00:00
--[[ Drowning in Minecraft deals 2 damage per second.
In Minetest , drowning damage is dealt every 2 seconds so this
translates to 4 drowning damage ] ]
drowning = 4 ,
2015-06-29 17:55:56 +00:00
liquidtype = " flowing " ,
2017-01-31 22:32:56 +00:00
liquid_alternative_flowing = " mcl_core:lava_flowing " ,
liquid_alternative_source = " mcl_core:lava_source " ,
2015-06-29 17:55:56 +00:00
liquid_viscosity = LAVA_VISC ,
liquid_renewable = false ,
2017-01-04 06:02:51 +00:00
liquid_range = 4 ,
2015-06-29 17:55:56 +00:00
damage_per_second = 4 * 2 ,
post_effect_color = { a = 192 , r = 255 , g = 64 , b = 0 } ,
2017-02-25 15:19:24 +00:00
groups = { lava = 3 , liquid = 2 , igniter = 3 , destroys_items = 1 , not_in_creative_inventory = 1 } ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 500 ,
2017-03-01 17:49:47 +00:00
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = - 1 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:lava_source " , {
2017-01-12 00:41:40 +00:00
description = " Still Lava " ,
2015-06-29 17:55:56 +00:00
inventory_image = minetest.inventorycube ( " default_lava.png " ) ,
drawtype = " liquid " ,
tiles = {
{ name = " default_lava_source_animated.png " , animation = { type = " vertical_frames " , aspect_w = 16 , aspect_h = 16 , length = 3.0 } }
} ,
special_tiles = {
-- New-style lava source material (mostly unused)
{
name = " default_lava_source_animated.png " ,
animation = { type = " vertical_frames " , aspect_w = 32 , aspect_h = 32 , length = 3.0 } ,
backface_culling = false ,
}
} ,
paramtype = " light " ,
2017-02-01 21:12:08 +00:00
-- Real light level: 15 (but Minetest caps at 14)
2017-01-04 09:11:35 +00:00
light_source = 14 ,
2015-06-29 17:55:56 +00:00
walkable = false ,
pointable = false ,
diggable = false ,
buildable_to = true ,
drop = " " ,
2017-01-11 23:59:56 +00:00
drowning = 4 ,
2015-06-29 17:55:56 +00:00
liquidtype = " source " ,
2017-01-31 22:32:56 +00:00
liquid_alternative_flowing = " mcl_core:lava_flowing " ,
liquid_alternative_source = " mcl_core:lava_source " ,
2015-06-29 17:55:56 +00:00
liquid_viscosity = LAVA_VISC ,
liquid_renewable = false ,
2017-01-04 06:02:51 +00:00
liquid_range = 4 ,
2015-06-29 17:55:56 +00:00
damage_per_second = 4 * 2 ,
post_effect_color = { a = 192 , r = 255 , g = 64 , b = 0 } ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { lava = 3 , liquid = 2 , igniter = 3 , destroys_items = 1 , not_in_creative_inventory = 1 } ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 500 ,
2017-03-01 17:49:47 +00:00
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = - 1 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:cobble " , {
2015-06-29 17:55:56 +00:00
description = " Cobblestone " ,
tiles = { " default_cobble.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , building_block = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:mossycobble " , {
2017-01-04 05:20:13 +00:00
description = " Moss Stone " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_mossycobble.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:coalblock " , {
2017-01-04 10:44:55 +00:00
description = " Block of Coal " ,
tiles = { " default_coal_block.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2017-01-04 10:44:55 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 1 , flammable = 1 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 5 ,
2017-01-04 10:44:55 +00:00
} )
2017-02-11 20:14:40 +00:00
minetest.register_node ( " mcl_core:ironblock " , {
2017-01-04 04:29:55 +00:00
description = " Block of Iron " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_steel_block.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 2 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:goldblock " , {
2017-01-04 05:20:13 +00:00
description = " Block of Gold " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_gold_block.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:diamondblock " , {
2017-01-04 05:20:13 +00:00
description = " Block of Diamond " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_diamond_block.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:lapisblock " , {
2017-02-08 23:10:37 +00:00
description = " Lapis Lazuli Block " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_lapis_block.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 3 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 15 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 3 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:emeraldblock " , {
2017-01-04 05:20:13 +00:00
description = " Block of Emerald " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_emerald_block.png " } ,
2017-01-04 21:36:51 +00:00
is_ground_content = false ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 4 , building_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 30 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:obsidian " , {
2015-06-29 17:55:56 +00:00
description = " Obsidian " ,
tiles = { " default_obsidian.png " } ,
is_ground_content = true ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2015-06-29 17:55:56 +00:00
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { pickaxey = 5 , building_block = 1 } ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 6000 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 50 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-11 20:00:42 +00:00
minetest.register_node ( " mcl_core:deadbush " , {
2017-01-04 07:01:40 +00:00
description = " Dead Bush " ,
2015-06-29 17:55:56 +00:00
drawtype = " plantlike " ,
visual_scale = 1.0 ,
tiles = { " default_dry_shrub.png " } ,
inventory_image = " default_dry_shrub.png " ,
wield_image = " default_dry_shrub.png " ,
paramtype = " light " ,
walkable = false ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , flammable = 3 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-01-04 07:01:40 +00:00
drop = {
max_items = 1 ,
items = {
{
2017-01-31 22:32:56 +00:00
items = { " mcl_core:stick 2 " } ,
2017-01-04 07:01:40 +00:00
rarity = 2 ,
} ,
{
2017-01-31 22:32:56 +00:00
items = { " mcl_core:stick 1 " } ,
2017-01-04 07:01:40 +00:00
rarity = 2 ,
} ,
}
} ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2015-06-29 17:55:56 +00:00
selection_box = {
type = " fixed " ,
fixed = { - 1 / 3 , - 1 / 2 , - 1 / 3 , 1 / 3 , 1 / 6 , 1 / 3 } ,
} ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-02-11 19:57:56 +00:00
minetest.register_node ( " mcl_core:tallgrass " , {
2017-01-04 07:01:40 +00:00
description = " Tall Grass " ,
2015-06-29 17:55:56 +00:00
drawtype = " plantlike " ,
tiles = { " default_tallgrass.png " } ,
inventory_image = " default_tallgrass.png " ,
wield_image = " default_tallgrass.png " ,
drop = {
max_items = 1 ,
items = {
{
2017-02-10 16:00:29 +00:00
items = { ' mcl_farming:wheat_seeds ' } ,
2017-02-01 20:19:30 +00:00
rarity = 8 ,
2015-06-29 17:55:56 +00:00
} ,
}
} ,
paramtype = " light " ,
walkable = false ,
buildable_to = true ,
is_ground_content = true ,
2017-02-25 15:19:24 +00:00
groups = { dig_immediate = 3 , flammable = 3 , attached_node = 1 , dig_by_water = 1 , deco_block = 1 } ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2015-06-29 17:55:56 +00:00
after_dig_node = function ( pos , oldnode , oldmetadata , user )
2017-03-07 23:33:05 +00:00
local item = user : get_wielded_item ( )
if item : get_name ( ) == " mcl_tools:shears " then
2017-03-07 23:37:07 +00:00
minetest.add_item ( pos , oldnode.name )
2015-06-29 17:55:56 +00:00
end
2017-02-22 14:40:22 +00:00
end ,
_mcl_blast_resistance = 0 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:ice " , {
2015-06-29 17:55:56 +00:00
description = " Ice " ,
drawtype = " glasslike " ,
tiles = { " default_ice.png " } ,
is_ground_content = true ,
paramtype = " light " ,
use_texture_alpha = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , pickaxey = 1 , building_block = 1 } ,
2017-01-04 07:01:40 +00:00
drop = " " ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:packed_ice " , {
2015-06-29 17:55:56 +00:00
description = " Packed Ice " ,
drawtype = " glasslike " ,
tiles = { " default_ice_packed.png " } ,
is_ground_content = true ,
paramtype = " light " ,
use_texture_alpha = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , pickaxey = 1 , building_block = 1 } ,
2017-01-04 07:01:40 +00:00
drop = " " ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-08 01:49:07 +00: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 ) )
if age == nil then return end
local nextnode
if age < 3 then
2017-01-31 22:32:56 +00:00
nextnode = " mcl_core:frosted_ice_ " .. ( age + 1 )
2017-01-08 01:49:07 +00:00
else
2017-01-31 22:32:56 +00:00
nextnode = " mcl_core:water_source "
2017-01-08 01:49:07 +00:00
end
minetest.swap_node ( pos , { name = nextnode } )
-- 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-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:frosted_ice_ " .. i , {
2017-01-08 01:49:07 +00:00
description = " Frosted Ice " ,
2017-03-02 18:53:53 +00:00
_doc_items_create_entry = i == 0 ,
2017-01-08 01:49:07 +00:00
drawtype = " glasslike " ,
tiles = { " default_frosted_ice_ " .. i .. " .png " } ,
is_ground_content = false ,
paramtype = " light " ,
use_texture_alpha = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { handy = 1 , frosted_ice = 1 , not_in_creative_inventory = 1 } ,
2017-01-08 01:49:07 +00:00
drop = " " ,
2017-02-11 17:46:23 +00:00
sounds = mcl_sounds.node_sound_glass_defaults ( ) ,
2017-01-08 01:49:07 +00: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 14:40:22 +00:00
_mcl_blast_resistance = 2.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.5 ,
2017-01-08 01:49:07 +00:00
} )
end
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:snow " , {
2017-01-04 10:26:35 +00:00
description = " Top Snow " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_snow.png " } ,
2017-03-02 15:38:56 +00:00
wield_image = " default_snow.png " ,
2017-03-02 16:03:14 +00:00
wield_scale = { x = 1 , y = 1 , z = 1 } ,
2015-06-29 17:55:56 +00:00
is_ground_content = true ,
paramtype = " light " ,
2017-03-02 16:31:21 +00:00
sunlight_propagates = true ,
2015-06-29 17:55:56 +00:00
buildable_to = true ,
drawtype = " nodebox " ,
2017-03-02 15:39:58 +00:00
stack_max = 64 ,
2017-03-02 16:33:50 +00:00
floodable = true ,
2015-06-29 17:55:56 +00:00
node_box = {
type = " fixed " ,
fixed = {
{ - 0.5 , - 0.5 , - 0.5 , 0.5 , - 0.5 + 2 / 16 , 0.5 } ,
} ,
} ,
2017-03-02 15:39:58 +00:00
groups = { shovely = 1 , attached_node = 1 , deco_block = 1 } ,
2017-02-19 18:48:16 +00:00
sounds = mcl_sounds.node_sound_snow_defaults ( ) ,
2017-01-16 22:11:04 +00:00
drop = " mcl_throwing:snowball 2 " ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 0.5 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.1 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:snowblock " , {
2017-01-04 05:20:13 +00:00
description = " Snow " ,
2015-06-29 17:55:56 +00:00
tiles = { " default_snow.png " } ,
is_ground_content = true ,
stack_max = 64 ,
2017-02-25 15:19:24 +00:00
groups = { shovely = 1 , building_block = 1 } ,
2017-02-19 18:48:16 +00:00
sounds = mcl_sounds.node_sound_snow_defaults ( ) ,
2017-01-16 22:11:04 +00:00
drop = " mcl_throwing:snowball 4 " ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 1 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 0.2 ,
2015-06-29 17:55:56 +00:00
} )
2017-01-31 22:32:56 +00:00
minetest.register_node ( " mcl_core:cobweb " , {
2015-06-29 17:55:56 +00:00
description = " Cobweb " ,
drawtype = " plantlike " ,
2017-01-20 17:56:38 +00:00
paramtype2 = " degrotate " ,
2015-06-29 17:55:56 +00:00
visual_scale = 1.1 ,
stack_max = 64 ,
2017-02-13 13:37:36 +00:00
tiles = { " mcl_core_web.png " } ,
inventory_image = " mcl_core_web.png " ,
2015-06-29 17:55:56 +00:00
paramtype = " light " ,
sunlight_propagates = true ,
liquid_viscosity = 14 ,
liquidtype = " source " ,
2017-01-31 22:32:56 +00:00
liquid_alternative_flowing = " mcl_core:cobweb " ,
liquid_alternative_source = " mcl_core:cobweb " ,
2015-06-29 17:55:56 +00:00
liquid_renewable = false ,
liquid_range = 0 ,
walkable = false ,
2017-02-27 18:38:48 +00:00
groups = { swordy_cobweb = 1 , shearsy = 1 , deco_block = 1 } ,
2017-02-01 16:59:15 +00:00
drop = " mcl_mobitems:string " ,
2017-02-22 14:40:22 +00:00
_mcl_blast_resistance = 20 ,
2017-02-24 14:56:46 +00:00
_mcl_hardness = 4 ,
2015-06-29 17:55:56 +00:00
} )