4 files added
2 files renamed
5 files modified
1 files copied
1 files deleted
New file |
| | |
| | | --Minetest 0.4.6 mod: concrete |
| | | --(c) 2013 by RealBadAngel <mk@realbadangel.pl> |
| | | |
| | | minetest.register_craft({ |
| | | output = ':technic:rebar 6', |
| | | recipe = { |
| | | {'','', 'default:steel_ingot'}, |
| | | {'','default:steel_ingot',''}, |
| | | {'default:steel_ingot', '', ''}, |
| | | } |
| | | }) |
| | | |
| | | minetest.register_craft({ |
| | | output = ':technic:concrete 5', |
| | | recipe = { |
| | | {'default:stone','technic:rebar','default:stone'}, |
| | | {'technic:rebar','default:stone','technic:rebar'}, |
| | | {'default:stone','technic:rebar','default:stone'}, |
| | | } |
| | | }) |
| | | |
| | | minetest.register_craft({ |
| | | output = ':technic:concrete_post_platform 6', |
| | | recipe = { |
| | | {'technic:concrete','technic:concrete_post','technic:concrete'}, |
| | | } |
| | | }) |
| | | |
| | | minetest.register_craft({ |
| | | output = ':technic:concrete_post 12', |
| | | recipe = { |
| | | {'default:stone','technic:rebar','default:stone'}, |
| | | {'default:stone','technic:rebar','default:stone'}, |
| | | {'default:stone','technic:rebar','default:stone'}, |
| | | } |
| | | }) |
| | | |
| | | platform_box = {-0.5 , 0.3 , -0.5 , 0.5 , 0.5 , 0.5 } |
| | | post_str_y={ -0.15 , -0.5 , -0.15 , 0.15 , 0.5 , 0.15 } |
| | | post_str_x1={ 0 , -0.3 , -0.1, 0.5 , 0.3 , 0.1 } -- x+ |
| | | post_str_z1={ -0.1 , -0.3 , 0, 0.1 , 0.3 , 0.5 } -- z+ |
| | | post_str_x2={ 0 , -0.3 , -0.1, -0.5 , 0.3 , 0.1 } -- x- |
| | | post_str_z2={ -0.1 , -0.3 , 0, 0.1 , 0.3 , -0.5 } -- z- |
| | | |
| | | minetest.register_craftitem(":technic:rebar", { |
| | | description = "Rebar", |
| | | inventory_image = "technic_rebar.png", |
| | | stack_max = 99, |
| | | }) |
| | | |
| | | minetest.register_craftitem(":technic:concrete", { |
| | | description = "Concrete Block", |
| | | inventory_image = "technic_concrete_block.png", |
| | | stack_max = 99, |
| | | }) |
| | | |
| | | minetest.register_craftitem(":technic:concrete_post", { |
| | | description = "Concrete Post", |
| | | stack_max = 99, |
| | | }) |
| | | |
| | | minetest.register_craftitem(":technic:concrete_post_platform", { |
| | | description = "Concrete Post Platform", |
| | | stack_max = 99, |
| | | }) |
| | | |
| | | minetest.register_node(":technic:concrete", { |
| | | description = "Concrete Block", |
| | | tile_images = {"technic_concrete_block.png",}, |
| | | is_ground_content = true, |
| | | groups={cracky=1,level=2}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | on_construct = function(pos) |
| | | meta=minetest.env:get_meta(pos) |
| | | meta:set_float("postlike",1) |
| | | check_post_connections (pos,1) |
| | | end, |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | check_post_connections (pos,0) |
| | | end, |
| | | }) |
| | | |
| | | minetest.register_node(":technic:concrete_post_platform", { |
| | | description = "Concrete Post Platform", |
| | | tile_images = {"technic_concrete_block.png",}, |
| | | is_ground_content = true, |
| | | groups={cracky=1,level=2}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = {platform_box} |
| | | }, |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = {platform_box} |
| | | }, |
| | | on_place=function (itemstack, placer, pointed_thing) |
| | | local node=minetest.env:get_node(pointed_thing.under) |
| | | if minetest.get_item_group(node.name, "concrete_post")==0 then |
| | | return minetest.item_place_node(itemstack, placer, pointed_thing) |
| | | end |
| | | local meta=minetest.env:get_meta(pointed_thing.under) |
| | | y1=meta:get_float("y1") |
| | | platform=meta:get_float("platform") |
| | | if y1==1 or platform==1 then |
| | | return minetest.item_place_node(itemstack, placer, pointed_thing) |
| | | end |
| | | y2=meta:get_float("y2") |
| | | x1=meta:get_float("x1") |
| | | x2=meta:get_float("x2") |
| | | z1=meta:get_float("z1") |
| | | z2=meta:get_float("z2") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,1) |
| | | meta:set_float("platform",1) |
| | | hacky_swap_posts(pointed_thing.under,"technic:concrete_post"..rule) |
| | | itemstack:take_item() |
| | | placer:set_wielded_item(itemstack) |
| | | return itemstack |
| | | end, |
| | | }) |
| | | |
| | | |
| | | minetest.register_node(":technic:concrete_post", { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = { -0.15 , -0.5 , -0.15 , 0.15 , 0.5 , 0.15 }}, |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = {-0.15 , -0.5 , -0.15 , 0.15 , 0.5 , 0.15 }}, |
| | | on_construct = function(pos) |
| | | meta=minetest.env:get_meta(pos) |
| | | meta:set_int("postlike",1) |
| | | meta:set_int("platform",0) |
| | | meta:set_int("x1",0) |
| | | meta:set_int("x2",0) |
| | | meta:set_int("y1",0) |
| | | meta:set_int("y2",0) |
| | | meta:set_int("z1",0) |
| | | meta:set_int("z2",0) |
| | | check_post_connections (pos,1) |
| | | end, |
| | | |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | check_post_connections (pos,0) |
| | | end, |
| | | |
| | | }) |
| | | |
| | | local x1,x2,y1,z1,z2 |
| | | local count=0 |
| | | |
| | | for x1 = 0, 1, 1 do --x- |
| | | for x2 = 0, 1, 1 do --x+ |
| | | for z1 = 0, 1, 1 do --z- |
| | | for z2 = 0, 1, 1 do --z+ |
| | | |
| | | temp_x1={} temp_x2={} temp_z1={} temp_z2={} |
| | | |
| | | if x1==1 then temp_x1=post_str_x1 end |
| | | if x2==1 then temp_x2=post_str_x2 end |
| | | if z1==1 then temp_z1=post_str_z1 end |
| | | if z2==1 then temp_z2=post_str_z2 end |
| | | |
| | | |
| | | minetest.register_node(":technic:concrete_post"..count, { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,not_in_creative_inventory=1,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | drop = "technic:concrete_post", |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | temp_x1,temp_x2,post_str_y,temp_z1,temp_z2, |
| | | }}, |
| | | |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | temp_x1,temp_x2,post_str_y,temp_z1,temp_z2, |
| | | }}, |
| | | |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | check_post_connections (pos,0) |
| | | end, |
| | | |
| | | }) |
| | | |
| | | minetest.register_node(":technic:concrete_post"..count+16, { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,not_in_creative_inventory=1,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | drop = "technic:concrete_post_platform", |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | platform_box,temp_x1,temp_x2,post_str_y,temp_z1,temp_z2, |
| | | }}, |
| | | |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | platform_box,temp_x1,temp_x2,post_str_y,temp_z1,temp_z2, |
| | | }}, |
| | | |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | dig_post_with_platform (pos,oldnode,oldmetadata) |
| | | end, |
| | | }) |
| | | |
| | | count=count+1 end end end end |
| | | |
| | | minetest.register_node(":technic:concrete_post32", { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,not_in_creative_inventory=1,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | drop = "technic:concrete_post", |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = {-0.5,-0.3,-0.1,0.5,0.3,0.1}, |
| | | }, |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | post_str_x1,post_str_x2, |
| | | }}, |
| | | |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | check_post_connections (pos,0) |
| | | end, |
| | | }) |
| | | minetest.register_node(":technic:concrete_post33", { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,not_in_creative_inventory=1,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | drop = "technic:concrete_post", |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | post_str_z1,post_str_z2, |
| | | }}, |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | post_str_z1,post_str_z2, |
| | | }}, |
| | | |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | check_post_connections (pos,0) |
| | | end, |
| | | }) |
| | | |
| | | minetest.register_node(":technic:concrete_post34", { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,not_in_creative_inventory=1,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | drop = "technic:concrete_post_platform", |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | platform_box,post_str_x1,post_str_x2, |
| | | }}, |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | platform_box,post_str_x1,post_str_x2, |
| | | }}, |
| | | |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | dig_post_with_platform (pos,oldnode,oldmetadata) |
| | | end, |
| | | }) |
| | | minetest.register_node(":technic:concrete_post35", { |
| | | description = "Concrete Post", |
| | | tiles = {"technic_concrete_block.png"}, |
| | | groups={cracky=1,level=2,not_in_creative_inventory=1,concrete_post=1}, |
| | | sounds = default.node_sound_stone_defaults(), |
| | | drop = "technic:concrete_post_platform", |
| | | paramtype = "light", |
| | | light_source = 0, |
| | | sunlight_propagates = true, |
| | | drawtype = "nodebox", |
| | | selection_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | platform_box,post_str_z1,post_str_z2, |
| | | }}, |
| | | node_box = { |
| | | type = "fixed", |
| | | fixed = { |
| | | platform_box,post_str_z1,post_str_z2, |
| | | }}, |
| | | after_dig_node = function (pos, oldnode, oldmetadata, digger) |
| | | dig_post_with_platform (pos,oldnode,oldmetadata) |
| | | end, |
| | | }) |
| | | |
| | | dig_post_with_platform = function (pos,oldnode,oldmetadata) |
| | | x1=tonumber(oldmetadata.fields["x1"]) |
| | | x2=tonumber(oldmetadata.fields["x2"]) |
| | | y1=tonumber(oldmetadata.fields["y1"]) |
| | | y2=tonumber(oldmetadata.fields["y2"]) |
| | | z1=tonumber(oldmetadata.fields["z1"]) |
| | | z2=tonumber(oldmetadata.fields["z2"]) |
| | | print(dump(x1)) |
| | | oldmetadata.fields["platform"]="0" |
| | | local rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,0) |
| | | print(dump(rule)) |
| | | oldnode.name="technic:concrete_post"..rule |
| | | minetest.env:set_node(pos,oldnode) |
| | | meta = minetest.env:get_meta(pos) |
| | | meta:from_table(oldmetadata) |
| | | end |
| | | |
| | | check_post_connections = function(pos,mode) |
| | | local pos1={} |
| | | pos1.x=pos.x |
| | | pos1.y=pos.y |
| | | pos1.z=pos.z |
| | | tempx1=0 |
| | | tempx2=0 |
| | | tempy1=0 |
| | | tempy2=0 |
| | | tempz1=0 |
| | | tempz2=0 |
| | | |
| | | pos1.x=pos1.x+1 |
| | | if minetest.env:get_meta(pos1):get_int("postlike")==1 then |
| | | x2=mode |
| | | x1=minetest.env:get_meta(pos1):get_int("x1") |
| | | y1=minetest.env:get_meta(pos1):get_int("y1") |
| | | y2=minetest.env:get_meta(pos1):get_int("y2") |
| | | z1=minetest.env:get_meta(pos1):get_int("z1") |
| | | z2=minetest.env:get_meta(pos1):get_int("z2") |
| | | platform=minetest.env:get_meta(pos1):get_int("platform") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,platform) |
| | | hacky_swap_posts(pos1,"technic:concrete_post"..rule) |
| | | meta=minetest.env:get_meta(pos1) |
| | | meta:set_int("x2",x2) |
| | | tempx1=mode |
| | | end |
| | | |
| | | pos1.x=pos1.x-2 |
| | | if minetest.env:get_meta(pos1):get_int("postlike")==1 then |
| | | x1=mode |
| | | x2=minetest.env:get_meta(pos1):get_int("x2") |
| | | y1=minetest.env:get_meta(pos1):get_int("y1") |
| | | y2=minetest.env:get_meta(pos1):get_int("y2") |
| | | z1=minetest.env:get_meta(pos1):get_int("z1") |
| | | z2=minetest.env:get_meta(pos1):get_int("z2") |
| | | platform=minetest.env:get_meta(pos1):get_int("platform") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,platform) |
| | | hacky_swap_posts(pos1,"technic:concrete_post"..rule) |
| | | meta=minetest.env:get_meta(pos1) |
| | | meta:set_int("x1",x1) |
| | | tempx2=mode |
| | | end |
| | | |
| | | pos1.x=pos1.x+1 |
| | | |
| | | pos1.y=pos1.y+1 |
| | | if minetest.env:get_meta(pos1):get_int("postlike")==1 then |
| | | y2=mode |
| | | x1=minetest.env:get_meta(pos1):get_int("x1") |
| | | x2=minetest.env:get_meta(pos1):get_int("x2") |
| | | y1=minetest.env:get_meta(pos1):get_int("y1") |
| | | z1=minetest.env:get_meta(pos1):get_int("z1") |
| | | z2=minetest.env:get_meta(pos1):get_int("z2") |
| | | platform=minetest.env:get_meta(pos1):get_int("platform") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,platform) |
| | | hacky_swap_posts(pos1,"technic:concrete_post"..rule) |
| | | meta=minetest.env:get_meta(pos1) |
| | | meta:set_int("y2",y2) |
| | | tempy1=mode |
| | | end |
| | | |
| | | pos1.y=pos1.y-2 |
| | | if minetest.env:get_meta(pos1):get_int("postlike")==1 then |
| | | y1=mode |
| | | x1=minetest.env:get_meta(pos1):get_int("x1") |
| | | x2=minetest.env:get_meta(pos1):get_int("x2") |
| | | y2=minetest.env:get_meta(pos1):get_int("y2") |
| | | z1=minetest.env:get_meta(pos1):get_int("z1") |
| | | z2=minetest.env:get_meta(pos1):get_int("z2") |
| | | platform=minetest.env:get_meta(pos1):get_int("platform") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,platform) |
| | | hacky_swap_posts(pos1,"technic:concrete_post"..rule) |
| | | meta=minetest.env:get_meta(pos1) |
| | | meta:set_int("y1",y1) |
| | | tempy2=mode |
| | | end |
| | | pos1.y=pos1.y+1 |
| | | |
| | | pos1.z=pos1.z+1 |
| | | if minetest.env:get_meta(pos1):get_int("postlike")==1 then |
| | | z2=mode |
| | | x1=minetest.env:get_meta(pos1):get_int("x1") |
| | | x2=minetest.env:get_meta(pos1):get_int("x2") |
| | | y1=minetest.env:get_meta(pos1):get_int("y1") |
| | | y2=minetest.env:get_meta(pos1):get_int("y2") |
| | | z1=minetest.env:get_meta(pos1):get_int("z1") |
| | | platform=minetest.env:get_meta(pos1):get_int("platform") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,platform) |
| | | hacky_swap_posts(pos1,"technic:concrete_post"..rule) |
| | | meta=minetest.env:get_meta(pos1) |
| | | meta:set_int("z2",z2) |
| | | tempz1=mode |
| | | end |
| | | pos1.z=pos1.z-2 |
| | | |
| | | if minetest.env:get_meta(pos1):get_int("postlike")==1 then |
| | | z1=mode |
| | | x1=minetest.env:get_meta(pos1):get_int("x1") |
| | | x2=minetest.env:get_meta(pos1):get_int("x2") |
| | | y1=minetest.env:get_meta(pos1):get_int("y1") |
| | | y2=minetest.env:get_meta(pos1):get_int("y2") |
| | | z2=minetest.env:get_meta(pos1):get_int("z2") |
| | | platform=minetest.env:get_meta(pos1):get_int("platform") |
| | | rule=make_post_rule_number(x1,x2,y1,y2,z1,z2,platform) |
| | | hacky_swap_posts(pos1,"technic:concrete_post"..rule) |
| | | meta=minetest.env:get_meta(pos1) |
| | | meta:set_int("z1",z1) |
| | | tempz2=mode |
| | | end |
| | | pos1.z=pos1.z+1 |
| | | if mode==1 then |
| | | meta=minetest.env:get_meta(pos) |
| | | meta:set_int("x1",tempx1) |
| | | meta:set_int("x2",tempx2) |
| | | meta:set_int("y1",tempy1) |
| | | meta:set_int("y2",tempy2) |
| | | meta:set_int("z1",tempz1) |
| | | meta:set_int("z2",tempz2) |
| | | rule=make_post_rule_number(tempx1,tempx2,tempy1,tempy2,tempz1,tempz2,0) |
| | | hacky_swap_posts(pos,"technic:concrete_post"..rule) |
| | | end |
| | | end |
| | | |
| | | function make_post_rule_number (x1,x2,y1,y2,z1,z2,platform) |
| | | local tempy=y1+y2 |
| | | local tempx=x1+x2 |
| | | local tempz=z1+z2 |
| | | if platform==0 then |
| | | if tempy==0 and tempx==0 and tempz==0 then return 0 end |
| | | if x1==1 and x2==1 and tempz==0 and tempy==0 then return 32 end |
| | | if z1==1 and z2==1 and tempx==0 and tempy==0 then return 33 end |
| | | return z2+z1*2+x2*4+x1*8 |
| | | else |
| | | if tempy==0 and tempx==0 and tempz==0 then return 16 end |
| | | if x1==1 and x2==1 and tempz==0 and tempy==0 then return 34 end |
| | | if z1==1 and z2==1 and tempx==0 and tempy==0 then return 35 end |
| | | return z2+z1*2+x2*4+x1*8+16 |
| | | end |
| | | end |
| | | |
| | | function hacky_swap_posts(pos,name) |
| | | local node = minetest.env:get_node(pos) |
| | | if node.name == "technic:concrete" then |
| | | return nil |
| | | end |
| | | local meta = minetest.env:get_meta(pos) |
| | | local meta0 = meta:to_table() |
| | | node.name = name |
| | | local meta0 = meta:to_table() |
| | | minetest.env:set_node(pos,node) |
| | | meta = minetest.env:get_meta(pos) |
| | | meta:from_table(meta0) |
| | | return 1 |
| | | end |
New file |
| | |
| | | default |
| | | moreblocks |
| | | technic_worldgen |
| | | concrete |
New file |
| | |
| | | -- Minetest 0.4.6 mod: extranodes |
| | | -- namespace: technic |
| | | |
| | | --register stairslike nodes |
| | | register_stair_slab_panel_micro("technic", "marble", "technic:marble", |
| | | {cracky=2, not_in_creative_inventory=1}, |
| | | {"technic_marble.png"}, |
| | | "Marble", |
| | | "marble", |
| | | "facedir", |
| | | 0) |
| | | |
| | | register_stair_slab_panel_micro("technic", "marble_bricks", "technic:marble_bricks", |
| | | {cracky=2, not_in_creative_inventory=1}, |
| | | {"technic_marble_bricks.png"}, |
| | | "Marble Bricks", |
| | | "marble_bricks", |
| | | "facedir", |
| | | 0) |
| | | |
| | | register_stair_slab_panel_micro("technic", "granite", "technic:granite", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_granite.png"}, |
| | | "Granite", |
| | | "granite", |
| | | "facedir", |
| | | 0) |
| | | |
| | | register_stair_slab_panel_micro("technic", "concrete", "technic:concrete", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_concrete_block.png"}, |
| | | "Concrete", |
| | | "concrete", |
| | | "facedir", |
| | | 0) |
| | | |
| | | --register nodes in circular saw if aviable |
| | | if circular_saw then |
| | | for i,v in ipairs({"concrete", "marble", "marble_bricks", "granite", "default:obsidian"}) do |
| | | table.insert(circular_saw.known_stairs, "technic:" ..v); |
| | | end |
| | | end |
| | |
| | | default |
| | | moreores |
| | | pipeworks |
| | | mesecons |
| | | moreblocks |
| | | technic_worldgen |
| | | |
| | |
| | | -- Minetest 0.4.6 : technic |
| | | -- Minetest 0.4.6 mod: technic |
| | | -- namespace: technic |
| | | -- (c) 2012-2013 by RealBadAngel <mk@realbadangel.pl> |
| | | |
| | | modpath=minetest.get_modpath("technic") |
| | | |
| | |
| | | dofile(modpath.."/mithril_chest.lua") |
| | | |
| | | --items |
| | | dofile(modpath.."/concrete.lua") |
| | | dofile(modpath.."/items.lua") |
| | | |
| | | --LV machines |
| | |
| | | dofile(modpath.."/deployer.lua") |
| | | dofile(modpath.."/constructor.lua") |
| | | dofile(modpath.."/frames.lua") |
| | | |
| | | |
| | | if enable_item_drop then dofile(modpath.."/item_drop.lua") end |
| | | if enable_item_pickup then dofile(modpath.."/item_pickup.lua") end |
| | |
| | | |
| | | dofile(modpath.."/nodes.lua") |
| | | dofile(modpath.."/oregen.lua") |
| | | --dofile(modpath.."/stairslike.lua") |
| | | dofile(modpath.."/crafts.lua") |
| | |
| | | minetest.register_ore({ |
| | | ore_type = "scatter", |
| | | ore = "technic:mineral_diamond", |
| | | wherein = "default:stone", |
| | | clust_scarcity = 11*11*11, |
| | | clust_num_ores = 4, |
| | | clust_size = 3, |
| | | height_min = -31000, |
| | | height_max = -450, |
| | | }) |
| | | |
| | | minetest.register_ore({ |
| | | ore_type = "scatter", |
| | | ore = "technic:mineral_uranium", |
| | | wherein = "default:stone", |
| | | clust_scarcity = 10*10*10, |
| | |
| | | clust_scarcity = 1, |
| | | clust_num_ores = 1, |
| | | clust_size = 3, |
| | | height_min = -150, |
| | | height_min = -31000, |
| | | height_max = -50, |
| | | noise_threshhold = 0.5, |
| | | noise_threshhold = 0.4, |
| | | noise_params = {offset=0, scale=15, spread={x=150, y=150, z=150}, seed=23, octaves=3, persist=0.70} |
| | | }) |
| | | minetest.register_ore({ |
| | |
| | | clust_scarcity = 1, |
| | | clust_num_ores = 1, |
| | | clust_size = 4, |
| | | height_min = -100, |
| | | height_max = -250, |
| | | noise_threshhold = 0.5, |
| | | height_min = -31000, |
| | | height_max = -150, |
| | | noise_threshhold = 0.4, |
| | | noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70} |
| | | }) |
| | | |
| | |
| | | -- cross-compatibility with default obsidian |
| | | |
| | | function register_technic_stairs_alias(modname, origname, newmod, newname) |
| | | minetest.register_alias(modname .. ":slab_" .. origname, newmod..":slab_" .. newname) |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_inverted", newmod..":slab_" .. newname .. "_inverted") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_wall", newmod..":slab_" .. newname .. "_wall") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_quarter", newmod..":slab_" .. newname .. "_quarter") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_quarter_inverted", newmod..":slab_" .. newname .. "_quarter_inverted") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_quarter_wall", newmod..":slab_" .. newname .. "_quarter_wall") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_three_quarter", newmod..":slab_" .. newname .. "_three_quarter") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_three_quarter_inverted", newmod..":slab_" .. newname .. "_three_quarter_inverted") |
| | | minetest.register_alias(modname .. ":slab_" .. origname .. "_three_quarter_wall", newmod..":slab_" .. newname .. "_three_quarter_wall") |
| | | minetest.register_alias(modname .. ":stair_" .. origname, newmod..":stair_" .. newname) |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_inverted", newmod..":stair_" .. newname .. "_inverted") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_wall", newmod..":stair_" .. newname .. "_wall") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half", newmod..":stair_" .. newname .. "_wall_half") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half_inverted", newmod..":stair_" .. newname .. "_wall_half_inverted") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_half", newmod..":stair_" .. newname .. "_half") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_half_inverted", newmod..":stair_" .. newname .. "_half_inverted") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_right_half", newmod..":stair_" .. newname .. "_right_half") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_right_half_inverted", newmod..":stair_" .. newname .. "_right_half_inverted") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half", newmod..":stair_" .. newname .. "_wall_half") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half_inverted", newmod..":stair_" .. newname .. "_wall_half_inverted") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_inner", newmod..":stair_" .. newname .. "_inner") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_inner_inverted", newmod..":stair_" .. newname .. "_inner_inverted") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_outer", newmod..":stair_" .. newname .. "_outer") |
| | | minetest.register_alias(modname .. ":stair_" .. origname .. "_outer_inverted", newmod..":stair_" .. newname .. "_outer_inverted") |
| | | minetest.register_alias(modname .. ":panel_" .. origname .. "_bottom", newmod..":panel_" .. newname .. "_bottom") |
| | | minetest.register_alias(modname .. ":panel_" .. origname .. "_top", newmod..":panel_" .. newname .. "_top") |
| | | minetest.register_alias(modname .. ":panel_" .. origname .. "_vertical", newmod..":panel_" .. newname .. "_vertical") |
| | | minetest.register_alias(modname .. ":micro_" .. origname .. "_bottom", newmod..":micro_" .. newname .. "_bottom") |
| | | minetest.register_alias(modname .. ":micro_" .. origname .. "_top", newmod..":micro_" .. newname .. "_top") |
| | | end |
| | | |
| | | minetest.register_alias("technic:obsidian", "default:obsidian") |
| | | minetest.register_alias("moreblocks:obsidian", "default:obsidian") |
| | | |
| | | register_stair_slab_panel_micro( |
| | | ":default", |
| | | "obsidian", |
| | | "default:obsidian", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"default_obsidian.png"}, |
| | | "Obsidian", |
| | | "default:obsidian", |
| | | "none", |
| | | light |
| | | ) |
| | | |
| | | register_technic_stairs_alias("moreblocks", "obsidian", "default", "obsidian") |
| | | table.insert(circular_saw.known_stairs, "default:obsidian") |
| | | |
| | | -- other stairs/slabs |
| | | |
| | | if type(register_stair_and_slab_and_panel_and_micro) == "function" then |
| | | register_stair_and_slab_and_panel_and_micro(":stairsplus", "marble", "technic:marble", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_marble.png"}, |
| | | "Marble Stairs", |
| | | "Marble Slab", |
| | | "Marble Panel", |
| | | "Marble Microblock", |
| | | "marble") |
| | | register_stair_and_slab_and_panel_and_micro(":stairsplus", "marble_bricks", "technic:marble_bricks", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_marble_bricks.png"}, |
| | | "Marble Bricks Stairs", |
| | | "Marble Bricks Slab", |
| | | "Marble Bricks Panel", |
| | | "Marble Bricks Microblock", |
| | | "marble_bricks") |
| | | register_stair_and_slab_and_panel_and_micro(":stairsplus", "granite", "technic:granite", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_granite.png"}, |
| | | "Granite Stairs", |
| | | "Granite Slab", |
| | | "Granite Panel", |
| | | "Granite Microblock", |
| | | "granite") |
| | | register_stair_and_slab_and_panel_and_micro(":stairsplus", "obsidian", "default:obsidian", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"default_obsidian.png"}, |
| | | "Obsidian Stairs", |
| | | "Obsidian Slab", |
| | | "Obsidian Panel", |
| | | "Obsidian Microblock", |
| | | "obsidian") |
| | | end |
| | | |
| | | if type(register_stair_slab_panel_micro) == "function" then |
| | | register_stair_slab_panel_micro(":stairsplus", "marble", "technic:marble", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_marble.png"}, |
| | | "Marble Stairs", |
| | | "Marble Slab", |
| | | "Marble Panel", |
| | | "Marble Microblock", |
| | | "marble") |
| | | register_stair_slab_panel_micro(":stairsplus", "marble_bricks", "technic:marble_bricks", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_marble_bricks.png"}, |
| | | "Marble Bricks Stairs", |
| | | "Marble Bricks Slab", |
| | | "Marble Bricks Panel", |
| | | "Marble Bricks Microblock", |
| | | "marble_bricks") |
| | | register_stair_slab_panel_micro(":stairsplus", "granite", "technic:granite", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_granite.png"}, |
| | | "Granite Stairs", |
| | | "Granite Slab", |
| | | "Granite Panel", |
| | | "Granite Microblock", |
| | | "granite") |
| | | register_stair_slab_panel_micro(":stairsplus", "obsidian", "technic:obsidian", |
| | | {cracky=3, not_in_creative_inventory=1}, |
| | | {"technic_obsidian.png"}, |
| | | "Obsidian Stairs", |
| | | "Obsidian Slab", |
| | | "Obsidian Panel", |
| | | "Obsidian Microblock", |
| | | "obsidian") |
| | | end |