123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966 |
- if not minetest.global_exists("rackstone") then rackstone = {} end
- rackstone.modpath = minetest.get_modpath("rackstone")
- -- group:rackstone is being used to check if a node should be considered naturally occuring for ambiance purposes.
- -- Localize for performance.
- local math_random = math.random
- -- Base light-level for all nether nodes.
- -- Otherwise the nether would be black.
- rackstone.light_source = 2
- rackstone.rackstone_sounds =
- function()
- local table = {
- dig = {name="rackstone_dugstonemetal", gain=1.0},
- dug = {name="rackstone_digstonemetal", gain=1.0},
- --place = {name="rackstone_placestonemetal", gain=1.0},
- }
- return default.node_sound_stone_defaults(table)
- end
- rackstone.cobble_sounds =
- function()
- local table = {
- footstep = {name="default_gravel_footstep", gain=0.5},
- }
- return default.node_sound_stone_defaults(table)
- end
- rackstone.destabilize_dauthsand =
- function(pos)
- local minp = {x=pos.x-1, y=pos.y, z=pos.z-1}
- local maxp = {x=pos.x+1, y=pos.y, z=pos.z+1}
- local nodes = minetest.find_nodes_in_area(minp, maxp, "rackstone:dauthsand_stable")
- for k, v in ipairs(nodes) do
- minetest.swap_node(v, {name="rackstone:dauthsand"})
- minetest.check_for_falling(v)
- end
- end
- minetest.register_node("rackstone:rackstone", {
- description = "Rackstone",
- tiles = {"rackstone_rackstone.png"},
- groups = utility.dig_groups("stone", {rackstone=1, stabilize_dauthsand=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- after_destruct = rackstone.destabilize_dauthsand,
- movement_speed_multiplier = default.ROAD_SPEED_NETHER,
- --light_source = rackstone.light_source,
- -- Common stone does not count toward tool's dig count.
- _toolranks = {
- ignore = true,
- },
- drop = "rackstone:cobble",
- _is_bulk_mapgen_stone = true,
- })
- minetest.register_node("rackstone:cobble", {
- description = "Rackstone Cobble",
- tiles = {"rackstone_rackstone_cobble.png"},
- groups = utility.dig_groups("cobble", {rackstone=1, stabilize_dauthsand=1, netherack=1}),
- sounds = rackstone.cobble_sounds(),
- after_destruct = rackstone.destabilize_dauthsand,
- movement_speed_multiplier = default.ROAD_SPEED_NETHER,
- -- Common stone does not count toward tool's dig count.
- _toolranks = {
- ignore = true,
- },
- _no_auto_pop = true,
- _is_bulk_mapgen_stone = true,
- })
- minetest.register_node("rackstone:rackstone_brick2", {
- description = "Rackstone Brick",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_rackstone_brick.png"},
- groups = utility.dig_groups("brick", {rackstone=1, brick=1}),
- sounds = default.node_sound_stone_defaults(),
- })
- minetest.register_node("rackstone:rackstone_block", {
- description = "Rackstone Block",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_rackstone_block.png"},
- groups = utility.dig_groups("block", {rackstone=1}),
- sounds = default.node_sound_stone_defaults(),
- })
- local after_redrack_remove = function(pos)
- -- Remove netherflame above.
- local flamepos = {x=pos.x, y=pos.y+1, z=pos.z}
- if minetest.get_node(flamepos).name == "fire:nether_flame" then
- minetest.remove_node(flamepos)
- end
- -- Tricks!
- if math_random(1, 500) == 1 then
- local which = math_random(1, 4)
- ambiance.sound_play("tnt_gunpowder_burning", pos, 2, 20)
-
- if which == 1 then
- minetest.add_node(pos, {name='rackstone:evilrack'})
- core.check_for_falling(pos)
- elseif which == 2 then
- minetest.add_node(pos, {name="fire:nether_flame"})
- elseif which == 3 then
- minetest.add_node(pos, {name="default:lava_source"})
- else
- --ambiance.sound_play("tnt_gunpowder_burning", pos, 2, 20)
- -- Delay after TNT gunpowder burning sound to give warning.
- minetest.after(1.5, function()
- local def = {
- radius = 3,
- damage_radius = 2,
- ignore_protection = false,
- disable_drops = true,
- ignore_on_blast = false,
- }
- tnt.boom(pos, def)
- end)
- end
- end
- end
- rackstone.after_redrack_remove = after_redrack_remove
- local on_redrack_place = function(pos)
- if math_random(1, 6) == 1 then
- local posabove = {x=pos.x, y=pos.y+1, z=pos.z}
- local light = minetest.get_node_light(posabove)
- if light then
- if light >= 15 then
- -- Copy position table, just in case.
- local npos = {x=pos.x, y=pos.y, z=pos.z}
- ambiance.sound_play("default_gravel_footstep", npos, 1, 20)
- minetest.after(math_random(1, 6), function()
- minetest.remove_node(npos)
- local def = {
- radius = 2,
- damage_radius = 2,
- ignore_protection = false,
- disable_drops = true,
- ignore_on_blast = false,
- }
- tnt.boom(npos, def)
- end)
- end
- end
- end
- end
- rackstone.on_redrack_place = on_redrack_place
- minetest.register_node("rackstone:redrack", {
- description = "Netherack",
- tiles = {"rackstone_redrack.png"},
- groups = utility.dig_groups("netherack", {rackstone=1, stabilize_dauthsand=1, netherack=1}),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- drop = {
- max_items = 1,
- items = {
- {
- rarity = 2,
- tool_groups = {
- "gem_tool",
- },
- items = {},
- },
- {
- rarity = 1,
- items = {"rackstone:redrack_cobble"},
- }
- },
- },
- _is_bulk_mapgen_stone = true,
- -- Common stone does not count toward tool's dig count.
- _toolranks = {
- ignore = true,
- },
- light_source = rackstone.light_source,
-
- after_destruct = function(...)
- after_redrack_remove(...)
- rackstone.destabilize_dauthsand(...)
- end,
-
- on_construct = function(...)
- on_redrack_place(...)
- end,
- on_player_walk_over = function(pos, player)
- if math_random(1, 2000) == 1 then
- minetest.after(math_random(1, 4), function()
- if not minetest.test_protection(pos, "") then
- tnt.boom(pos, {
- radius = 2,
- ignore_protection = false,
- ignore_on_blast = false,
- damage_radius = 3,
- disable_drops = true,
- })
- end
- end)
- end
- end,
- })
- minetest.register_node("rackstone:redrack_cobble", {
- description = "Cobbled Netherack",
- tiles = {"rackstone_redrack_cobble.png"},
- groups = utility.dig_groups("netherack", {rackstone=1, stabilize_dauthsand=1, netherack=1}),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- -- Common stone does not count toward tool's dig count.
- _toolranks = {
- ignore = true,
- },
- _no_auto_pop = true,
- _is_bulk_mapgen_stone = true,
- after_destruct = function(...)
- rackstone.destabilize_dauthsand(...)
- end,
- on_construct = function(...)
- on_redrack_place(...)
- end,
- on_player_walk_over = function(pos, player)
- if math_random(1, 10000) == 1 then
- minetest.after(math_random(1, 4), function()
- if not minetest.test_protection(pos, "") then
- tnt.boom(pos, {
- radius = 2,
- ignore_protection = false,
- ignore_on_blast = false,
- damage_radius = 2,
- disable_drops = true,
- })
- end
- end)
- end
- end,
- })
- minetest.register_node("rackstone:nether_grit", {
- description = "Nether Grit",
- tiles = {{
- name = "rackstone_redrack2_animated.png",
- animation = {type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 5.0},
- }},
- --tiles = {"rackstone_redrack2.png"},
- groups = utility.dig_groups("racksand", {falling_node=1, disable_jump=1}),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- liquid_viscosity = 8,
- liquidtype = "source",
- liquid_alternative_flowing = "rackstone:nether_grit",
- liquid_alternative_source = "rackstone:nether_grit",
- liquid_renewable = false,
- liquid_range = 0,
- light_source = rackstone.light_source,
- walkable = false,
- -- This was an attempt to make the pathfinder avoid these nodes, but by making
- -- the node walkable, the pathfinder just generates paths that go *over* them,
- -- anyway.
- --walkable = true,
- --collision_box = {type="fixed", fixed={0,0,0, 0,0,0}},
- drawtype = "glasslike",
- paramtype = "light",
- post_effect_color = {a = 200, r = 30, g = 0, b = 0},
- damage_per_second = 1*500,
- _damage_per_second_type = "poison",
- _death_message = function() return "Nether tar ate a new hole in <player>." end,
- drop = {
- max_items = 1,
- items = {
- {items = {'default:flint'}, rarity = 16},
- {items = {'rackstone:nether_grit'}}
- }
- },
- _is_bulk_mapgen_stone = true,
- })
- minetest.register_node("rackstone:void", {
- description = "Nether Void Gap (You Hacker!)",
- tiles = {"rackstone_redrack.png"},
- groups = utility.dig_groups("cobble"),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- walkable = false,
- drawtype = "glasslike",
- paramtype = "light",
- post_effect_color = {a = 200, r = 30, g = 0, b = 0},
- damage_per_second = 1*500,
- _damage_per_second_type = "crush",
- _death_message = "<player> found a void pocket.",
- drop = "",
- _is_bulk_mapgen_stone = true,
- light_source = rackstone.light_source,
- })
- minetest.register_node("rackstone:redrack_with_iron", {
- description = "Netherack With Iron",
- tiles = {
- "rackstone_redrack.png",
- "rackstone_redrack.png",
- "rackstone_redrack.png^default_mineral_iron3.png",
- "rackstone_redrack.png^default_mineral_iron3.png",
- "rackstone_redrack.png^default_mineral_iron3.png",
- "rackstone_redrack.png^default_mineral_iron3.png",
- },
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1, ore = 1}),
- sounds = rackstone.rackstone_sounds(),
- drop = "default:iron_lump",
- _tnt_drop = "default:iron_lump 2",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- light_source = rackstone.light_source,
-
- after_destruct = function(...)
- after_redrack_remove(...)
- end,
- })
- minetest.register_node("rackstone:redrack_with_copper", {
- description = "Netherack With Copper",
- tiles = {
- "rackstone_redrack.png",
- "rackstone_redrack.png",
- "rackstone_redrack.png^default_mineral_copper3.png",
- "rackstone_redrack.png^default_mineral_copper3.png",
- "rackstone_redrack.png^default_mineral_copper3.png",
- "rackstone_redrack.png^default_mineral_copper3.png",
- },
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1, ore=1}),
- sounds = rackstone.rackstone_sounds(),
- drop = "default:copper_lump",
- _tnt_drop = "default:copper_lump 2",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- light_source = rackstone.light_source,
-
- after_destruct = function(...)
- after_redrack_remove(...)
- end,
- })
- minetest.register_craftitem("rackstone:dauth_lump", {
- description = "Dauth Lump",
- inventory_image = "rackstone_dauth_lump.png",
- })
- minetest.register_craft({
- type = "fuel",
- recipe = "rackstone:dauth_lump",
- burntime = 60,
- })
- minetest.register_node("rackstone:redrack_with_coal", {
- description = "Netherack With Dauth",
- tiles = {
- "rackstone_redrack.png",
- "rackstone_redrack.png",
- "rackstone_redrack.png^default_mineral_coal3.png",
- "rackstone_redrack.png^default_mineral_coal3.png",
- "rackstone_redrack.png^default_mineral_coal3.png",
- "rackstone_redrack.png^default_mineral_coal3.png",
- },
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = rackstone.rackstone_sounds(),
- drop = "rackstone:dauth_lump",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- light_source = rackstone.light_source,
-
- after_destruct = function(...)
- after_redrack_remove(...)
- end,
- })
- minetest.register_node("rackstone:redrack_with_tin", {
- description = "Netherack With Tin",
- tiles = {
- "rackstone_redrack.png",
- "rackstone_redrack.png",
- "rackstone_redrack.png^moreores_mineral_tin2.png",
- "rackstone_redrack.png^moreores_mineral_tin2.png",
- "rackstone_redrack.png^moreores_mineral_tin2.png",
- "rackstone_redrack.png^moreores_mineral_tin2.png",
- },
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1, ore=1}),
- sounds = rackstone.rackstone_sounds(),
- drop = "moreores:tin_lump",
- _tnt_drop = "moreores:tin_lump 2",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- light_source = rackstone.light_source,
- after_destruct = function(...)
- after_redrack_remove(...)
- end,
- })
- minetest.register_node("rackstone:tile", {
- description = "Nether Grit Tile",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_redtile.png"},
- groups = utility.dig_groups("brick", {brick=1}),
- sounds = default.node_sound_stone_defaults(),
- })
- minetest.register_node("rackstone:brick", {
- description = "Netherack Brick",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_brick.png"},
- groups = utility.dig_groups("brick", {brick=1}),
- sounds = default.node_sound_stone_defaults(),
- })
- minetest.register_node("rackstone:redrack_block", {
- description = "Netherack Block",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_redrack_block.png"},
- groups = utility.dig_groups("block"),
- sounds = default.node_sound_stone_defaults(),
- })
- minetest.register_node("rackstone:brick_black", {
- description = "Black Rackstone Brick",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_brick_black.png"},
- groups = utility.dig_groups("brick", {brick=1}),
- sounds = default.node_sound_stone_defaults(),
- })
- minetest.register_node("rackstone:blackrack_block", {
- description = "Black Rackstone Block",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_blackrack_block.png"},
- groups = utility.dig_groups("block"),
- sounds = default.node_sound_stone_defaults(),
- })
- minetest.register_node("rackstone:bluerack", {
- description = "Blue Rackstone",
- tiles = {"rackstone_bluerack.png"},
- groups = utility.dig_groups("hardstone", {rackstone=1, netherack=1}),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- })
- minetest.register_node("rackstone:bluerack_brick", {
- description = "Blue Rackstone Brick",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_bluerack_brick.png"},
- groups = utility.dig_groups("brick", {rackstone=1, brick=1}),
- sounds = rackstone.rackstone_sounds(),
- })
- minetest.register_node("rackstone:bluerack_block", {
- description = "Blue Rackstone Block",
- paramtype2 = "facedir",
- place_param2 = 0,
- tiles = {"rackstone_bluerack_block.png"},
- groups = utility.dig_groups("block", {rackstone=1}),
- sounds = rackstone.rackstone_sounds(),
- })
- minetest.register_node("rackstone:blackrack", {
- description = "Black Rackstone",
- tiles = {"rackstone_blackrack.png"},
- groups = utility.dig_groups("cobble", {rackstone=1, native_stone=1, stabilize_dauthsand=1, netherack=1}),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
-
- paramtype2 = "none",
- after_destruct = rackstone.destabilize_dauthsand,
- _is_bulk_mapgen_stone = true,
-
- -- Nodes placed shall not produce starpearls when dug.
- after_place_node = function(pos, placer, itemstack, pointed_thing)
- if placer then
- local node = minetest.get_node(pos)
- node.param2 = 1
- minetest.swap_node(pos, node)
- end
- end,
-
- -- Digging nodes placed by mapgen shall sometimes produce starpearls.
- after_dig_node = function(pos, oldnode, oldmetadata, digger)
- if digger and oldnode.param2 == 0 then
- -- Only drop them rarely.
- -- Only drop if blackrack was placed by mapgen.
- -- This prevents place-harvest-place-harvest exploit.
- -- Only if realm does NOT reset.
- local realm = rc.current_realm_at_pos(pos)
- local rdata = rc.get_realm_data(realm)
- if rdata and rdata.realm_resets then
- return
- end
- local chance = 80
- local tool = digger:get_wielded_item():get_name()
- if tool:find("pick") and tool:find("silver") then
- chance = 20
- end
- if math_random(1, chance) == 1 then
- local inv = digger:get_inventory()
- local leftover = inv:add_item("main", ItemStack('starpearl:pearl'))
- minetest.add_item(pos, leftover)
- end
- end
- end,
- })
- minetest.register_node("rackstone:evilrack", {
- description = "Witchrack",
- tiles = {"rackstone_evilstone.png"},
- groups = utility.dig_groups("netherack", {falling_node=1, rackstone=1, netherack=1}),
- sounds = rackstone.rackstone_sounds(),
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- })
- minetest.register_node("rackstone:dauthsand", {
- description = "Dauthsand",
- tiles = {"rackstone_dauthsand.png"},
- groups = utility.dig_groups("racksand", {falling_node=1, racksand=1, nether_soil=1}),
- --damage_per_second = 4*500,
- post_effect_color = {a=255, r=0, g=0, b=0},
- sounds = default.node_sound_gravel_defaults(),
- drop = {
- items = {
- {items = {'bluegrass:seed'}, rarity = 32},
- {items = {'rackstone:dauthsand'}},
- {items = {'default:flint'}, rarity = 16}
- }
- },
- movement_speed_multiplier = default.SLOW_SPEED,
- -- Stabilize dauth sand if held by rackstone.
- on_construct = function(pos)
- local x1 = minetest.get_node({x=pos.x+1, y=pos.y, z=pos.z}).name
- local x2 = minetest.get_node({x=pos.x-1, y=pos.y, z=pos.z}).name
- local z1 = minetest.get_node({x=pos.x, y=pos.y, z=pos.z+1}).name
- local z2 = minetest.get_node({x=pos.x, y=pos.y, z=pos.z-1}).name
-
- if minetest.get_item_group(x1, "stabilize_dauthsand") > 0 and
- minetest.get_item_group(x2, "stabilize_dauthsand") > 0 then
- minetest.swap_node(pos, {name="rackstone:dauthsand_stable"})
- elseif minetest.get_item_group(z1, "stabilize_dauthsand") > 0 and
- minetest.get_item_group(z2, "stabilize_dauthsand") > 0 then
- minetest.swap_node(pos, {name="rackstone:dauthsand_stable"})
- end
- end,
- })
- -- Special sand type that doesn't fall.
- -- Not supposed to be player-obtainable.
- minetest.register_node("rackstone:dauthsand_stable", {
- description = "Stable Dauthsand (You Hacker)",
- tiles = {"rackstone_dauthsand.png"},
- groups = utility.dig_groups("gravel", {racksand=1, nether_soil=1}),
- --damage_per_second = 4*500,
- post_effect_color = {a=255, r=0, g=0, b=0},
- sounds = default.node_sound_gravel_defaults(),
- drop = 'rackstone:dauthsand',
- movement_speed_multiplier = default.SLOW_SPEED,
- on_finish_collapse = function(pos, node)
- minetest.swap_node(pos, {name="rackstone:dauthsand"})
- end,
- on_collapse_to_entity = function(pos, node)
- return {ItemStack("rackstone:dauthsand")}
- end,
- })
- minetest.register_craft({
- type = "cooking",
- output = "default:glass",
- recipe = "rackstone:dauthsand",
- })
- -- Netherack Crafts
- minetest.register_craft({
- output = "rackstone:brick 4",
- recipe = {
- {"rackstone:redrack", "rackstone:redrack"},
- {"rackstone:redrack", "rackstone:redrack"},
- }
- })
- minetest.register_craft({
- output = "rackstone:redrack_block 9",
- recipe = {
- {"rackstone:redrack", "rackstone:redrack", "rackstone:redrack"},
- {"rackstone:redrack", "rackstone:redrack", "rackstone:redrack"},
- {"rackstone:redrack", "rackstone:redrack", "rackstone:redrack"},
- }
- })
- -- Blue Rackstone Crafts
- minetest.register_craft({
- output = "rackstone:bluerack_brick 4",
- recipe = {
- {"rackstone:bluerack", "rackstone:bluerack"},
- {"rackstone:bluerack", "rackstone:bluerack"},
- }
- })
- minetest.register_craft({
- output = "rackstone:bluerack_block 9",
- recipe = {
- {"rackstone:bluerack", "rackstone:bluerack", "rackstone:bluerack"},
- {"rackstone:bluerack", "rackstone:bluerack", "rackstone:bluerack"},
- {"rackstone:bluerack", "rackstone:bluerack", "rackstone:bluerack"},
- }
- })
- -- Black Rackstone Crafts
- minetest.register_craft({
- output = "rackstone:brick_black 4",
- recipe = {
- {"rackstone:blackrack", "rackstone:blackrack"},
- {"rackstone:blackrack", "rackstone:blackrack"},
- }
- })
- minetest.register_craft({
- output = "rackstone:blackrack_block 9",
- recipe = {
- {"rackstone:blackrack", "rackstone:blackrack", "rackstone:blackrack"},
- {"rackstone:blackrack", "rackstone:blackrack", "rackstone:blackrack"},
- {"rackstone:blackrack", "rackstone:blackrack", "rackstone:blackrack"},
- }
- })
- -- Rackstone Crafts
- minetest.register_craft({
- output = "rackstone:rackstone_brick2 4",
- recipe = {
- {"rackstone:rackstone", "rackstone:rackstone"},
- {"rackstone:rackstone", "rackstone:rackstone"},
- }
- })
- minetest.register_craft({
- output = "rackstone:rackstone_block 9",
- recipe = {
- {"rackstone:rackstone", "rackstone:rackstone", "rackstone:rackstone"},
- {"rackstone:rackstone", "rackstone:rackstone", "rackstone:rackstone"},
- {"rackstone:rackstone", "rackstone:rackstone", "rackstone:rackstone"},
- }
- })
- minetest.register_craft({
- type = "cooking",
- output = 'rackstone:tile',
- recipe = 'rackstone:nether_grit',
- cooktime = 20,
- })
- minetest.register_craft({
- type = "cooking",
- output = 'rackstone:rackstone',
- recipe = 'rackstone:cobble',
- cooktime = 6,
- })
- minetest.register_craft({
- type = "cooking",
- output = 'rackstone:redrack',
- recipe = 'rackstone:redrack_cobble',
- cooktime = 3,
- })
- minetest.register_craft({
- type = "grinding",
- output = 'rackstone:dauthsand',
- recipe = 'rackstone:redrack',
- time = 20,
- })
- minetest.register_craft({
- type = "crushing",
- output = 'rackstone:nether_grit',
- recipe = 'rackstone:redrack',
- time = 60*1.0,
- })
- minetest.register_craft({
- type = "crushing",
- output = 'rackstone:dauthsand',
- recipe = 'rackstone:nether_grit',
- time = 60*1.0,
- })
- -- Rackstone
- stairs.register_stair_and_slab(
- "rackstone",
- "rackstone:rackstone",
- {cracky=1},
- {"rackstone_rackstone.png"},
- "Rackstone",
- default.node_sound_stone_defaults()
- )
- stairs.register_stair_and_slab(
- "rackstone_cobble",
- "rackstone:cobble",
- {cracky=2},
- {"rackstone_rackstone_cobble.png"},
- "Rackstone Cobble",
- default.node_sound_stone_defaults()
- )
- -- Rackstone Block
- stairs.register_stair_and_slab(
- "rackstone_block",
- "rackstone:rackstone_block",
- {cracky=1},
- {"rackstone_rackstone_block.png"},
- "Rackstone Block",
- default.node_sound_stone_defaults()
- )
- -- Rackstone Brick
- stairs.register_stair_and_slab(
- "rackstone_brick2",
- "rackstone:rackstone_brick2",
- {cracky=1},
- {"rackstone_rackstone_brick.png"},
- "Rackstone Brick",
- default.node_sound_stone_defaults()
- )
- -- Netherack
- stairs.register_stair_and_slab(
- "redrack",
- "rackstone:redrack",
- {cracky=3},
- {"rackstone_redrack.png"},
- "Netherack",
- rackstone.rackstone_sounds()
- )
- stairs.register_stair_and_slab(
- "redrack_cobble",
- "rackstone:redrack_cobble",
- {cracky=3},
- {"rackstone_redrack_cobble.png"},
- "Cobbled Netherack",
- rackstone.rackstone_sounds()
- )
- -- Netherack Block
- stairs.register_stair_and_slab(
- "redrack_block",
- "rackstone:redrack_block",
- {cracky=3},
- {"rackstone_redrack_block.png"},
- "Netherack Block",
- default.node_sound_stone_defaults()
- )
- -- Netherack Brick
- stairs.register_stair_and_slab(
- "rackstone_brick",
- "rackstone:brick",
- {cracky=2},
- {"rackstone_brick.png"},
- "Rackstone Brick",
- default.node_sound_stone_defaults()
- )
- -- Blue Rackstone
- stairs.register_stair_and_slab(
- "bluerack",
- "rackstone:bluerack",
- {cracky=2},
- {"rackstone_bluerack.png"},
- "Blue Rackstone",
- rackstone.rackstone_sounds()
- )
- -- Blue Rackstone Block
- stairs.register_stair_and_slab(
- "bluerack_block",
- "rackstone:bluerack_block",
- {cracky=2},
- {"rackstone_bluerack.png"},
- "Blue Rackstone Block",
- default.node_sound_stone_defaults()
- )
- -- Blue Rackstone Brick
- stairs.register_stair_and_slab(
- "bluerack_brick",
- "rackstone:bluerack_brick",
- {cracky=2},
- {"rackstone_bluerack_brick.png"},
- "Blue Rackstone Brick",
- default.node_sound_stone_defaults()
- )
- -- Blackrack
- stairs.register_stair_and_slab(
- "blackrack",
- "rackstone:blackrack",
- {cracky=2},
- {"rackstone_blackrack.png"},
- "Black Rackstone",
- rackstone.rackstone_sounds()
- )
- -- Black Rackstone Block
- stairs.register_stair_and_slab(
- "blackrack_block",
- "rackstone:blackrack_block",
- {cracky=2},
- {"rackstone_blackrack_block.png"},
- "Black Rackstone Block",
- default.node_sound_stone_defaults()
- )
- -- Black Rackstone Brick
- stairs.register_stair_and_slab(
- "rackstone_brick_black",
- "rackstone:brick_black",
- {cracky=2},
- {"rackstone_brick_black.png"},
- "Black Rackstone Brick",
- default.node_sound_stone_defaults()
- )
- -- These nodes appear only in the Outback.
- -- They have enhanced drops in order to help new players.
- minetest.register_node("rackstone:rackstone_with_coal", {
- description = "Rackstone With Coal",
- tiles = {"rackstone_rackstone.png^default_mineral_coal.png"},
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "default:coal_lump 3",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
- minetest.register_node("rackstone:rackstone_with_iron", {
- description = "Rackstone With Iron",
- tiles = {"rackstone_rackstone.png^default_mineral_iron.png"},
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "default:iron_lump 3",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
- minetest.register_node("rackstone:rackstone_with_copper", {
- description = "Rackstone With Copper",
- tiles = {"rackstone_rackstone.png^default_mineral_copper.png"},
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "default:copper_lump 2",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
- minetest.register_node("rackstone:rackstone_with_gold", {
- description = "Rackstone With Gold",
- tiles = {"rackstone_rackstone.png^default_mineral_gold.png"},
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "default:gold_lump 2",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
- minetest.register_node("rackstone:rackstone_with_diamond", {
- description = "Rackstone With Diamond",
- tiles = {"rackstone_rackstone.png^default_mineral_diamond.png"},
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "default:diamond 2",
- _tnt_drop = {
- 'default:diamond 2',
- 'dusts:diamond_shard 3',
- },
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
- minetest.register_node("rackstone:rackstone_with_mese", {
- description = "Rackstone With Mese",
- tiles = {"rackstone_rackstone.png^default_mineral_mese.png"},
- groups = utility.dig_groups("mineral", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "default:mese_crystal 2",
- _tnt_drop = "default:mese_crystal_fragment 2",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
- minetest.register_node("rackstone:rackstone_with_meat", {
- description = "Rackstone With Unidentified Meat",
- tiles = {"rackstone_rackstone.png^rackstone_meat.png"},
- groups = utility.dig_groups("netherack", {rackstone=1, netherack=1}),
- sounds = default.node_sound_stone_defaults(),
- drop = "mobs:meat_raw 4",
- silverpick_drop = true,
- movement_speed_multiplier = default.SLOW_SPEED_NETHER,
- place_param2 = 10,
- })
|