Rename & Optimized Reactor Controller Signals

This commit is contained in:
2022-06-30 23:17:14 +01:00
parent 2a50467a41
commit c873381653

View File

@@ -3,10 +3,10 @@ local allItems = {}
local defaultTable = { local defaultTable = {
load_value_in = 0, load_value_in = 0,
fuel_in = 100, fuel_in = 100,
efficiency_in = 100, set_efficiency = 100,
fission_efficiency_in = 75, set_fission_efficiency = 75,
max_power_in = 20000, set_max_power = 20000,
silent_in = 0 set_silent = 0,
} }
Hook.Add("item.created", "reactorcontrollercomponent.init", function(item) Hook.Add("item.created", "reactorcontrollercomponent.init", function(item)
@@ -23,12 +23,17 @@ local signalReceived = function(signal, connection)
local mem = allItems[this] local mem = allItems[this]
local signalNum = tonumber(signal.value) or defaultTable[connection.Name] local signalNum = tonumber(signal.value) or defaultTable[connection.Name]
if mem[connection.Name] == signalNum then
return
end
mem[connection.Name] = signalNum mem[connection.Name] = signalNum
local turbineoutput = (mem.load_value_in / mem.max_power_in) * mem.efficiency_in local turbineoutput = (mem.load_value_in / mem.set_max_power) * mem.set_efficiency
local fissionrate = turbineoutput / (mem.fuel_in / mem.fission_efficiency_in) local fissionrate = turbineoutput / (mem.fuel_in / mem.set_fission_efficiency)
if mem.silent_in == 1 then if mem.set_silent == 1 then
if turbineoutput > 10 then if turbineoutput > 10 then
turbineoutput = 10 turbineoutput = 10
end end