updated technic (new hydro gen calculations)
This commit is contained in:
parent
1ee96ab109
commit
fad2d80300
@ -17,19 +17,21 @@ minetest.register_craft({
|
|||||||
|
|
||||||
local function check_node_around_mill(pos)
|
local function check_node_around_mill(pos)
|
||||||
local node = minetest.get_node(pos)
|
local node = minetest.get_node(pos)
|
||||||
if node.name == "default:water_flowing" or
|
if node.name == "default:water_flowing"
|
||||||
node.name == "default:water_source" then
|
or node.name == "default:river_water_flowing" then
|
||||||
return true
|
return node.param2 -- returns approx. water flow, if any
|
||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
local run = function(pos, node)
|
local run = function(pos, node)
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
local water_nodes = 0
|
local water_flow = 0
|
||||||
local lava_nodes = 0
|
local lava_nodes = 0
|
||||||
local production_level = 0
|
local production_level = 0
|
||||||
local eu_supply = 0
|
local eu_supply = 0
|
||||||
|
local max_output = 50 * 45 -- four param2's at 15 makes 60, cap it lower for "overload protection"
|
||||||
|
-- (plus we want the gen to report 100% if three sides have full flow)
|
||||||
|
|
||||||
local positions = {
|
local positions = {
|
||||||
{x=pos.x+1, y=pos.y, z=pos.z},
|
{x=pos.x+1, y=pos.y, z=pos.z},
|
||||||
@ -41,12 +43,12 @@ local run = function(pos, node)
|
|||||||
for _, p in pairs(positions) do
|
for _, p in pairs(positions) do
|
||||||
local check = check_node_around_mill(p)
|
local check = check_node_around_mill(p)
|
||||||
if check then
|
if check then
|
||||||
water_nodes = water_nodes + 1
|
water_flow = water_flow + check
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
production_level = 25 * water_nodes
|
eu_supply = 50 * water_flow
|
||||||
eu_supply = 30 * water_nodes
|
production_level = math.floor(100 * eu_supply / max_output)
|
||||||
|
|
||||||
if production_level > 0 then
|
if production_level > 0 then
|
||||||
meta:set_int("LV_EU_supply", eu_supply)
|
meta:set_int("LV_EU_supply", eu_supply)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user