2022-05-26 19:47:35 +02:00
local modname = minetest.get_current_modname ( )
local S = minetest.get_translator ( modname )
local modpath = minetest.get_modpath ( modname )
-- Warped and Crimson fungus
-- by debiankaios
-- adapted for mcl2 by cora
2022-04-29 12:24:29 +02:00
2024-08-22 14:29:35 +02:00
local MAXIMUM_VINE_HEIGHT = 25
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
local wood_slab_groups = { handy = 1 , axey = 1 , material_wood = 1 , wood_slab = 1 }
local wood_stair_groups = { handy = 1 , axey = 1 , material_wood = 1 , wood_stairs = 1 }
2023-03-29 17:45:04 +02:00
2022-05-26 19:47:35 +02:00
local function generate_warped_tree ( pos )
2022-06-19 00:17:43 +02:00
minetest.place_schematic ( pos , modpath .. " /schematics/warped_fungus_1.mts " , " random " , nil , false , " place_center_x,place_center_z " )
2022-05-26 19:47:35 +02:00
end
2022-04-29 12:24:29 +02:00
2022-05-26 19:47:35 +02:00
function generate_crimson_tree ( pos )
2022-06-19 00:17:43 +02:00
minetest.place_schematic ( pos , modpath .. " /schematics/crimson_fungus_1.mts " , " random " , nil , false , " place_center_x,place_center_z " )
2022-05-26 19:47:35 +02:00
end
2022-04-29 12:24:29 +02:00
2024-08-22 14:29:35 +02:00
function grow_vines ( pos , moreontop , vine , dir )
-- Sanity checks
2022-09-15 04:31:35 +02:00
if dir == nil then dir = 1 end
2024-08-22 14:29:35 +02:00
if not moreontop or moreontop < 1 then return false end
2024-08-24 17:27:34 +02:00
local allowed_nodes = { }
allowed_nodes [ vine ] = true
2024-08-22 14:29:35 +02:00
-- Find the root, tip and calculate height
local root , _ , root_node = mcl_util.trace_nodes ( pos , - dir , allowed_nodes , MAXIMUM_VINE_HEIGHT )
if not root then return false end
local tip , height , tip_node = mcl_util.trace_nodes ( vector.offset ( root , 0 , dir , 0 ) , dir , allowed_nodes , MAXIMUM_VINE_HEIGHT )
if not tip then return false end
local res = false
for i = 1 , moreontop do
-- Check if we can grow into this position
if height >= MAXIMUM_VINE_HEIGHT then return res end
if tip_node.name ~= " air " then return res end
-- Update world map data
minetest.set_node ( tip , { name = vine } )
-- Move to the next position and flag that growth has occured
tip = vector.offset ( tip , 0 , dir , 0 )
tip_node = minetest.get_node ( tip )
height = height + 1
res = true
end
return res
2022-06-19 13:27:12 +02:00
end
2022-09-15 05:02:48 +02:00
local nether_plants = {
[ " mcl_crimson:crimson_nylium " ] = {
" mcl_crimson:crimson_roots " ,
" mcl_crimson:crimson_fungus " ,
" mcl_crimson:warped_fungus " ,
} ,
[ " mcl_crimson:warped_nylium " ] = {
" mcl_crimson:warped_roots " ,
" mcl_crimson:warped_fungus " ,
" mcl_crimson:twisting_vines " ,
" mcl_crimson:nether_sprouts " ,
} ,
}
local function has_nylium_neighbor ( pos )
local p = minetest.find_node_near ( pos , 1 , { " mcl_crimson:warped_nylium " , " mcl_crimson:crimson_nylium " } )
if p then
return minetest.get_node ( p )
end
end
local function spread_nether_plants ( pos , node )
local n = node.name
local nn = minetest.find_nodes_in_area_under_air ( vector.offset ( pos , - 5 , - 3 , - 5 ) , vector.offset ( pos , 5 , 3 , 5 ) , { n } )
table.shuffle ( nn )
nn [ 1 ] = pos
for i = 1 , math.random ( 1 , math.min ( # nn , 12 ) ) do
2022-09-19 14:19:49 +02:00
local p = vector.offset ( nn [ i ] , 0 , 1 , 0 )
if minetest.get_node ( p ) . name == " air " then
minetest.set_node ( p , { name = nether_plants [ n ] [ math.random ( # nether_plants [ n ] ) ] } )
mcl_dye.add_bone_meal_particle ( vector.offset ( nn [ i ] , 0 , 1 , 0 ) )
end
2022-09-15 05:02:48 +02:00
end
end
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_fungus " , {
2023-02-06 01:20:49 +01:00
description = S ( " Warped Fungus " ) ,
2023-02-06 18:45:54 +01:00
_tt_help = S ( " Warped fungus is a mushroom found in the nether's warped forest. " ) ,
_doc_items_longdesc = S ( " Warped fungus is a mushroom found in the nether's warped forest. " ) ,
2022-04-29 12:24:29 +02:00
drawtype = " plantlike " ,
2023-02-14 03:00:19 +01:00
tiles = { " mcl_crimson_warped_fungus.png " } ,
inventory_image = " mcl_crimson_warped_fungus.png " ,
wield_image = " mcl_crimson_warped_fungus.png " ,
2022-04-29 12:24:29 +02:00
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
2023-02-06 00:30:41 +01:00
groups = { dig_immediate = 3 , mushroom = 1 , attached_node = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , enderman_takable = 1 , deco_block = 1 , compostability = 65 } ,
2022-04-29 12:24:29 +02:00
light_source = 1 ,
2023-02-02 23:08:37 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2022-04-29 12:24:29 +02:00
node_placement_prediction = " " ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-03-19 08:57:58 +01:00
local pos = pointed_thing.under
local nodepos = minetest.get_node ( vector.offset ( pos , 0 , - 1 , 0 ) )
if nodepos.name == " mcl_crimson:warped_nylium " or nodepos.name == " mcl_nether:netherrack " then
local random = math.random ( 1 , 5 )
if random == 1 then
minetest.remove_node ( pos )
generate_warped_tree ( pos )
return true
2022-05-04 12:23:08 +02:00
end
2022-05-04 00:24:09 +02:00
end
2024-03-19 08:57:58 +01:00
return false
2022-05-04 00:24:09 +02:00
end ,
2022-04-29 12:24:29 +02:00
_mcl_blast_resistance = 0 ,
2021-07-19 10:11:16 +02:00
} )
2022-11-13 18:44:21 +01:00
mcl_flowerpots.register_potted_flower ( " mcl_crimson:warped_fungus " , {
2023-08-20 03:19:17 +02:00
name = " warped_fungus " ,
2023-02-06 01:20:49 +01:00
desc = S ( " Warped Fungus " ) ,
2023-02-14 03:00:19 +01:00
image = " mcl_crimson_warped_fungus.png " ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-04-19 01:27:08 +02:00
local n = has_nylium_neighbor ( pointed_thing.under )
2024-03-19 08:57:58 +01:00
if n then
2024-04-19 01:27:08 +02:00
minetest.set_node ( pointed_thing.under , n )
2024-03-19 08:57:58 +01:00
end
end ,
2022-11-13 18:44:21 +01:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:twisting_vines " , {
2022-05-04 00:24:09 +02:00
description = S ( " Twisting Vines " ) ,
2021-07-19 10:11:16 +02:00
drawtype = " plantlike " ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_twisting_vines_plant.png " } ,
inventory_image = " mcl_crimson_twisting_vines.png " ,
2021-07-19 10:11:16 +02:00
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
climbable = true ,
buildable_to = true ,
2023-02-06 00:40:12 +01:00
groups = { dig_immediate = 3 , shearsy = 1 , vines = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , deco_block = 1 , compostability = 50 } ,
2023-01-23 03:04:58 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2021-07-19 10:11:16 +02:00
selection_box = {
type = " fixed " ,
fixed = { - 3 / 16 , - 0.5 , - 3 / 16 , 3 / 16 , 0.5 , 3 / 16 } ,
} ,
node_placement_prediction = " " ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-03-21 19:11:36 +01:00
return grow_vines ( pointed_thing.under , math.random ( 1 , 3 ) , " mcl_crimson:twisting_vines " )
end ,
2022-11-28 11:43:09 +01:00
on_rightclick = function ( pos , node , clicker , itemstack , pointed_thing )
local pn = clicker : get_player_name ( )
2022-11-29 12:19:27 +01:00
if clicker : is_player ( ) and minetest.is_protected ( vector.offset ( pos , 0 , 1 , 0 ) , pn or " " ) then
2022-11-28 11:43:09 +01:00
minetest.record_protection_violation ( vector.offset ( pos , 0 , 1 , 0 ) , pn )
return itemstack
end
if clicker : get_wielded_item ( ) : get_name ( ) == " mcl_crimson:twisting_vines " then
2022-11-29 12:19:27 +01:00
if not minetest.is_creative_enabled ( clicker : get_player_name ( ) ) then
itemstack : take_item ( )
end
2022-09-15 04:31:35 +02:00
grow_vines ( pos , 1 , " mcl_crimson:twisting_vines " )
2023-02-02 23:30:15 +01:00
local idef = itemstack : get_definition ( )
local itemstack , success = minetest.item_place_node ( itemstack , placer , pointed_thing )
2023-02-02 23:08:37 +01:00
if success then
if idef.sounds and idef.sounds . place then
2023-01-23 17:55:18 +01:00
minetest.sound_play ( idef.sounds . place , { pos = above , gain = 1 } , true )
end
end
2022-12-22 22:44:21 +01:00
elseif clicker : get_wielded_item ( ) : get_name ( ) == " mcl_bone_meal:bone_meal " then
2024-08-19 04:31:01 +02:00
return mcl_bone_meal.use_bone_meal ( itemstack , clicker , { under = pos , above = pos } )
2022-05-04 12:23:08 +02:00
end
2022-11-28 11:43:09 +01:00
return itemstack
2021-07-19 10:11:16 +02:00
end ,
2024-01-21 07:28:41 +01:00
on_place = function ( itemstack , placer , pointed_thing )
local under = pointed_thing.under
local unode = minetest.get_node ( under )
2024-04-19 12:31:45 +02:00
local unode_def = minetest.registered_nodes [ unode.name ]
local above = pointed_thing.above
local anode = minetest.get_node ( above )
local anode_def = minetest.registered_nodes [ anode.name ]
2024-01-21 07:28:41 +01:00
if under.y < above.y then
minetest.set_node ( above , { name = " mcl_crimson:twisting_vines " } )
if not minetest.is_creative_enabled ( placer : get_player_name ( ) ) then
itemstack : take_item ( )
end
2024-04-19 12:31:45 +02:00
elseif unode_def and unode_def.on_rightclick then
return unode_def.on_rightclick ( under , unode , placer , itemstack , pointed_thing )
elseif anode_def and anode_def.on_rightclick then
return unode_def.on_rightclick ( above , anode , placer , itemstack , pointed_thing )
2024-01-21 07:28:41 +01:00
end
return itemstack
end ,
2023-01-24 18:15:22 +01:00
on_dig = function ( pos , node , digger )
2023-02-03 01:43:17 +01:00
local above = vector.offset ( pos , 0 , 1 , 0 )
2023-01-24 18:15:22 +01:00
local abovenode = minetest.get_node ( above )
minetest.node_dig ( pos , node , digger )
2024-08-25 01:07:27 +02:00
if abovenode.name == node.name then
2023-01-24 18:15:22 +01:00
minetest.registered_nodes [ node.name ] . on_dig ( above , node , digger )
end
2023-02-08 11:10:42 +01:00
end ,
2021-07-19 10:11:16 +02:00
drop = {
2022-05-04 12:23:08 +02:00
max_items = 1 ,
items = {
2022-05-04 00:12:53 +02:00
{ items = { " mcl_crimson:twisting_vines " } , rarity = 3 } ,
2022-05-04 12:23:08 +02:00
} ,
2021-07-19 10:11:16 +02:00
} ,
_mcl_shears_drop = true ,
_mcl_silk_touch_drop = true ,
2022-05-04 12:23:08 +02:00
_mcl_fortune_drop = {
items = {
{ items = { " mcl_crimson:twisting_vines " } , rarity = 3 } ,
} ,
items = {
{ items = { " mcl_crimson:twisting_vines " } , rarity = 1.8181818181818181 } ,
} ,
" mcl_crimson:twisting_vines " ,
" mcl_crimson:twisting_vines " ,
} ,
2023-09-19 23:26:32 +02:00
_mcl_blast_resistance = 0 ,
2021-07-19 10:11:16 +02:00
} )
2022-09-15 04:30:58 +02:00
minetest.register_node ( " mcl_crimson:weeping_vines " , {
description = S ( " Weeping Vines " ) ,
drawtype = " plantlike " ,
tiles = { " mcl_crimson_weeping_vines.png " } ,
inventory_image = " mcl_crimson_weeping_vines.png " ,
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
climbable = true ,
buildable_to = true ,
2023-02-06 00:40:12 +01:00
groups = { dig_immediate = 3 , shearsy = 1 , vines = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , deco_block = 1 , compostability = 50 } ,
2023-01-23 03:04:58 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2022-09-15 04:30:58 +02:00
selection_box = {
type = " fixed " ,
fixed = { - 3 / 16 , - 0.5 , - 3 / 16 , 3 / 16 , 0.5 , 3 / 16 } ,
} ,
node_placement_prediction = " " ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-08-19 04:31:01 +02:00
return grow_vines ( pointed_thing.under , math.random ( 1 , 3 ) , " mcl_crimson:weeping_vines " , - 1 )
2024-03-21 19:11:36 +01:00
end ,
2022-11-28 11:43:09 +01:00
on_rightclick = function ( pos , node , clicker , itemstack , pointed_thing )
local pn = clicker : get_player_name ( )
2022-11-29 12:19:27 +01:00
if clicker : is_player ( ) and minetest.is_protected ( vector.offset ( pos , 0 , 1 , 0 ) , pn or " " ) then
2022-11-28 11:43:09 +01:00
minetest.record_protection_violation ( vector.offset ( pos , 0 , 1 , 0 ) , pn )
return itemstack
end
if clicker : get_wielded_item ( ) : get_name ( ) == " mcl_crimson:weeping_vines " then
2022-11-29 12:19:27 +01:00
if not minetest.is_creative_enabled ( clicker : get_player_name ( ) ) then
itemstack : take_item ( )
end
2022-09-15 04:30:58 +02:00
grow_vines ( pos , 1 , " mcl_crimson:weeping_vines " , - 1 )
2023-02-02 23:30:15 +01:00
local idef = itemstack : get_definition ( )
local itemstack , success = minetest.item_place_node ( itemstack , placer , pointed_thing )
2023-02-02 23:08:37 +01:00
if success then
if idef.sounds and idef.sounds . place then
2023-01-23 17:55:18 +01:00
minetest.sound_play ( idef.sounds . place , { pos = above , gain = 1 } , true )
end
end
2022-12-22 22:44:21 +01:00
elseif clicker : get_wielded_item ( ) : get_name ( ) == " mcl_bone_meal:bone_meal " then
2024-08-19 04:31:01 +02:00
return mcl_bone_meal.use_bone_meal ( itemstack , clicker , { under = pos , above = pos } )
2022-09-15 04:30:58 +02:00
end
2022-11-28 11:43:09 +01:00
return itemstack
2022-09-15 04:30:58 +02:00
end ,
2024-01-21 07:28:41 +01:00
on_place = function ( itemstack , placer , pointed_thing )
local under = pointed_thing.under
local unode = minetest.get_node ( under )
2024-04-19 12:31:45 +02:00
local unode_def = minetest.registered_nodes [ unode.name ]
local above = pointed_thing.above
local anode = minetest.get_node ( above )
local anode_def = minetest.registered_nodes [ anode.name ]
2024-01-21 07:28:41 +01:00
if under.y > above.y then
minetest.set_node ( above , { name = " mcl_crimson:weeping_vines " } )
if not minetest.is_creative_enabled ( placer : get_player_name ( ) ) then
itemstack : take_item ( )
end
2024-04-19 12:31:45 +02:00
elseif unode_def and unode_def.on_rightclick then
return unode_def.on_rightclick ( under , unode , placer , itemstack , pointed_thing )
elseif anode_def and anode_def.on_rightclick then
return unode_def.on_rightclick ( above , anode , placer , itemstack , pointed_thing )
2024-01-21 07:28:41 +01:00
end
return itemstack
end ,
2023-01-24 18:15:22 +01:00
on_dig = function ( pos , node , digger )
2023-02-03 01:43:17 +01:00
local below = vector.offset ( pos , 0 , - 1 , 0 )
2023-01-24 18:15:22 +01:00
local belownode = minetest.get_node ( below )
minetest.node_dig ( pos , node , digger )
2024-08-25 01:07:27 +02:00
if belownode.name == node.name then
2023-01-24 18:15:22 +01:00
minetest.registered_nodes [ node.name ] . on_dig ( below , node , digger )
end
2023-02-08 11:10:42 +01:00
end ,
2022-09-15 04:30:58 +02:00
drop = {
max_items = 1 ,
items = {
{ items = { " mcl_crimson:weeping_vines " } , rarity = 3 } ,
} ,
} ,
_mcl_shears_drop = true ,
_mcl_silk_touch_drop = true ,
_mcl_fortune_drop = {
items = {
{ items = { " mcl_crimson:weeping_vines " } , rarity = 3 } ,
} ,
items = {
{ items = { " mcl_crimson:weeping_vines " } , rarity = 1.8181818181818181 } ,
} ,
" mcl_crimson:weeping_vines " ,
" mcl_crimson:weeping_vines " ,
} ,
2023-09-19 23:26:32 +02:00
_mcl_blast_resistance = 0 ,
2022-09-15 04:30:58 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:nether_sprouts " , {
2022-05-04 00:24:09 +02:00
description = S ( " Nether Sprouts " ) ,
2021-07-19 10:11:16 +02:00
drawtype = " plantlike " ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_nether_sprouts.png " } ,
inventory_image = " mcl_crimson_nether_sprouts.png " ,
2021-07-19 10:11:16 +02:00
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
buildable_to = true ,
2023-02-06 00:48:50 +01:00
groups = { dig_immediate = 3 , vines = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , deco_block = 1 , shearsy = 1 , compostability = 50 } ,
2023-01-24 17:24:35 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2021-07-19 10:11:16 +02:00
selection_box = {
type = " fixed " ,
fixed = { - 4 / 16 , - 0.5 , - 4 / 16 , 4 / 16 , 0 , 4 / 16 } ,
} ,
node_placement_prediction = " " ,
drop = " " ,
_mcl_shears_drop = true ,
_mcl_silk_touch_drop = false ,
2022-05-04 00:24:09 +02:00
_mcl_blast_resistance = 0 ,
2021-07-19 10:11:16 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_roots " , {
2022-05-04 00:24:09 +02:00
description = S ( " Warped Roots " ) ,
2021-07-19 10:11:16 +02:00
drawtype = " plantlike " ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_warped_roots.png " } ,
2023-02-09 01:41:07 +01:00
inventory_image = " mcl_crimson_warped_roots.png " ,
2021-07-19 10:11:16 +02:00
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
buildable_to = true ,
2023-02-06 00:45:37 +01:00
groups = { dig_immediate = 3 , vines = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , deco_block = 1 , shearsy = 1 , compostability = 65 } ,
2023-01-24 17:24:35 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2021-07-19 10:11:16 +02:00
selection_box = {
type = " fixed " ,
fixed = { - 6 / 16 , - 0.5 , - 6 / 16 , 6 / 16 , - 4 / 16 , 6 / 16 } ,
} ,
node_placement_prediction = " " ,
_mcl_silk_touch_drop = false ,
2022-05-04 00:24:09 +02:00
_mcl_blast_resistance = 0 ,
2022-04-29 12:24:29 +02:00
} )
2022-11-13 18:44:21 +01:00
mcl_flowerpots.register_potted_flower ( " mcl_crimson:warped_roots " , {
2023-08-20 03:19:17 +02:00
name = " warped_roots " ,
2022-11-13 18:44:21 +01:00
desc = S ( " Warped Roots " ) ,
2023-02-09 01:41:07 +01:00
image = " mcl_crimson_warped_roots.png " ,
2022-11-13 18:44:21 +01:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_wart_block " , {
2022-05-04 00:24:09 +02:00
description = S ( " Warped Wart Block " ) ,
2023-02-20 09:10:00 +01:00
tiles = { " mcl_crimson_warped_wart_block.png " } ,
2023-02-06 01:01:10 +01:00
groups = { handy = 1 , hoey = 7 , swordy = 1 , deco_block = 1 , compostability = 85 } ,
2023-02-02 23:36:33 +01:00
_mcl_hardness = 1 ,
sounds = mcl_sounds.node_sound_leaves_defaults ( {
2023-01-23 03:04:58 +01:00
footstep = { name = " default_dirt_footstep " , gain = 0.7 } ,
dug = { name = " default_dirt_footstep " , gain = 1.5 } ,
2023-02-02 23:42:44 +01:00
} ) ,
2022-04-29 12:24:29 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:shroomlight " , {
2022-05-04 00:24:09 +02:00
description = S ( " Shroomlight " ) ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_shroomlight.png " } ,
2023-02-06 01:01:10 +01:00
groups = { handy = 1 , hoey = 7 , swordy = 1 , deco_block = 1 , compostability = 65 } ,
2022-06-17 15:54:36 +02:00
light_source = minetest.LIGHT_MAX ,
2023-02-02 23:36:33 +01:00
_mcl_hardness = 1 ,
sounds = mcl_sounds.node_sound_leaves_defaults ( {
2023-01-23 03:04:58 +01:00
footstep = { name = " default_dirt_footstep " , gain = 0.7 } ,
dug = { name = " default_dirt_footstep " , gain = 1.5 } ,
2023-02-02 23:42:44 +01:00
} ) ,
2022-04-29 12:24:29 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_hyphae " , {
2022-04-20 02:29:44 +02:00
description = S ( " Warped Hyphae " ) ,
_doc_items_longdesc = S ( " The stem of a warped hyphae " ) ,
_doc_items_hidden = false ,
tiles = {
2023-02-08 11:10:42 +01:00
" mcl_crimson_warped_hyphae.png " ,
" mcl_crimson_warped_hyphae.png " ,
2022-12-14 15:25:43 +01:00
{
2023-03-24 19:26:40 +01:00
name = " mcl_crimson_warped_hyphae_side.png " ,
2022-12-14 15:25:43 +01:00
animation = { type = " vertical_frames " , aspect_w = 16 , aspect_h = 16 , length = 2.0 }
} ,
2022-05-04 00:24:09 +02:00
} ,
2022-04-20 02:29:44 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
2022-05-04 12:23:08 +02:00
groups = { handy = 1 , axey = 1 , tree = 1 , building_block = 1 , material_wood = 1 } ,
2022-04-20 02:29:44 +02:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
2022-05-04 00:12:53 +02:00
_mcl_stripped_variant = " mcl_crimson:stripped_warped_hyphae " ,
2022-04-29 12:24:29 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_nylium " , {
2022-05-04 00:24:09 +02:00
description = S ( " Warped Nylium " ) ,
2022-05-04 12:23:08 +02:00
tiles = {
2023-02-08 11:10:42 +01:00
" mcl_crimson_warped_nylium.png " ,
2022-05-04 12:23:08 +02:00
" mcl_nether_netherrack.png " ,
2023-02-08 11:10:42 +01:00
" mcl_nether_netherrack.png^mcl_crimson_warped_nylium_side.png " ,
" mcl_nether_netherrack.png^mcl_crimson_warped_nylium_side.png " ,
" mcl_nether_netherrack.png^mcl_crimson_warped_nylium_side.png " ,
" mcl_nether_netherrack.png^mcl_crimson_warped_nylium_side.png " ,
2022-05-04 12:23:08 +02:00
} ,
2022-05-04 00:24:09 +02:00
is_ground_content = true ,
drop = " mcl_nether:netherrack " ,
2022-05-04 12:23:08 +02:00
groups = { pickaxey = 1 , building_block = 1 , material_stone = 1 } ,
2022-12-08 12:09:30 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2022-05-04 12:23:08 +02:00
_mcl_hardness = 0.4 ,
_mcl_blast_resistance = 0.4 ,
2022-05-04 00:24:09 +02:00
_mcl_silk_touch_drop = true ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-04-19 01:27:08 +02:00
local node = minetest.get_node ( pointed_thing.under )
2024-04-19 01:28:58 +02:00
spread_nether_plants ( pointed_thing.under , node )
2024-03-19 08:57:58 +01:00
return true
end ,
2022-04-29 12:24:29 +02:00
} )
2022-04-19 23:11:01 +02:00
--Stem bark, stripped stem and bark
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_hyphae_bark " , {
2022-05-04 12:23:08 +02:00
description = S ( " Warped Hyphae Bark " ) ,
_doc_items_longdesc = S ( " This is a decorative block surrounded by the bark of an hyphae. " ) ,
2022-12-14 15:25:43 +01:00
tiles = {
{
2023-03-24 19:26:40 +01:00
name = " mcl_crimson_warped_hyphae_side.png " ,
2022-12-14 15:25:43 +01:00
animation = { type = " vertical_frames " , aspect_w = 16 , aspect_h = 16 , length = 2.0 }
} ,
} ,
2022-05-04 12:23:08 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
groups = { handy = 1 , axey = 1 , bark = 1 , building_block = 1 , material_wood = 1 } ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
is_ground_content = false ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
_mcl_stripped_variant = " mcl_crimson:stripped_warped_hyphae_bark " ,
} )
2022-04-19 23:11:01 +02:00
minetest.register_craft ( {
2022-05-04 12:23:08 +02:00
output = " mcl_crimson:warped_hyphae_bark 3 " ,
recipe = {
{ " mcl_crimson:warped_hyphae " , " mcl_crimson:warped_hyphae " } ,
{ " mcl_crimson:warped_hyphae " , " mcl_crimson:warped_hyphae " } ,
} ,
} )
2022-04-19 23:11:01 +02:00
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:stripped_warped_hyphae " , {
2022-11-05 02:12:46 +01:00
description = S ( " Stripped Warped Hyphae " ) ,
2022-06-18 01:48:33 +02:00
_doc_items_longdesc = S ( " The stripped hyphae of a warped fungus " ) ,
2022-05-04 12:23:08 +02:00
_doc_items_hidden = false ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_warped_stem_stripped_top.png " , " mcl_crimson_warped_stem_stripped_top.png " , " mcl_crimson_warped_stem_stripped_side.png " } ,
2022-05-04 12:23:08 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
groups = { handy = 1 , axey = 1 , tree = 1 , building_block = 1 , material_wood = 1 } ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
} )
2022-04-19 23:11:01 +02:00
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:stripped_warped_hyphae_bark " , {
2022-11-05 02:12:46 +01:00
description = S ( " Stripped Warped Hyphae Bark " ) ,
2022-06-18 01:48:33 +02:00
_doc_items_longdesc = S ( " The stripped hyphae bark of a warped fungus " ) ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_warped_stem_stripped_side.png " } ,
2022-05-04 12:23:08 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
groups = { handy = 1 , axey = 1 , bark = 1 , building_block = 1 , material_wood = 1 } ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
is_ground_content = false ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
} )
2022-04-19 23:11:01 +02:00
minetest.register_craft ( {
2022-05-04 12:23:08 +02:00
output = " mcl_crimson:stripped_warped_hyphae_bark 3 " ,
recipe = {
{ " mcl_crimson:stripped_warped_hyphae " , " mcl_crimson:stripped_warped_hyphae " } ,
{ " mcl_crimson:stripped_warped_hyphae " , " mcl_crimson:stripped_warped_hyphae " } ,
} ,
} )
2022-04-19 23:11:01 +02:00
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:warped_hyphae_wood " , {
2022-05-04 00:24:09 +02:00
description = S ( " Warped Hyphae Wood " ) ,
2023-02-08 11:10:42 +01:00
tiles = { " mcl_crimson_warped_hyphae_wood.png " } ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
groups = { handy = 5 , axey = 1 , wood = 1 , building_block = 1 , material_wood = 1 } ,
2022-11-26 12:54:34 +01:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2024-06-09 23:38:20 +02:00
_mcl_blast_resistance = 3 ,
2022-05-04 00:24:09 +02:00
_mcl_hardness = 2 ,
2022-04-29 12:24:29 +02:00
} )
2023-03-29 17:45:04 +02:00
mcl_stairs.register_stair ( " warped_hyphae_wood " , " mcl_crimson:warped_hyphae_wood " , wood_stair_groups , false , S ( " Warped Stair " ) )
mcl_stairs.register_slab ( " warped_hyphae_wood " , " mcl_crimson:warped_hyphae_wood " , wood_slab_groups , false , S ( " Warped Slab " ) )
2022-04-29 12:24:29 +02:00
minetest.register_craft ( {
2022-05-04 00:24:09 +02:00
output = " mcl_crimson:warped_hyphae_wood 4 " ,
recipe = {
2022-05-04 12:23:08 +02:00
{ " mcl_crimson:warped_hyphae " } ,
} ,
2022-04-29 12:24:29 +02:00
} )
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
minetest.register_craft ( {
output = " mcl_crimson:warped_hyphae_wood 4 " ,
recipe = {
{ " mcl_crimson:warped_hyphae_bark " } ,
} ,
} )
minetest.register_craft ( {
output = " mcl_crimson:warped_hyphae_wood 4 " ,
recipe = {
{ " mcl_crimson:stripped_warped_hyphae " } ,
} ,
} )
minetest.register_craft ( {
output = " mcl_crimson:warped_hyphae_wood 4 " ,
recipe = {
{ " mcl_crimson:stripped_warped_hyphae_bark " } ,
} ,
} )
2022-04-29 12:24:29 +02:00
minetest.register_craft ( {
2022-06-18 01:48:33 +02:00
output = " mcl_crimson:warped_nylium 2 " ,
2022-05-04 00:24:09 +02:00
recipe = {
2022-05-04 12:23:08 +02:00
{ " mcl_crimson:warped_wart_block " } ,
{ " mcl_nether:netherrack " } ,
} ,
2022-04-29 12:24:29 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:crimson_fungus " , {
2023-02-06 01:20:49 +01:00
description = S ( " Crimson Fungus " ) ,
2023-02-06 18:45:54 +01:00
_tt_help = S ( " Crimson fungus is a mushroom found in the nether's crimson forest. " ) ,
_doc_items_longdesc = S ( " Crimson fungus is a mushroom found in the nether's crimson forest. " ) ,
2022-04-29 12:24:29 +02:00
drawtype = " plantlike " ,
2023-02-14 03:00:19 +01:00
tiles = { " mcl_crimson_crimson_fungus.png " } ,
inventory_image = " mcl_crimson_crimson_fungus.png " ,
wield_image = " mcl_crimson_crimson_fungus.png " ,
2022-04-29 12:24:29 +02:00
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
2023-02-06 00:30:41 +01:00
groups = { dig_immediate = 3 , mushroom = 1 , attached_node = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , enderman_takable = 1 , deco_block = 1 , compostability = 65 } ,
2022-04-29 12:24:29 +02:00
light_source = 1 ,
2023-01-24 17:24:35 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2022-04-29 12:24:29 +02:00
selection_box = {
type = " fixed " ,
fixed = { - 3 / 16 , - 0.5 , - 3 / 16 , 3 / 16 , - 2 / 16 , 3 / 16 } ,
} ,
node_placement_prediction = " " ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-03-19 08:57:58 +01:00
local pos = pointed_thing.under
local nodepos = minetest.get_node ( vector.offset ( pos , 0 , - 1 , 0 ) )
if nodepos.name == " mcl_crimson:crimson_nylium " or nodepos.name == " mcl_nether:netherrack " then
local random = math.random ( 1 , 5 )
if random == 1 then
minetest.remove_node ( pos )
generate_crimson_tree ( pos )
return true
2022-05-04 12:23:08 +02:00
end
2022-05-04 00:24:09 +02:00
end
2024-03-19 08:57:58 +01:00
-- Failed to spread nylium
return false
2022-05-04 00:24:09 +02:00
end ,
2022-04-29 12:24:29 +02:00
_mcl_blast_resistance = 0 ,
} )
2022-11-13 18:44:21 +01:00
mcl_flowerpots.register_potted_flower ( " mcl_crimson:crimson_fungus " , {
2023-08-20 03:19:17 +02:00
name = " crimson_fungus " ,
2023-02-06 01:20:49 +01:00
desc = S ( " Crimson Fungus " ) ,
2023-02-14 03:00:19 +01:00
image = " mcl_crimson_crimson_fungus.png " ,
2022-11-13 18:44:21 +01:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:crimson_roots " , {
2022-05-04 00:24:09 +02:00
description = S ( " Crimson Roots " ) ,
2021-07-19 10:11:16 +02:00
drawtype = " plantlike " ,
2023-02-14 02:42:05 +01:00
tiles = { " mcl_crimson_crimson_roots.png " } ,
inventory_image = " mcl_crimson_crimson_roots.png " ,
2021-07-19 10:11:16 +02:00
sunlight_propagates = true ,
paramtype = " light " ,
walkable = false ,
buildable_to = true ,
2023-02-06 00:45:37 +01:00
groups = { dig_immediate = 3 , vines = 1 , dig_by_water = 1 , destroy_by_lava_flow = 1 , dig_by_piston = 1 , deco_block = 1 , shearsy = 1 , compostability = 65 } ,
2023-01-24 17:24:35 +01:00
sounds = mcl_sounds.node_sound_leaves_defaults ( ) ,
2021-07-19 10:11:16 +02:00
selection_box = {
type = " fixed " ,
fixed = { - 6 / 16 , - 0.5 , - 6 / 16 , 6 / 16 , - 4 / 16 , 6 / 16 } ,
} ,
node_placement_prediction = " " ,
_mcl_silk_touch_drop = false ,
2022-05-04 00:24:09 +02:00
_mcl_blast_resistance = 0 ,
2021-07-19 10:11:16 +02:00
} )
2022-11-13 18:44:21 +01:00
mcl_flowerpots.register_potted_flower ( " mcl_crimson:crimson_roots " , {
2023-08-20 03:19:17 +02:00
name = " crimson_roots " ,
2022-11-13 18:44:21 +01:00
desc = S ( " Crimson Roots " ) ,
2023-02-14 02:42:05 +01:00
image = " mcl_crimson_crimson_roots.png " ,
2022-11-13 18:44:21 +01:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:crimson_hyphae " , {
2022-04-20 02:29:44 +02:00
description = S ( " Crimson Hyphae " ) ,
_doc_items_longdesc = S ( " The stem of a crimson hyphae " ) ,
_doc_items_hidden = false ,
tiles = {
2023-02-14 05:23:04 +01:00
" mcl_crimson_crimson_hyphae.png " ,
" mcl_crimson_crimson_hyphae.png " ,
2022-12-14 15:25:43 +01:00
{
2023-03-24 19:26:40 +01:00
name = " mcl_crimson_crimson_hyphae_side.png " ,
2022-12-14 15:25:43 +01:00
animation = { type = " vertical_frames " , aspect_w = 16 , aspect_h = 16 , length = 2.0 }
} ,
2022-05-04 00:24:09 +02:00
} ,
2022-04-20 02:29:44 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
2022-05-04 12:23:08 +02:00
groups = { handy = 1 , axey = 1 , tree = 1 , building_block = 1 , material_wood = 1 } ,
2022-04-20 02:29:44 +02:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
2022-06-18 14:28:05 +02:00
_mcl_stripped_variant = " mcl_crimson:stripped_crimson_hyphae " ,
2022-04-29 12:24:29 +02:00
} )
2022-04-19 23:11:01 +02:00
--Stem bark, stripped stem and bark
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:crimson_hyphae_bark " , {
2022-05-04 12:23:08 +02:00
description = S ( " Crimson Hyphae Bark " ) ,
_doc_items_longdesc = S ( " This is a decorative block surrounded by the bark of an hyphae. " ) ,
2022-12-14 15:25:43 +01:00
tiles = {
{
2023-03-24 19:26:40 +01:00
name = " mcl_crimson_crimson_hyphae_side.png " ,
2022-12-14 15:25:43 +01:00
animation = { type = " vertical_frames " , aspect_w = 16 , aspect_h = 16 , length = 2.0 }
} ,
} ,
2022-05-04 12:23:08 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
groups = { handy = 1 , axey = 1 , bark = 1 , building_block = 1 , material_wood = 1 } ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
is_ground_content = false ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
_mcl_stripped_variant = " mcl_crimson:stripped_crimson_hyphae_bark " ,
} )
2022-04-19 23:11:01 +02:00
minetest.register_craft ( {
2022-05-04 12:23:08 +02:00
output = " mcl_crimson:crimson_hyphae_bark 3 " ,
recipe = {
{ " mcl_crimson:crimson_hyphae " , " mcl_crimson:crimson_hyphae " } ,
{ " mcl_crimson:crimson_hyphae " , " mcl_crimson:crimson_hyphae " } ,
} ,
} )
2022-04-19 23:11:01 +02:00
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:stripped_crimson_hyphae " , {
2022-05-04 12:23:08 +02:00
description = S ( " Stripped Crimson Hyphae " ) ,
_doc_items_longdesc = S ( " The stripped stem of a crimson hyphae " ) ,
_doc_items_hidden = false ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_crimson_stem_stripped_top.png " , " mcl_crimson_crimson_stem_stripped_top.png " , " mcl_crimson_crimson_stem_stripped_side.png " } ,
2022-05-04 12:23:08 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
groups = { handy = 1 , axey = 1 , tree = 1 , building_block = 1 , material_wood = 1 } ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
} )
2022-04-19 23:11:01 +02:00
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:stripped_crimson_hyphae_bark " , {
2022-05-04 12:23:08 +02:00
description = S ( " Stripped Crimson Hyphae Bark " ) ,
_doc_items_longdesc = S ( " The stripped wood of a crimson hyphae " ) ,
2023-02-08 12:06:59 +01:00
tiles = { " mcl_crimson_crimson_stem_stripped_side.png " } ,
2022-05-04 12:23:08 +02:00
paramtype2 = " facedir " ,
on_place = mcl_util.rotate_axis ,
groups = { handy = 1 , axey = 1 , bark = 1 , building_block = 1 , material_wood = 1 } ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
is_ground_content = false ,
_mcl_blast_resistance = 2 ,
_mcl_hardness = 2 ,
} )
2022-04-19 23:11:01 +02:00
minetest.register_craft ( {
2022-05-04 12:23:08 +02:00
output = " mcl_crimson:stripped_crimson_hyphae_bark 3 " ,
recipe = {
{ " mcl_crimson:stripped_crimson_hyphae " , " mcl_crimson:stripped_crimson_hyphae " } ,
{ " mcl_crimson:stripped_crimson_hyphae " , " mcl_crimson:stripped_crimson_hyphae " } ,
} ,
} )
2022-04-19 23:11:01 +02:00
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:crimson_hyphae_wood " , {
2022-05-04 00:24:09 +02:00
description = S ( " Crimson Hyphae Wood " ) ,
2023-02-15 17:23:08 +01:00
tiles = { " mcl_crimson_crimson_hyphae_wood.png " } ,
2022-05-04 12:23:08 +02:00
groups = { handy = 5 , axey = 1 , wood = 1 , building_block = 1 , material_wood = 1 } ,
2022-11-26 12:54:34 +01:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
2024-06-09 23:38:20 +02:00
_mcl_blast_resistance = 3 ,
2022-05-04 00:24:09 +02:00
_mcl_hardness = 2 ,
2022-04-29 12:24:29 +02:00
} )
2022-05-04 00:12:53 +02:00
minetest.register_node ( " mcl_crimson:crimson_nylium " , {
2022-05-04 00:24:09 +02:00
description = S ( " Crimson Nylium " ) ,
2022-05-04 12:23:08 +02:00
tiles = {
2023-02-14 05:23:04 +01:00
" mcl_crimson_crimson_nylium.png " ,
2022-05-04 12:23:08 +02:00
" mcl_nether_netherrack.png " ,
2023-02-14 05:23:04 +01:00
" mcl_nether_netherrack.png^mcl_crimson_crimson_nylium_side.png " ,
" mcl_nether_netherrack.png^mcl_crimson_crimson_nylium_side.png " ,
" mcl_nether_netherrack.png^mcl_crimson_crimson_nylium_side.png " ,
" mcl_nether_netherrack.png^mcl_crimson_crimson_nylium_side.png " ,
2022-05-04 12:23:08 +02:00
} ,
groups = { pickaxey = 1 , building_block = 1 , material_stone = 1 } ,
2022-12-08 12:09:30 +01:00
sounds = mcl_sounds.node_sound_stone_defaults ( ) ,
2022-05-04 00:24:09 +02:00
is_ground_content = true ,
drop = " mcl_nether:netherrack " ,
2022-05-04 12:23:08 +02:00
_mcl_hardness = 0.4 ,
_mcl_blast_resistance = 0.4 ,
2022-05-04 00:24:09 +02:00
_mcl_silk_touch_drop = true ,
2024-03-23 17:44:41 +01:00
_on_bone_meal = function ( itemstack , placer , pointed_thing )
2024-04-19 01:27:08 +02:00
local node = minetest.get_node ( pointed_thing.under )
spread_nether_plants ( pointed_thing.under , node )
2024-03-19 08:57:58 +01:00
return true
end ,
2022-04-29 12:24:29 +02:00
} )
minetest.register_craft ( {
2022-05-04 00:24:09 +02:00
output = " mcl_crimson:crimson_hyphae_wood 4 " ,
recipe = {
2022-05-04 12:23:08 +02:00
{ " mcl_crimson:crimson_hyphae " } ,
} ,
2022-04-29 12:24:29 +02:00
} )
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
minetest.register_craft ( {
output = " mcl_crimson:crimson_hyphae_wood 4 " ,
recipe = {
{ " mcl_crimson:crimson_hyphae_bark " } ,
} ,
} )
minetest.register_craft ( {
output = " mcl_crimson:crimson_hyphae_wood 4 " ,
recipe = {
{ " mcl_crimson:stripped_crimson_hyphae " } ,
} ,
} )
minetest.register_craft ( {
output = " mcl_crimson:crimson_hyphae_wood 4 " ,
recipe = {
{ " mcl_crimson:stripped_crimson_hyphae_bark " } ,
} ,
} )
2022-04-29 12:24:29 +02:00
minetest.register_craft ( {
2022-06-18 01:48:33 +02:00
output = " mcl_crimson:crimson_nylium 2 " ,
2022-05-04 00:24:09 +02:00
recipe = {
2022-05-04 12:23:08 +02:00
{ " mcl_nether:nether_wart " } ,
{ " mcl_nether:netherrack " } ,
} ,
2022-04-29 12:24:29 +02:00
} )
2023-03-29 17:45:04 +02:00
mcl_stairs.register_stair ( " crimson_hyphae_wood " , " mcl_crimson:crimson_hyphae_wood " , wood_stair_groups , false , S ( " Crimson Stair " ) )
mcl_stairs.register_slab ( " crimson_hyphae_wood " , " mcl_crimson:crimson_hyphae_wood " , wood_slab_groups , false , S ( " Crimson Slab " ) )
2022-04-29 12:24:29 +02:00
2024-01-06 13:18:20 +01:00
minetest.register_abm ( {
label = " Turn Crimson Nylium and Warped Nylium below solid block into Netherrack " ,
nodenames = { " mcl_crimson:crimson_nylium " , " mcl_crimson:warped_nylium " } ,
neighbors = { " group:solid " } ,
interval = 8 ,
chance = 50 ,
action = function ( pos , node )
local above = { x = pos.x , y = pos.y + 1 , z = pos.z }
local name = minetest.get_node ( above ) . name
local nodedef = minetest.registered_nodes [ name ]
if name ~= " ignore " and nodedef and ( nodedef.groups and nodedef.groups . solid ) then
minetest.set_node ( pos , { name = " mcl_nether:netherrack " } )
end
end
} )
2022-11-03 14:28:52 +01:00
mcl_doors : register_door ( " mcl_crimson:crimson_door " , {
description = S ( " Crimson Door " ) ,
_doc_items_longdesc = S ( " Wooden doors are 2-block high barriers which can be opened or closed by hand and by a redstone signal. " ) ,
_doc_items_usagehelp = S ( " To open or close a wooden door, rightclick it or supply its lower half with a redstone signal. " ) ,
inventory_image = " mcl_crimson_crimson_door.png " ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
groups = { handy = 1 , axey = 1 , material_wood = 1 } ,
2022-11-03 14:28:52 +01:00
_mcl_hardness = 3 ,
_mcl_blast_resistance = 3 ,
2023-06-13 17:43:52 +02:00
tiles_bottom = " mcl_crimson_crimson_door_bottom.png " ,
tiles_top = " mcl_crimson_crimson_door_top.png " ,
2022-11-03 14:28:52 +01:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
} )
mcl_doors : register_trapdoor ( " mcl_crimson:crimson_trapdoor " , {
description = S ( " Crimson Trapdoor " ) ,
_doc_items_longdesc = S ( " Wooden trapdoors are horizontal barriers which can be opened and closed by hand or a redstone signal. They occupy the upper or lower part of a block, depending on how they have been placed. When open, they can be climbed like a ladder. " ) ,
_doc_items_usagehelp = S ( " To open or close the trapdoor, rightclick it or send a redstone signal to it. " ) ,
tile_front = " mcl_crimson_crimson_trapdoor.png " ,
2023-07-22 22:50:07 +02:00
tile_side = " mcl_crimson_crimson_trapdoor_side.png " ,
2022-11-03 14:28:52 +01:00
wield_image = " mcl_crimson_crimson_trapdoor.png " ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
groups = { handy = 1 , axey = 1 , mesecon_effector_on = 1 , material_wood = 1 } ,
2022-11-03 14:28:52 +01:00
_mcl_hardness = 3 ,
_mcl_blast_resistance = 3 ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
} )
2022-11-03 22:08:15 +01:00
mcl_fences.register_fence_and_fence_gate (
" crimson_fence " ,
S ( " Crimson Fence " ) ,
S ( " Crimson Fence Gate " ) ,
" mcl_crimson_crimson_fence.png " ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
{ handy = 1 , axey = 1 , fence_wood = 1 } ,
2022-11-03 22:08:15 +01:00
minetest.registered_nodes [ " mcl_crimson:crimson_hyphae " ] . _mcl_hardness ,
minetest.registered_nodes [ " mcl_crimson:crimson_hyphae " ] . _mcl_blast_resistance ,
{ " group:fence_wood " } ,
mcl_sounds.node_sound_wood_defaults ( ) )
2022-11-03 14:28:52 +01:00
mcl_doors : register_door ( " mcl_crimson:warped_door " , {
description = S ( " Warped Door " ) ,
_doc_items_longdesc = S ( " Wooden doors are 2-block high barriers which can be opened or closed by hand and by a redstone signal. " ) ,
_doc_items_usagehelp = S ( " To open or close a wooden door, rightclick it or supply its lower half with a redstone signal. " ) ,
inventory_image = " mcl_crimson_warped_door.png " ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
groups = { handy = 1 , axey = 1 , material_wood = 1 } ,
2022-11-03 14:28:52 +01:00
_mcl_hardness = 3 ,
_mcl_blast_resistance = 3 ,
2023-06-13 17:43:52 +02:00
tiles_bottom = " mcl_crimson_warped_door_bottom.png " ,
tiles_top = " mcl_crimson_warped_door_top.png " ,
2022-11-03 14:28:52 +01:00
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
} )
mcl_doors : register_trapdoor ( " mcl_crimson:warped_trapdoor " , {
description = S ( " Warped Trapdoor " ) ,
_doc_items_longdesc = S ( " Wooden trapdoors are horizontal barriers which can be opened and closed by hand or a redstone signal. They occupy the upper or lower part of a block, depending on how they have been placed. When open, they can be climbed like a ladder. " ) ,
_doc_items_usagehelp = S ( " To open or close the trapdoor, rightclick it or send a redstone signal to it. " ) ,
tile_front = " mcl_crimson_warped_trapdoor.png " ,
2023-07-22 22:50:07 +02:00
tile_side = " mcl_crimson_warped_trapdoor_side.png " ,
2022-11-03 14:28:52 +01:00
wield_image = " mcl_crimson_warped_trapdoor.png " ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
groups = { handy = 1 , axey = 1 , mesecon_effector_on = 1 , material_wood = 1 } ,
2022-11-03 14:28:52 +01:00
_mcl_hardness = 3 ,
_mcl_blast_resistance = 3 ,
sounds = mcl_sounds.node_sound_wood_defaults ( ) ,
} )
2022-11-03 22:07:57 +01:00
mcl_fences.register_fence_and_fence_gate (
" warped_fence " ,
S ( " Warped Fence " ) ,
S ( " Warped Fence Gate " ) ,
" mcl_crimson_warped_fence.png " ,
Fireproof certain wood nodes & add planks crafting recipes (#4166)
* Make Crimson and Warped Planks, Double Slab Planks, Fences, Fence Gates, Doors, Trapdoors, Pressure Plates, Wood, Bark, Stripped Wood, Stripped Bark, and Stairs Immune to fire by removing them from the 'flammable', 'fire_encouragement', and 'fire_flammability' groups.
* Add crafting recipes which allow Cherry, Mangrove, Crimson, and Warped planks to be crafted from Wood, Bark, Stripped Wood, and Stripped Bark variants, to make them consistent with with all other planks.
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4166
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Doods <yusufalishabaka@tutanota.com>
Co-committed-by: Doods <yusufalishabaka@tutanota.com>
2024-04-14 01:52:46 +02:00
{ handy = 1 , axey = 1 , fence_wood = 1 } ,
2022-11-03 22:07:57 +01:00
minetest.registered_nodes [ " mcl_crimson:warped_hyphae " ] . _mcl_hardness ,
minetest.registered_nodes [ " mcl_crimson:warped_hyphae " ] . _mcl_blast_resistance ,
{ " group:fence_wood " } ,
mcl_sounds.node_sound_wood_defaults ( ) )
2022-11-05 02:07:07 +01:00
-- Door, Trapdoor, and Fence/Gate Crafting
local crimson_wood = " mcl_crimson:crimson_hyphae_wood "
local warped_wood = " mcl_crimson:warped_hyphae_wood "
minetest.register_craft ( {
output = " mcl_crimson:crimson_door 3 " ,
recipe = {
{ crimson_wood , crimson_wood } ,
{ crimson_wood , crimson_wood } ,
{ crimson_wood , crimson_wood }
}
} )
minetest.register_craft ( {
output = " mcl_crimson:warped_door 3 " ,
recipe = {
{ warped_wood , warped_wood } ,
{ warped_wood , warped_wood } ,
{ warped_wood , warped_wood }
}
} )
minetest.register_craft ( {
output = " mcl_crimson:crimson_trapdoor 2 " ,
recipe = {
{ crimson_wood , crimson_wood , crimson_wood } ,
{ crimson_wood , crimson_wood , crimson_wood } ,
}
} )
minetest.register_craft ( {
output = " mcl_crimson:warped_trapdoor 2 " ,
recipe = {
{ warped_wood , warped_wood , warped_wood } ,
{ warped_wood , warped_wood , warped_wood } ,
}
} )
minetest.register_craft ( {
output = " mcl_crimson:crimson_fence 3 " ,
recipe = {
{ crimson_wood , " mcl_core:stick " , crimson_wood } ,
{ crimson_wood , " mcl_core:stick " , crimson_wood } ,
}
} )
minetest.register_craft ( {
output = " mcl_crimson:warped_fence 3 " ,
recipe = {
{ warped_wood , " mcl_core:stick " , warped_wood } ,
{ warped_wood , " mcl_core:stick " , warped_wood } ,
}
} )
minetest.register_craft ( {
output = " mcl_crimson:crimson_fence_gate " ,
recipe = {
{ " mcl_core:stick " , crimson_wood , " mcl_core:stick " } ,
{ " mcl_core:stick " , crimson_wood , " mcl_core:stick " } ,
}
} )
minetest.register_craft ( {
output = " mcl_crimson:warped_fence_gate " ,
recipe = {
{ " mcl_core:stick " , warped_wood , " mcl_core:stick " } ,
{ " mcl_core:stick " , warped_wood , " mcl_core:stick " } ,
}
} )
2023-08-20 03:19:17 +02:00
2024-01-06 13:18:20 +01:00
dofile ( modpath .. " /alias.lua " )