declare function AutoManageCapacitors{ print "start". local capacitors to ship:partsnamedpattern("capacitor"). local lock electricity to GetTotalElectiricity(). when electricity < 100 then { for cap in capacitors { local capR to cap:resources[0]. if capR:amount = capR:capacity{ local discharge is cap:getmodule("DischargeCapacitor"). discharge:doaction("Discharge Capacitor", true). wait 1. break. } } preserve. } when throttle = 0 then { for cap in capacitors { local capR to cap:resources[0]. local discharge is cap:getmodule("DischargeCapacitor"). if capR:amount = capR:capacity{ discharge:doaction("Disable Recharge", true). }else{ discharge:doaction("Enable Recharge", true). } } preserve. } when throttle > 0 then{ for cap in capacitors { local capR to cap:resources[0]. local discharge is cap:getmodule("DischargeCapacitor"). discharge:doaction("Disable Recharge", true). } preserve. } } declare function GetTotalElectiricity{ LIST RESOURCES IN res. local e is 0. FOR resPart IN res { if resPart:name = "ElectricCharge" { set e to e + resPart:amount. } } return e. }