Ajustor icon

mekanismEnergyManager

Ajustor | PRO | 04/07/18 04:52:34 PM UTC | 0 ⭐ | 166 👁️ | Never ⏰ | []
Lua |

1.09 KB

|

None

|

0 👍

/

0 👎

local component = require("component")
local serialization = require("serialization")
 
local computer = component.computer
local modem = component.modem
local energy = {}
local arraySize=0
local maxEnergy=0
local currEnergy=0
 
modem.open(17)
local nbClients = 1
local clients = { 
  {address=""}
}
 
function getEnergyCubes()
  maxEnergy=0
  for i in component.list("energy_cube") do
    energy[arraySize] = component.proxy(i)
    maxEnergy=maxEnergy+energy[arraySize].getMaxEnergy()
    arraySize=arraySize+1     
  end
  for i in component.list("induction_matrix") do
    energy[arraySize] = component.proxy(i)
    maxEnergy=maxEnergy+energy[arraySize].getMaxEnergy()
    arraySize=arraySize+1     
  end
end
 
function getEnergy()
  currEnergy=0
  for i=0, arraySize-1 do
    currEnergy=currEnergy+energy[i].getEnergy()    
  end
end
 
getEnergyCubes()
while true do
   getEnergy()
   local msg={}
   msg["curr"] = currEnergy
   msg["max"] = maxEnergy
   for i, row in ipairs(clients) do
      modem.send(clients[i].address, 17, serialization.serialize(msg))
   end
end

Comments