-- =================================================================== minetest.register_node("mapop:barrel", { description = "Barrel", paramtype2 = "facedir", place_param2 = 0, tiles = { "mp_barrel.png", --top "mp_barrel.png", --bottom "mp_barrel.png^[transformR90", --right "mp_barrel.png^[transformR90", --left "mp_barrel_top.png", --back "mp_barrel_top.png" --front }, is_ground_content = false, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, wood = 1}, on_construct = function(pos) local meta = minetest.env:get_meta(pos) local inv = meta:get_inventory() inv:set_size('main', 8*4) inv:set_size('storage', 9*3) meta:set_string('formspec', 'size [9,9]'.. 'bgcolor[#080808BB;false]'.. 'list[current_name;storage;0,0.2;9,3;]'.. 'list[current_player;main;0.5,5;8,4;]') end, can_dig = function(pos,player) local meta = minetest.get_meta(pos); local inv = meta:get_inventory() return inv:is_empty('storage') and inv:is_empty('storage1') end, node_box = { type = "fixed", fixed = { {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, } } }) -- =================================================================== minetest.register_node("mapop:blinds", { description = "Blinds", tiles = {"mp_blinds.png"}, drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, furniture = 1}, sunlight_propagates = true; node_box = { type = "fixed", fixed = { {-0.5, 0.5, 0.5, 0.5, 0.4, 0.4}, {-0.5, 0.3, 0.5, 0.5, 0.2, 0.4}, {-0.5, 0.1, 0.5, 0.5, 0.0, 0.4}, {-0.5, -0.1, 0.5, 0.5, -0.2, 0.4}, {-0.5, -0.3, 0.5, 0.5, -0.4, 0.4}, }, } }) -- =================================================================== minetest.register_node("mapop:light", { description = "Ceiling Light", tiles = { "default_coral_skeleton.png", "mp_ceiling_light_bottom.png", "mp_ceiling_light_side.png", "mp_ceiling_light_side.png", "mp_ceiling_light_side.png", "mp_ceiling_light_side.png" }, drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:light_on" minetest.set_node(pos, node) end, groups = {choppy = 2, oddly_breakable_by_hand = 2}, node_box = { type = "fixed", fixed = { {-0.25, 0.4375, -0.25, 0.25, 0.5, 0.25}, -- NodeBox1 {-0.125, 0.3125, -0.125, 0.125, 0.4375, 0.125}, -- NodeBox2 {-0.1875, -0.0625, -0.1875, 0.1875, 0.3125, 0.1875}, -- NodeBox3 }, } }) -- =================================================================== minetest.register_node("mapop:light_on", { description = "Ceiling Light", tiles = { "default_coral_skeleton.png", "mp_ceiling_light_bottom.png", "mp_ceiling_light_side.png", "mp_ceiling_light_side.png", "mp_ceiling_light_side.png", "mp_ceiling_light_side.png" }, drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", drop = "mapop:light", light_source = 14, on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:light" minetest.set_node(pos, node) end, groups = {choppy = 2, oddly_breakable_by_hand = 2, not_in_creative_inventory = 1}, node_box = { type = "fixed", fixed = { {-0.25, 0.4375, -0.25, 0.25, 0.5, 0.25}, -- NodeBox1 {-0.125, 0.3125, -0.125, 0.125, 0.4375, 0.125}, -- NodeBox2 {-0.1875, -0.0625, -0.1875, 0.1875, 0.3125, 0.1875}, -- NodeBox3 }, } }) -- =================================================================== minetest.register_node("mapop:ceiling_lamp", { description = "Ceiling Lamp", tiles = { "default_stone.png", "default_stone.png^mp_light_off.png", "default_stone.png", "default_stone.png", "default_stone.png", "default_stone.png" }, drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:ceiling_lamp_on" minetest.set_node(pos, node) end, groups = {choppy = 2, oddly_breakable_by_hand = 2}, node_box = { type = "fixed", fixed = { {-0.050, 0.5, -0.050, 0.050, -0.2, 0.050}, {-0.1, -0.0, -0.1, 0.1, -0.2, 0.1}, {-0.2, -0.1, -0.2, 0.2, -0.2, 0.2}, {-0.3, -0.2, -0.3, 0.3, -0.5, 0.3}, }, } }) -- =================================================================== minetest.register_node("mapop:ceiling_lamp_on", { description = "Ceiling Lamp On", tiles = { "default_stone.png", "default_stone.png^mp_light_on.png", "default_stone.png", "default_stone.png", "default_stone.png", "default_stone.png" }, drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", light_source = 14, drop = 'mapop:ceiling_lamp', on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:ceiling_lamp" minetest.set_node(pos, node) end, groups = {choppy = 2, oddly_breakable_by_hand = 2, not_in_creative_inventory = 1}, node_box = { type = "fixed", fixed = { {-0.050, 0.5, -0.050, 0.050, -0.2, 0.050}, {-0.1, -0.0, -0.1, 0.1, -0.2, 0.1}, {-0.2, -0.1, -0.2, 0.2, -0.2, 0.2}, {-0.3, -0.2, -0.3, 0.3, -0.5, 0.3}, }, } }) -- =================================================================== minetest.register_node("mapop:fan_on", { description = "Fan (on)", tiles = { "default_coral_skeleton.png", "default_coral_skeleton.png", "default_coral_skeleton.png", "default_coral_skeleton.png", { name = "mp_fan_on.png", animation = { type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 0.3 }, }, }, drawtype = "nodebox", drop = 'mapop:fan_off', paramtype2 = "facedir", on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:fan_off" minetest.set_node(pos, node) end, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, not_in_creative_inventory = 1}, node_box = { type = "fixed", fixed = { {-0.5, 0.5, 0.2, 0.5, -0.5, -0.2}, }, } }) -- =================================================================== minetest.register_node("mapop:fan_off", { description = "Fan", tiles = { "default_coral_skeleton.png", "default_coral_skeleton.png", "default_coral_skeleton.png", "default_coral_skeleton.png", "mp_fan_off.png", "mp_fan_off.png", }, drawtype = "nodebox", drop = 'mapop:fan_off', paramtype2 = "facedir", on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:fan_on" minetest.set_node(pos, node) end, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, node_box = { type = "fixed", fixed = { {-0.5, 0.5, 0.2, 0.5, -0.5, -0.2}, }, } }) -- =================================================================== minetest.register_node("mapop:ac", { description = "AC", tiles = { "mp_ac_top.png", "mp_ac_top.png", "mp_ac_top.png", "mp_ac_top.png", "mp_ac_b.png", "mp_ac_f.png", }, drawtype = "nodebox", paramtype = "light", drop = 'mapop:ac', paramtype2 = "facedir", groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, node_box = { type = "fixed", fixed = { {0.5, 0.5, 0.5, -0.5, -0.5, -0.4}, {0.5, 0.2, -0.5, -0.5, -0.5, -0.4}, }, } }) -- =================================================================== minetest.register_node("mapop:computer", { description = "Computer", tiles = { "mp_s.png^mp_top.png" , "mp_s.png" , "mp_s.png" , "mp_s.png" , "mp_s.png" , "mp_s.png^mp_f.png" , }, drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", groups = {snappy=2, oddly_breakable_by_hand=2, furniture=1, flammable=1}, sounds = moditems.WOOD_SOUNDS, node_box = { type = "fixed", fixed = { {-0.5, -0.5, -0.1875, 0.5, -0.25, 0.5}, {-0.5, -0.5, -0.5, 0.1875, -0.375, -0.25}, {0.25, -0.5, -0.5, 0.4375, -0.375, -0.25}, {-0.125, -0.25, 0.0625, 0.125, -0.0625, 0.25}, {-0.3125, -0.125, -0.25, 0.3125, 0.5, 0.3125}, {-0.25, 0, 0.3125, 0.25, 0.375, 0.5}, } } }) -- =================================================================== minetest.register_node("mapop:lamp", { description = "Mapop lamp base" , tiles = { "default_stone.png" , "default_stone.png" , "default_stone.png" , "default_stone.png" , "default_stone.png" , "default_stone.png" , } , groups = {cracky=2, oddly_breakable_by_hand=3}, on_construct = function(pos) if minetest.get_node(vector.add(pos, vector.new(0, 1, 0))).name == "air" then minetest.set_node({x = pos.x, y = pos.y + 1, z = pos.z}, {name = "mapop:lamp_top_off"}) end if minetest.get_node(vector.add(pos, vector.new(0, 1, 0))).name ~= "air" then if minetest.get_node(vector.add(pos, vector.new(0, 1, 0))).name ~= "mapop:lamp_top_off" then minetest.set_node({x = pos.x, y = pos.y, z = pos.z},{name = "air"}) end end end, on_dig = function(pos, node, player) minetest.set_node({x = pos.x , y = pos.y + 1, z = pos.z}, {name = "air"}) minetest.set_node({x = pos.x, y = pos.y, z = pos.z}, {name = "air"}) end , drawtype = "nodebox", paramtype = "light", node_box = { type = "fixed", fixed = { {-0.25, -0.5, -0.25, 0.25, -0.375, 0.25}, -- NodeBox16 {-0.0625, -0.375, -0.0625, 0.0625, 0.5, 0.0625}, -- NodeBox17 } } }) -- =================================================================== minetest.register_node("mapop:lamp_top_on", { description = "Mapop lamp top on" , tiles = { "mp_lt.png" , "mp_lt.png" , "default_stone.png^mp_ls_top.png" , "default_stone.png^mp_ls_top.png" , "default_stone.png^mp_ls_top.png" , "default_stone.png^mp_ls_top.png" , } , groups = {cracky=2, oddly_breakable_by_hand=3, not_in_creative_inventory = 1}, on_dig = function (pos, node, player) minetest.set_node({x = pos.x , y = pos.y - 1, z = pos.z}, {name = "air"}) minetest.set_node({x = pos.x, y = pos.y, z = pos.z}, {name = "air"}) end , drawtype = "nodebox", paramtype = "light", light_source = 14, drop = 'mapop:lamp_top_off', on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:lamp_top_off" minetest.set_node(pos, node) end , node_box = { type = "fixed", fixed = { {-0.375, -0.0625, -0.375, 0.375, 0.5, 0.375}, -- NodeBox16 {-0.0625, -0.5, -0.0625, 0.0625, 0.1875, 0.0625}, -- NodeBox17 } } }) -- =================================================================== minetest.register_node ("mapop:lamp_top_off", { description = "Mapop lamp top off" , tiles = { "mp_lt.png" , "mp_lt.png" , "default_stone.png^mp_ls_top.png" , "default_stone.png^mp_ls_top.png" , "default_stone.png^mp_ls_top.png" , "default_stone.png^mp_ls_top.png" , } , groups = {cracky=2, oddly_breakable_by_hand=3, not_in_creative_inventory = 1}, drop = "mapop:lamp_top_off", on_dig = function(pos, node, player) minetest.set_node({x = pos.x , y = pos.y - 1, z = pos.z}, {name = "air"}) minetest.set_node({x = pos.x, y = pos.y, z = pos.z}, {name = "air"}) end , drawtype = "nodebox", paramtype = "light", on_rightclick = function (pos, node, player, itemstack, pointed_thing) node.name = "mapop:lamp_top_on" minetest.set_node (pos, node) end , node_box = { type = "fixed", fixed = { {-0.375, -0.0625, -0.375, 0.375, 0.5, 0.375}, -- NodeBox16 {-0.0625, -0.5, -0.0625, 0.0625, 0.1875, 0.0625}, -- NodeBox17 } } }) -- =================================================================== minetest.register_node ("mapop:stereo", { description = "Mapop Stereo" , tiles = { "mp_radio_top.png" , "mp_radio_bottom.png" , "mp_radio_right.png" , "mp_radio_left.png" , "mp_radio_back.png" , "mp_radio_front.png" , } , drawtype = "nodebox" , paramtype = "light" , paramtype2 = "facedir" , groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, furniture = 1 } , node_box = { type = "fixed", fixed = { { -0.50, -0.50, 0.1875, 0.50, -0.1250, 0.5 } , -- NodeBox1 { -0.25, -0.50, 0.1250, 0.25, -0.0625, 0.5 } , -- NodeBox2 } }, }) -- =================================================================== local channel_blast_tiles = { { name = 'default_tree.png' } , { name = 'mp_channel_blast.png', animation = { type = "sheet_2d", frames_w = 8, frames_h = 8, -- in_count = 231, -- out_count = 64, frame_length = 0.078125, } } , } -- =================================================================== local channel_cube_tiles = { { name = 'default_tree.png' } , { name = 'mp_channel_cube.png' , animation = { type = 'sheet_2d' , frames_w = 5 , frames_h = 5 , frame_length = 0.05 , } } } -- =================================================================== local channel_rainbow_tiles = { { name = 'default_tree.png' } , { name = 'mp_channel_rainbow.png' , animation = { type = "sheet_2d", frames_w = 8, frames_h = 8, -- in_count = 74 , -- out_count = 64 , frame_length = 0.046875, -- 3 sec (match upstream) -- frame_length = 0.03125, -- 2 sec } } , } -- =================================================================== minetest.register_node ('mapop:tv', { description = 'Mapop TV' , drawtype = 'mesh' , mesh = 'FM_tv.obj' , drop = 'mapop:tv' , tiles = channel_blast_tiles , groups = { cracky=2, oddly_breakable_by_hand=3, not_in_creative_inventory=1, furniture=1 } , paramtype = 'light' , paramtype2 = 'facedir' , light_source = 14 , selection_box = { type = 'fixed', fixed = { -0.45, -0.5, -0.5, 0.45, 0.4, 0.45 } , -- Right, Bottom, Back, Left, Top, Front } , collision_box = { type = 'fixed' , fixed = { -0.45, -0.5, -0.5, 0.45, 0.4, 0.45 } , } , }) -- =================================================================== minetest.register_node ('mapop:birdbath' , { description = 'Mapop Birdbath' , drawtype = 'mesh' , mesh = 'FM_birdbath.obj' , tiles = { { name='default_stone.png' } , { name = 'default_water_source_animated.png' , animation = { type = 'vertical_frames' , aspect_w = 16 , aspect_h = 16 , length = 2.00 , } } , } , special_tiles = { { name='default_stone.png' } , { name = 'default_water_source_animated.png' , animation = { type = 'vertical_frames' , aspect_w = 16 , aspect_h = 16 , length = 2.00 , } , backface_culling = false, } , } , groups = { cracky=2, oddly_breakable_by_hand=5, furniture=1 } , paramtype = 'light' , paramtype2 = 'facedir' , sounds = moditems.STONE_SOUNDS , }) -- =================================================================== -- End of file.