mirror of
https://github.com/minetest-mods/technic.git
synced 2024-12-22 22:02:32 +01:00
Fix cycling power drain on the forcefield. Now it disables itself if no power.
This commit is contained in:
parent
9a0d3f2166
commit
73209cc37d
@ -4,6 +4,8 @@
|
|||||||
-- Forcefields are powerful barriers but they consume huge amounts of power.
|
-- Forcefields are powerful barriers but they consume huge amounts of power.
|
||||||
-- Forcefield Generator is a HV machine.
|
-- Forcefield Generator is a HV machine.
|
||||||
|
|
||||||
|
-- How expensive is the generator? Leaves room for upgrades lowering the power drain?
|
||||||
|
local forcefield_power_drain = 10 -- default 10
|
||||||
local forcefield_update_interval = 1
|
local forcefield_update_interval = 1
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
@ -107,7 +109,7 @@ local forcefield_check = function(pos)
|
|||||||
|
|
||||||
local power_requirement
|
local power_requirement
|
||||||
if enabled == 1 then
|
if enabled == 1 then
|
||||||
power_requirement = math.floor(4*math.pi*math.pow(meta:get_int("range"), 2)) * 1
|
power_requirement = math.floor(4*math.pi*math.pow(meta:get_int("range"), 2)) * forcefield_power_drain
|
||||||
else
|
else
|
||||||
power_requirement = eu_demand
|
power_requirement = eu_demand
|
||||||
end
|
end
|
||||||
@ -115,10 +117,10 @@ local forcefield_check = function(pos)
|
|||||||
if eu_input == 0 then
|
if eu_input == 0 then
|
||||||
meta:set_string("infotext", "Forcefield Generator Unpowered")
|
meta:set_string("infotext", "Forcefield Generator Unpowered")
|
||||||
meta:set_int("HV_EU_demand", 100)
|
meta:set_int("HV_EU_demand", 100)
|
||||||
|
meta:set_int("enabled", 0)
|
||||||
if node.name == "technic:forcefield_emitter_on" then
|
if node.name == "technic:forcefield_emitter_on" then
|
||||||
remove_forcefield(pos, meta:get_int("range"))
|
remove_forcefield(pos, meta:get_int("range"))
|
||||||
hacky_swap_node(pos, "technic:forcefield_emitter_off")
|
hacky_swap_node(pos, "technic:forcefield_emitter_off")
|
||||||
meta:set_int("enabled", 0)
|
|
||||||
end
|
end
|
||||||
elseif eu_input == power_requirement then
|
elseif eu_input == power_requirement then
|
||||||
if meta:get_int("enabled") == 1 then
|
if meta:get_int("enabled") == 1 then
|
||||||
|
Loading…
Reference in New Issue
Block a user