-- =================================================================== local reg_node = ocutil.safe_register_node local reg_alias = ocutil.safe_register_alias local cvt = default.convert_node local neednode -- =================================================================== reg_node ("coderblocks:hdspeaker", { description = "Large Stereo Speaker", mesh="coderblocks_speaker_large.obj", tiles = { "coderblocks_speaker_sides.png" , "coderblocks_speaker_front.png" , } , groups = { snappy = 3 } , sounds = default.sound_wood(), }) -- =================================================================== reg_node ("coderblocks:hdtv", { description = "Small CRT Television" , tiles = { 'coderblocks_television_top.png', 'coderblocks_television_bottom.png', 'coderblocks_television_left.png^[transformFX', 'coderblocks_television_left.png', 'coderblocks_television_back.png', { name="coderblocks_television_front_animated.png", animation={ type="vertical_frames", aspect_w=16, aspect_h=16, length=80.0 } } } , light_source = default.LIGHT_MAX - 1, groups = { snappy = 3 } , sounds = default.sound_wood(), }) -- =================================================================== local function slab_z (depth) if depth > 0 then -- slab starting from -z return { -0.5, -0.5, -0.5, 0.5, 0.5, -0.5+depth } else -- slab starting from +z (z1=0.5-(-depth)) return { -0.5, -0.5, 0.5+depth, 0.5, 0.5, 0.5 } end end -- =================================================================== reg_node ("coderblocks:hdchainlink" , { description = "Chainlink Fence", mesh="coderblocks_fence_chainlink.obj", tiles = { "coderblocks_fence_chainlink_tb.png", "coderblocks_fence_chainlink_tb.png", "coderblocks_fence_chainlink_sides.png", "coderblocks_fence_chainlink_sides.png", "coderblocks_fence_chainlink_fb.png", "coderblocks_fence_chainlink_fb.png", } , groups = {snappy=3} , sounds = default.sound_wood(), selection_box = slab_z(-0.125), collision_box = slab_z(-0.125), }) reg_node ("coderblocks:hdstereo", { description = "Stereo Receiver" , tiles = { 'coderblocks_stereo_top.png', 'coderblocks_stereo_bottom.png', 'coderblocks_stereo_left.png^[transformFX', 'coderblocks_stereo_left.png', 'coderblocks_stereo_back.png', 'coderblocks_stereo_front.png'} , groups = { snappy = 3 } , sounds = default.sound_wood(), }) -- =================================================================== -- The nodes aliased here need to be aliased as well as converted be- -- cause these nodes are known to be used in item frames or other con- -- texts where aliases are required. -- Note: Alias output doesn't need to match conversion output. reg_alias ( "homedecor:glowlight_quarter_14" , "coderblocks:glowlight_quarter" ) reg_alias ( "homedecor:wardrobe" , "coderblocks:lmb_cheese" ) reg_alias ( "homedecor:plasma_ball_on" , "homedecor:plasma_ball" ) -- =================================================================== cvt ("homedecor:wardrobe" , "air" ) cvt ("homedecor:wardrobe_top" , "air" ) cvt ("homedecor:wardrobe_bottom" , "air" ) -- =================================================================== -- These 10 cases are converted by ABMs in CoderBlocks: -- -- homedecor:glowlight_{thick,thin}_{white,yellow} -- homedecor:glowlight_{thick,thin}_{white,yellow}_wall -- homedecor:glowlight_small_cube_{white,yellow}_ceiling -- =================================================================== cvt ( "homedecor:glowlight_half" , "coderblocks:glowlight_half" ) cvt ( "homedecor:glowlight_quarter" , "coderblocks:glowlight_quarter" ) cvt ( "homedecor:glowlight_quarter_0" , "coderblocks:glowlight_quarter" ) cvt ( "homedecor:glowlight_quarter_14" , "coderblocks:glowlight_quarter" ) cvt ( "homedecor:glowlight_half_14" , "coderblocks:glowlight_half" ) cvt ( "homedecor:glowlight_half_white" , "coderblocks:glowlight_half_white" ) cvt ( "homedecor:glowlight_half_yellow" , "coderblocks:glowlight_half_yellow" ) cvt ( "homedecor:glowlight_quarter_11" , "coderblocks:glowlight_quarter" ) cvt ( "homedecor:glowlight_quarter_white" , "coderblocks:glowlight_quarter_white" ) cvt ( "homedecor:glowlight_quarter_yellow" , "coderblocks:glowlight_quarter_yellow" ) cvt ( "homedecor:glowlight_small_cube_0" , "coderblocks:glowlight_small_cube_white" ) cvt ( "homedecor:glowlight_small_cube_14" , "coderblocks:glowlight_small_cube_white" ) cvt ( "homedecor:glowlight_small_cube_white" , "coderblocks:glowlight_small_cube_white" ) cvt ( "homedecor:glowlight_small_cube_yellow" , "coderblocks:glowlight_small_cube_yellow" ) -- =================================================================== cvt ( "homedecor:ceiling_lamp_0" , "homedecor:ceiling_lamp" ) cvt ( "homedecor:ceiling_lamp_14" , "homedecor:ceiling_lamp" ) cvt ( "homedecor:ceiling_lantern_0" , "homedecor:ceiling_lantern" ) cvt ( "homedecor:ceiling_lantern_14" , "homedecor:ceiling_lantern" ) cvt ( "homedecor:desk_lamp_0" , "homedecor:desk_lamp" ) cvt ( "homedecor:desk_lamp_14" , "homedecor:desk_lamp" ) cvt ( "homedecor:ground_lantern_0" , "homedecor:ground_lantern" ) cvt ( "homedecor:ground_lantern_14" , "homedecor:ground_lantern" ) cvt ( "homedecor:hanging_lantern_0" , "homedecor:hanging_lantern" ) cvt ( "homedecor:hanging_lantern_14" , "homedecor:hanging_lantern" ) cvt ( "homedecor:lattice_lantern_large_0" , "homedecor:lattice_lantern_large" ) cvt ( "homedecor:lattice_lantern_large_14" , "homedecor:lattice_lantern_large" ) cvt ( "homedecor:lattice_lantern_small_0" , "homedecor:lattice_lantern_small" ) cvt ( "homedecor:lattice_lantern_small_14" , "homedecor:lattice_lantern_small" ) cvt ( "homedecor:light_switch_off" , "homedecor:light_switch" ) cvt ( "homedecor:light_switch_on" , "homedecor:light_switch" ) cvt ( "homedecor:plasma_ball_on" , "homedecor:plasma_ball" ) cvt ( "homedecor:plasma_lamp_0" , "homedecor:plasma_lamp" ) cvt ( "homedecor:plasma_lamp_14" , "homedecor:plasma_lamp" ) cvt ( "homedecor:rope_light_on_floor_off" , "homedecor:rope_light_on_floor" ) cvt ( "homedecor:standing_lamp_0" , "homedecor:standing_lamp_hi" ) cvt ( "homedecor:standing_lamp_11" , "homedecor:standing_lamp_hi" ) cvt ( "homedecor:standing_lamp_14" , "homedecor:standing_lamp_hi" ) cvt ( "homedecor:table_lamp_0" , "homedecor:table_lamp_hi" ) cvt ( "homedecor:table_lamp_11" , "homedecor:table_lamp_hi" ) cvt ( "homedecor:table_lamp_14" , "homedecor:table_lamp_hi" ) cvt ( "homedecor:wall_lamp_off" , "homedecor:wall_lamp" ) cvt ( "homedecor:wall_lamp_on" , "homedecor:wall_lamp" ) -- =================================================================== cvt ("homedecor:speaker" , "coderblocks:hdspeaker" ) cvt ("homedecor:television" , "coderblocks:hdtv" ) cvt ("homedecor:wood_table_large" , "3dforniture:table" ) cvt ("homedecor:table" , "3dforniture:table" ) cvt ("homedecor:table_white" , "3dforniture:table" ) cvt ("homedecor:fence_chainlink" , "coderblocks:hdchainlink" ) cvt ("homedecor:stereo" , "coderblocks:hdstereo" ) cvt ("homedecor:refrigerator" , "coderblocks:refrigerator" ) -- =================================================================== neednode = "homedecor:utilitytable2" if minetest.registered_nodes [neednode] == nil then reg_node (":" .. neednode, { description = "Utility table mk2", tiles = { "homedecor_utility_table_top.png" , "homedecor_blanktile.png" , "homedecor_utility_table_legs.png" , "homedecor_utility_table_legs.png" , "homedecor_utility_table_legs.png" , "homedecor_utility_table_legs.png" } , sunlight_propagates = false, paramtype = "light", paramtype2 = "facedir", walkable = true, groups = { snappy = 3 }, sounds = default.sound_leaves() , }) end -- =================================================================== cvt ("homedecor:coin" , "coderblocks:gold_coin" ) -- =================================================================== -- End of module.