Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- sleep(2)
- local reactor = peripheral.wrap("back")
- local MIN_THRESHOLD = .4
- local MAX_THRESHOLD = .8
- local previousRodLevel = -1
- reactor.setActive(true)
- capacity = reactor.battery().capacity()
- while true do
- energystorage = reactor.battery().stored()
- ediff = (MAX_THRESHOLD - MIN_THRESHOLD)*capacity
- ediffper = ediff / 100
- if energystorage < MIN_THRESHOLD * capacity then
- if 0 ~= previousRodLevel then
- reactor.setAllControlRodLevels(0)
- previousRodLevel = 0
- end
- elseif energystorage > MIN_THRESHOLD*capacity then
- if energystorage >= MAX_THRESHOLD*capacity then
- if 100 ~= previousRodLevel then
- reactor.setAllControlRodLevels(100)
- previousRodLevel = 100
- end
- else
- optimalRodLevel = math.floor((energystorage - MIN_THRESHOLD*capacity)/(ediffper+1))
- if optimalRodLevel ~= previousRodLevel then
- reactor.setAllControlRodLevels(optimalRodLevel)
- previousRodLevel = optimalRodLevel
- end
- end
- end
- sleep(1)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement