many worldgen mods and gonna try technic now
This commit is contained in:
1 parent
bac6ac94a3
commit
548749cb1a
4811 files changed
+163271
-1
No files matched your search
@@ -0,0 +1,6 @@
|
||||
default
|
||||
technic?
|
||||
technic_chests?
|
||||
technic_worldgen?
|
||||
intllib?
|
||||
drawers?
|
||||
@@ -0,0 +1,45 @@
|
||||
if not minetest.get_modpath("drawers") then
|
||||
return
|
||||
end
|
||||
|
||||
local INT, STRING =
|
||||
wrench.META_TYPE_INT,
|
||||
wrench.META_TYPE_STRING
|
||||
|
||||
-- assemble definitions for type 1,2 and 4
|
||||
for _, drawer_type in ipairs({1,2,4}) do
|
||||
|
||||
local def = {
|
||||
lists = {"upgrades"},
|
||||
metas = {},
|
||||
after_place = drawers.spawn_visuals
|
||||
}
|
||||
|
||||
for i=1,drawer_type do
|
||||
|
||||
local suffix
|
||||
if drawer_type == 1 then
|
||||
-- no suffix for base type
|
||||
suffix = ""
|
||||
else
|
||||
-- index as suffix
|
||||
suffix = i
|
||||
end
|
||||
|
||||
def.metas["name" .. suffix] = STRING
|
||||
def.metas["count" .. suffix] = INT
|
||||
def.metas["max_count" .. suffix] = INT
|
||||
def.metas["base_stack_max" .. suffix] = INT
|
||||
def.metas["entity_infotext" .. suffix] = STRING
|
||||
def.metas["stack_max_factor" .. suffix] = INT
|
||||
def.metas["meta_itemstack" .. suffix] = INT
|
||||
def.metas["itemstack_wear" .. suffix] = INT
|
||||
end
|
||||
|
||||
wrench:register_node("drawers:wood" .. drawer_type, def)
|
||||
wrench:register_node("drawers:acacia_wood" .. drawer_type, def)
|
||||
wrench:register_node("drawers:aspen_wood" .. drawer_type, def)
|
||||
wrench:register_node("drawers:junglewood" .. drawer_type, def)
|
||||
wrench:register_node("drawers:pine_wood" .. drawer_type, def)
|
||||
|
||||
end
|
||||
@@ -0,0 +1,179 @@
|
||||
--[[
|
||||
Wrench mod
|
||||
|
||||
Adds a wrench that allows the player to pickup nodes that contain an inventory
|
||||
with items or metadata that needs perserving.
|
||||
The wrench has the same tool capability as the normal hand.
|
||||
To pickup a node simply right click on it. If the node contains a formspec,
|
||||
you will need to shift+right click instead.
|
||||
Because it enables arbitrary nesting of chests, and so allows the player
|
||||
to carry an unlimited amount of material at once, this wrench is not
|
||||
available to survival-mode players.
|
||||
--]]
|
||||
|
||||
local LATEST_SERIALIZATION_VERSION = 1
|
||||
|
||||
wrench = {}
|
||||
|
||||
local modpath = minetest.get_modpath(minetest.get_current_modname())
|
||||
dofile(modpath.."/support.lua")
|
||||
dofile(modpath.."/technic.lua")
|
||||
dofile(modpath.."/drawers.lua")
|
||||
|
||||
-- Boilerplate to support localized strings if intllib mod is installed.
|
||||
local S = rawget(_G, "intllib") and intllib.Getter() or function(s) return s end
|
||||
|
||||
local function get_meta_type(name, metaname)
|
||||
local def = wrench.registered_nodes[name]
|
||||
return def and def.metas and def.metas[metaname] or nil
|
||||
end
|
||||
|
||||
local function get_pickup_name(name)
|
||||
return "wrench:picked_up_"..(name:gsub(":", "_"))
|
||||
end
|
||||
|
||||
local function restore(pos, placer, itemstack)
|
||||
local itemname = itemstack:get_name()
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local data = itemstack:get_meta():get_string("data")
|
||||
data = (data ~= "" and data) or itemstack:get_metadata()
|
||||
data = minetest.deserialize(data)
|
||||
if not data then
|
||||
minetest.remove_node(pos)
|
||||
minetest.log("error", placer:get_player_name().." wanted to place "..
|
||||
itemname.." at "..minetest.pos_to_string(pos)..
|
||||
", but it had no data.")
|
||||
minetest.log("verbose", "itemstack: "..itemstack:to_string())
|
||||
return true
|
||||
end
|
||||
minetest.set_node(pos, {name = data.name, param2 = node.param2})
|
||||
for name, value in pairs(data.metas) do
|
||||
local meta_type = get_meta_type(data.name, name)
|
||||
if meta_type == wrench.META_TYPE_INT then
|
||||
meta:set_int(name, value)
|
||||
elseif meta_type == wrench.META_TYPE_FLOAT then
|
||||
meta:set_float(name, value)
|
||||
elseif meta_type == wrench.META_TYPE_STRING then
|
||||
meta:set_string(name, value)
|
||||
end
|
||||
end
|
||||
local lists = data.lists
|
||||
for listname, list in pairs(lists) do
|
||||
inv:set_list(listname, list)
|
||||
end
|
||||
itemstack:take_item()
|
||||
return itemstack
|
||||
end
|
||||
|
||||
for name, info in pairs(wrench.registered_nodes) do
|
||||
local olddef = minetest.registered_nodes[name]
|
||||
if olddef then
|
||||
local newdef = {}
|
||||
for key, value in pairs(olddef) do
|
||||
newdef[key] = value
|
||||
end
|
||||
newdef.stack_max = 1
|
||||
newdef.description = S("%s with items"):format(newdef.description)
|
||||
newdef.groups = {}
|
||||
newdef.groups.not_in_creative_inventory = 1
|
||||
newdef.on_construct = nil
|
||||
newdef.on_destruct = nil
|
||||
newdef.after_place_node = function(pos, placer, itemstack)
|
||||
|
||||
-- call restoration function with on_plcae callbacks
|
||||
local new_stack = restore(pos, placer, itemstack)
|
||||
|
||||
if type(info.after_place) == "function" then
|
||||
-- call custom after_place function
|
||||
info.after_place(pos)
|
||||
end
|
||||
|
||||
return new_stack
|
||||
end
|
||||
minetest.register_node(":"..get_pickup_name(name), newdef)
|
||||
end
|
||||
end
|
||||
|
||||
minetest.register_tool("wrench:wrench", {
|
||||
description = S("Wrench"),
|
||||
inventory_image = "technic_wrench.png",
|
||||
tool_capabilities = {
|
||||
full_punch_interval = 0.9,
|
||||
max_drop_level = 0,
|
||||
groupcaps = {
|
||||
crumbly = {times={[2]=3.00, [3]=0.70}, uses=0, maxlevel=1},
|
||||
snappy = {times={[3]=0.40}, uses=0, maxlevel=1},
|
||||
oddly_breakable_by_hand = {times={[1]=7.00,[2]=4.00,[3]=1.40},
|
||||
uses=0, maxlevel=3}
|
||||
},
|
||||
damage_groups = {fleshy=1},
|
||||
},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
local pos = pointed_thing.under
|
||||
if not placer or not pos then
|
||||
return
|
||||
end
|
||||
local player_name = placer:get_player_name()
|
||||
if minetest.is_protected(pos, player_name) then
|
||||
minetest.record_protection_violation(pos, player_name)
|
||||
return
|
||||
end
|
||||
local nname = minetest.get_node(pos).name
|
||||
local def = wrench.registered_nodes[nname]
|
||||
if not def then
|
||||
return
|
||||
end
|
||||
|
||||
local stack = ItemStack(get_pickup_name(nname))
|
||||
local player_inv = placer:get_inventory()
|
||||
if not player_inv:room_for_item("main", stack) then
|
||||
return
|
||||
end
|
||||
local meta = minetest.get_meta(pos)
|
||||
if def.owned and not minetest.check_player_privs(placer, "protection_bypass") then
|
||||
local owner = meta:get_string("owner")
|
||||
if owner and owner ~= player_name then
|
||||
minetest.log("action", player_name..
|
||||
" tried to pick up an owned node belonging to "..
|
||||
owner.." at "..
|
||||
minetest.pos_to_string(pos))
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
local metadata = {}
|
||||
metadata.name = nname
|
||||
metadata.version = LATEST_SERIALIZATION_VERSION
|
||||
|
||||
local inv = meta:get_inventory()
|
||||
local lists = {}
|
||||
for _, listname in pairs(def.lists or {}) do
|
||||
local list = inv:get_list(listname)
|
||||
for i, s in pairs(list) do
|
||||
list[i] = s:to_string()
|
||||
end
|
||||
lists[listname] = list
|
||||
end
|
||||
metadata.lists = lists
|
||||
|
||||
local item_meta = stack:get_meta()
|
||||
metadata.metas = {}
|
||||
for name, meta_type in pairs(def.metas or {}) do
|
||||
if meta_type == wrench.META_TYPE_INT then
|
||||
metadata.metas[name] = meta:get_int(name)
|
||||
elseif meta_type == wrench.META_TYPE_FLOAT then
|
||||
metadata.metas[name] = meta:get_float(name)
|
||||
elseif meta_type == wrench.META_TYPE_STRING then
|
||||
metadata.metas[name] = meta:get_string(name)
|
||||
end
|
||||
end
|
||||
|
||||
item_meta:set_string("data", minetest.serialize(metadata))
|
||||
minetest.remove_node(pos)
|
||||
itemstack:add_wear(65535 / 20)
|
||||
player_inv:add_item("main", stack)
|
||||
return itemstack
|
||||
end,
|
||||
})
|
||||
@@ -0,0 +1,7 @@
|
||||
# German Translation for technic_wrench
|
||||
# Deutsche Übersetzung von technic_wrench
|
||||
# by Xanthin
|
||||
|
||||
Wrench = Schraubenschluessel
|
||||
%s with items = %s mit Gegenstaenden
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# technic_wrench traducido por Carlos Barraza
|
||||
|
||||
Wrench = Llave Inglesa
|
||||
%s with items = %s con elementos
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# technic_wrench translation template
|
||||
|
||||
Wrench = Clé
|
||||
%s with items = %s avec des objets
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# Polish Translation for technic_wrench
|
||||
# Polskie tłumaczenie technic_wrench
|
||||
# by mat9117
|
||||
|
||||
Wrench = Klucz
|
||||
%s with items = %s z rzeczami
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# Braziliam portuguese translation for wrench
|
||||
# Tradução portuguesa brasileira para wrench
|
||||
# By Sires
|
||||
|
||||
Wrench = Chave Inglesa
|
||||
%s with items = %s com items
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# technic_wrench translation template
|
||||
|
||||
Wrench =
|
||||
%s with items =
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Turkish translation by mahmutelmas06
|
||||
# mahmutelmas06@hotmail.com
|
||||
|
||||
Wrench = İngiliz anahtarı
|
||||
%s with items = Araçlarla birlikte %s
|
||||
@@ -0,0 +1,2 @@
|
||||
Wrench =扳手
|
||||
%s with items =%s带物品
|
||||
@@ -0,0 +1,3 @@
|
||||
name = wrench
|
||||
depends = default
|
||||
optional_depends = technic, technic_chests, technic_worldgen, intllib
|
||||
@@ -0,0 +1,71 @@
|
||||
--[[
|
||||
supported_nodes
|
||||
This table stores all nodes that are compatible with the wrench mod.
|
||||
Syntax:
|
||||
[<node name>] = {
|
||||
lists = {"<inventory list name>"},
|
||||
metas = {["<meta name>"] = STRING,
|
||||
["<meta name>"] = INT,
|
||||
["<meta name>"] = FLOAT},
|
||||
owned = true,
|
||||
store_meta_always = true,
|
||||
}
|
||||
owned - nodes that are protected by owner requirements (Ex. locked chests)
|
||||
store_meta_always - when nodes are broken this ensures metadata and
|
||||
inventory is always stored (Ex. active state for machines)
|
||||
--]]
|
||||
|
||||
wrench.META_TYPE_FLOAT = 1
|
||||
wrench.META_TYPE_STRING = 2
|
||||
wrench.META_TYPE_INT = 3
|
||||
|
||||
local STRING, FLOAT =
|
||||
wrench.META_TYPE_STRING,
|
||||
wrench.META_TYPE_FLOAT
|
||||
|
||||
wrench.registered_nodes = {
|
||||
["default:chest"] = {
|
||||
lists = {"main"},
|
||||
},
|
||||
["default:chest_locked"] = {
|
||||
lists = {"main"},
|
||||
metas = {owner = STRING,
|
||||
infotext = STRING},
|
||||
owned = true,
|
||||
},
|
||||
["default:furnace"] = {
|
||||
lists = {"fuel", "src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
fuel_totaltime = FLOAT,
|
||||
fuel_time = FLOAT,
|
||||
src_totaltime = FLOAT,
|
||||
src_time = FLOAT},
|
||||
},
|
||||
["default:furnace_active"] = {
|
||||
lists = {"fuel", "src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
fuel_totaltime = FLOAT,
|
||||
fuel_time = FLOAT,
|
||||
src_totaltime = FLOAT,
|
||||
src_time = FLOAT},
|
||||
store_meta_always = true,
|
||||
},
|
||||
["default:sign_wall"] = {
|
||||
metas = {infotext = STRING,
|
||||
text = STRING},
|
||||
},
|
||||
}
|
||||
|
||||
function wrench:original_name(name)
|
||||
for key, value in pairs(self.registered_nodes) do
|
||||
if name == value.name then
|
||||
return key
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function wrench:register_node(name, def)
|
||||
if minetest.registered_nodes[name] then
|
||||
self.registered_nodes[name] = def
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,343 @@
|
||||
|
||||
local INT, STRING, FLOAT =
|
||||
wrench.META_TYPE_INT,
|
||||
wrench.META_TYPE_STRING,
|
||||
wrench.META_TYPE_FLOAT
|
||||
|
||||
wrench:register_node("technic:iron_chest", {
|
||||
lists = {"main"},
|
||||
})
|
||||
wrench:register_node("technic:iron_locked_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
owner = STRING},
|
||||
owned = true,
|
||||
})
|
||||
wrench:register_node("technic:copper_chest", {
|
||||
lists = {"main"},
|
||||
})
|
||||
wrench:register_node("technic:copper_locked_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
owner = STRING},
|
||||
owned = true,
|
||||
})
|
||||
wrench:register_node("technic:silver_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING},
|
||||
})
|
||||
wrench:register_node("technic:silver_locked_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
owner = STRING,
|
||||
formspec = STRING},
|
||||
owned = true,
|
||||
})
|
||||
wrench:register_node("technic:gold_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING},
|
||||
})
|
||||
wrench:register_node("technic:gold_locked_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
owner = STRING,
|
||||
formspec = STRING},
|
||||
owned = true,
|
||||
})
|
||||
wrench:register_node("technic:mithril_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING},
|
||||
})
|
||||
wrench:register_node("technic:mithril_locked_chest", {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,
|
||||
owner = STRING,
|
||||
formspec = STRING},
|
||||
owned = true,
|
||||
})
|
||||
wrench:register_node("technic:lv_electric_furnace", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:lv_electric_furnace_active", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_electric_furnace", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_electric_furnace_active", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:coal_alloy_furnace", {
|
||||
lists = {"fuel", "src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
fuel_totaltime = FLOAT,
|
||||
fuel_time = FLOAT,
|
||||
src_totaltime = FLOAT,
|
||||
src_time = FLOAT},
|
||||
})
|
||||
wrench:register_node("technic:coal_alloy_furnace_active", {
|
||||
lists = {"fuel", "src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
fuel_totaltime = FLOAT,
|
||||
fuel_time = FLOAT,
|
||||
src_totaltime = FLOAT,
|
||||
src_time = FLOAT},
|
||||
})
|
||||
wrench:register_node("technic:alloy_furnace", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:alloy_furnace_active", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_alloy_furnace", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_alloy_furnace_active", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:tool_workshop", {
|
||||
lists = {"src", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:grinder", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:grinder_active", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_grinder", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_grinder_active", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:extractor", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:extractor_active", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_extractor", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_extractor_active", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:compressor", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:compressor_active", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_compressor", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_compressor_active", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:cnc", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT,
|
||||
cnc_product = STRING},
|
||||
})
|
||||
wrench:register_node("technic:cnc_active", {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
LV_EU_demand = INT,
|
||||
LV_EU_input = INT,
|
||||
src_time = INT,
|
||||
cnc_product = STRING},
|
||||
})
|
||||
wrench:register_node("technic:mv_centrifuge", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
wrench:register_node("technic:mv_centrifuge_active", {
|
||||
lists = {"src", "dst", "upgrade1", "upgrade2"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
MV_EU_demand = INT,
|
||||
MV_EU_input = INT,
|
||||
tube_time = INT,
|
||||
src_time = INT},
|
||||
})
|
||||
|
||||
|
||||
local chest_mark_colors = {
|
||||
'_black',
|
||||
'_blue',
|
||||
'_brown',
|
||||
'_cyan',
|
||||
'_dark_green',
|
||||
'_dark_grey',
|
||||
'_green',
|
||||
'_grey',
|
||||
'_magenta',
|
||||
'_orange',
|
||||
'_pink',
|
||||
'_red',
|
||||
'_violet',
|
||||
'_white',
|
||||
'_yellow',
|
||||
'',
|
||||
}
|
||||
|
||||
for i = 1, 15 do
|
||||
wrench:register_node("technic:gold_chest"..chest_mark_colors[i], {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,formspec = STRING},
|
||||
})
|
||||
wrench:register_node("technic:gold_locked_chest"..chest_mark_colors[i], {
|
||||
lists = {"main"},
|
||||
metas = {infotext = STRING,owner = STRING,formspec = STRING},
|
||||
owned = true,
|
||||
})
|
||||
end
|
||||
|
||||
if minetest.get_modpath("technic") then
|
||||
for tier, _ in pairs(technic.machines) do
|
||||
local ltier = tier:lower()
|
||||
for i = 0, 8 do
|
||||
wrench:register_node("technic:"..ltier.."_battery_box"..i, {
|
||||
lists = {"src", "dst"},
|
||||
metas = {infotext = STRING,
|
||||
formspec = STRING,
|
||||
[tier.."_EU_demand"] = INT,
|
||||
[tier.."_EU_supply"] = INT,
|
||||
[tier.."_EU_input"] = INT,
|
||||
internal_EU_charge = INT,
|
||||
last_side_shown = INT},
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 140 B |
Reference in new issue
Block a user