From c9f429b551529b9b7ee5ce28bf50d69dd69fdeae Mon Sep 17 00:00:00 2001 From: dhunt Date: Thu, 10 Oct 2013 17:33:30 -0700 Subject: [PATCH] incremental --- containers.lua | 165 +++++++++++++++++++++++++++++++++++++++++++++++++ craftitems.lua | 34 ++++++++-- depends.txt | 1 + init.lua | 4 ++ oilshale.lua | 29 ++++++++- refinery.lua | 6 ++ 6 files changed, 232 insertions(+), 7 deletions(-) diff --git a/containers.lua b/containers.lua index 8d1c8b6..9ca4468 100644 --- a/containers.lua +++ b/containers.lua @@ -1 +1,166 @@ +local oil_drum_max_load = 55 + +-- oil drum +-- gas can +-- lpg bottle (steel bottle + regulator) +-- large storage containers +-- very large storage container, possibly arbitrarily constructable like nuke reactor + + + +--[[ NEED: +textures: + steel drum + medium lpg bottle + pipes + +inv textures: + plastic gas can + small lpg bottle + lpg regulator + pipes + +craft items: + ^ lpg regulator + small lpg bottle + gas can + pipes + +register tool: + gas can + small lpg bottle + +register node: + oil drum + medium lpg bottle + large lpg bottle sections + pipes + +box models: + medium lpg bottle + large lpg bottle sections + oil drum + pipes + +]] + +minetest.register_craft({ + output = 'bitumen:oil_drum 2', + recipe = { + {'default:steel_ingot', 'technic:rubber','default:steel_ingot'}, + {'default:steel_ingot', '', 'default:steel_ingot'}, + {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'}, + } +}) + +minetest.register_craft({ + output = 'bitumen:lpg_regulator 4', + recipe = { + {'default:brass_ingot', '', 'default:brass_ingot'}, + {'', 'bitumen:lpg_pipe', 'bitumen:lpg_pipe'}, + {'', 'technic:rubber', ''}, + } +}) + + +minetest.register_craft({ + type = 'shapeless', + output = 'bitumen:small_lpg_bottle 1', + recipe = { 'bitumen:lpg_regulator','vessels:steel_bottle' }, + } +}) +--[[ +minetest.register_node("technic:water_can", { + description = "Water Can", + inventory_image = "technic_water_can.png", + stack_max = 1, + liquids_pointable = true, + on_use = function(itemstack, user, pointed_thing) + + if pointed_thing.type ~= "node" then + return end + n = minetest.env:get_node(pointed_thing.under) + + item=itemstack:to_table() + local load=nil + if item["metadata"]=="" then load=0 + else load=tonumber(item["metadata"]) + end + + if n.name == "default:water_source" then + if load+1<17 then + minetest.env:add_node(pointed_thing.under, {name="air"}) + load=load+1; + item["metadata"]=tostring(load) + technic.set_RE_wear(item,load,water_can_max_load) + itemstack:replace(item) + end + return itemstack + end + item=itemstack:to_table() + if load==0 then return end + + if n.name == "default:water_flowing" then + minetest.env:add_node(pointed_thing.under, {name="default:water_source"}) + load=load-1; + item["metadata"]=tostring(load) + technic.set_RE_wear(item,load,water_can_max_load) + itemstack:replace(item) + return itemstack + end + + n = minetest.env:get_node(pointed_thing.above) + if n.name == "air" then + minetest.env:add_node(pointed_thing.above, {name="default:water_source"}) + load=load-1; + item["metadata"]=tostring(load) + technic.set_RE_wear(item,load,water_can_max_load) + itemstack:replace(item) + return itemstack + end + end, +})]] + +minetest.register_node(":bitumen:oil_drum", { + description = "Oil Drum", + tiles = {"technic_copper_chest_top.png", "technic_copper_chest_top.png", "technic_copper_chest_side.png", + "technic_copper_chest_side.png", "technic_copper_chest_side.png", "technic_copper_chest_front.png"}, + paramtype2 = "facedir", + inventory_image = "technic_water_can.png", + --groups = chest_groups1, + stack_max = 1, + -- tube = tubes_properties,legacy_facedir_simple = true, + sounds = default.node_sound_wood_defaults(), + on_construct = function(pos) + local meta = minetest.env:get_meta(pos) + meta:set_string("formspec", + "invsize[10,10;]".. + "label[0,0;Copper Chest]".. + "list[current_name;main;0,1;10,4;]".. + "list[current_player;main;0,6;8,4;]".. + "background[-0.19,-0.25;10.4,10.75;ui_form_bg.png]".. + "background[0,1;10,4;ui_copper_chest_inventory.png]".. + "background[0,6;8,4;ui_main_inventory.png]") + meta:set_string("infotext", "Copper Chest") + local inv = meta:get_inventory() + inv:set_size("main", 10*4) + end, + + can_dig = chest_can_dig, + on_metadata_inventory_move = def_on_metadata_inventory_move, + on_metadata_inventory_put = def_on_metadata_inventory_put, + on_metadata_inventory_take = def_on_metadata_inventory_take +}) + +minetest.register_tool("bitumen:oil_drum", { + description = "55 Gallon Oil Drum", + inventory_image = "technic_battery.png", + tool_capabilities = { + charge = 0, + max_drop_level = 0, + groupcaps = { + fleshy = {times={}, uses=10000, maxlevel=0} + } + } +}) diff --git a/craftitems.lua b/craftitems.lua index e1a879a..053d2ca 100644 --- a/craftitems.lua +++ b/craftitems.lua @@ -6,6 +6,10 @@ minetest.register_craftitem(":bitumen:bitumen", { on_place_on_ground = minetest.craftitem_place_item, }) + + + +-- these are temporary until the piping system is done minetest.register_craftitem(":bitumen:synthetic_crude", { description = "Synthetic Crude Oil", inventory_image = "bitumen_synthetic_crude.png", @@ -47,8 +51,6 @@ minetest.register_craftitem(":bitumen:jet_fuel", { on_place_on_ground = minetest.craftitem_place_item, }) - - minetest.register_craftitem(":bitumen:lpg", { description = "LPG", inventory_image = "bitumen_lpg.png", @@ -58,11 +60,33 @@ minetest.register_craftitem(":bitumen:lpg", { + + +minetest.register_craftitem(":bitumen:lpg_regulator", { + description = "LPG Regulator", + inventory_image = "bitumen_lpg_regulator.png", + on_place_on_ground = minetest.craftitem_place_item, +}) + + +-- these may need to just be tools +minetest.register_craftitem(":bitumen:small_lpg_bottle", { + description = "Small LPG Bottle", + inventory_image = "bitumen_small_lpg_bottle.png", + on_place_on_ground = minetest.craftitem_place_item, +}) + +minetest.register_craftitem(":bitumen:gas_can", { + description = "Plastic Gas Can", + inventory_image = "bitumen_gas_can.png", + on_place_on_ground = minetest.craftitem_place_item, +}) + + + + - - - diff --git a/depends.txt b/depends.txt index 523579b..43116e6 100644 --- a/depends.txt +++ b/depends.txt @@ -1,3 +1,4 @@ moretrees pipeworks technic +vessels \ No newline at end of file diff --git a/init.lua b/init.lua index afe9cd6..c7fcac3 100644 --- a/init.lua +++ b/init.lua @@ -2,6 +2,10 @@ local modpath = minetest.get_modpath("bitumen") -- dofile(modpath.."/plastic.lua") dofile(modpath.."/craftitems.lua") dofile(modpath.."/containers.lua") + +--dofile(modpath.."/pipes.lua") +--dofile(modpath.."/pumping.lua") + dofile(modpath.."/tarsands.lua") dofile(modpath.."/oilshale.lua") dofile(modpath.."/refinery.lua") diff --git a/oilshale.lua b/oilshale.lua index 89970d2..82b2323 100644 --- a/oilshale.lua +++ b/oilshale.lua @@ -1,5 +1,30 @@ + +--[[ NEED: + +textures: + oil shale + crushed oil shale + +node defs: + (tweak) oil shale + +craftitem: + crushed oil shale + +ore reg: + (tweak) oil shale + +grinder recipe: + oil shale -> crushed oil shale + +extractor recipe: + crushed oil shale -> bitumen + +]] + + -- need to get the info for stone-type things -minetest.register_node( "atomic:oil_shale", { +minetest.register_node( "bitumen:oil_shale", { description = "Oil Shale", tiles = { "default_coal_block.png" }, is_ground_content = true, @@ -11,7 +36,7 @@ minetest.register_node( "atomic:oil_shale", { minetest.register_ore({ ore_type = "sheet", - ore = "atomic:oil_shale", + ore = "bitumen:oil_shale", wherein = "air", clust_scarcity = 1, clust_num_ores = 1, diff --git a/refinery.lua b/refinery.lua index fc81fb5..188a6b5 100644 --- a/refinery.lua +++ b/refinery.lua @@ -3,8 +3,14 @@ -- distillation column -- bottler? +--[[ NEED: +machine defs: + synth crude upgrader + +]] + minetest.register_craft({ output = 'bitumen:cracking_boiler', recipe = {