Skip to content

Commit d00dad4

Browse files
authored
Merge pull request #5 from Navatusein/dev
Dev
2 parents 5c6b957 + 95e25e6 commit d00dad4

File tree

2 files changed

+28
-12
lines changed

2 files changed

+28
-12
lines changed

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,12 @@ Then run the command to start the installer.
5555
pastebin run ESUAMAGx
5656
```
5757

58+
Or
59+
60+
```shell
61+
wget -f https://raw.githubusercontent.com/Navatusein/GTNH-OC-Installer/main/installer.lua && installer
62+
```
63+
5864
Then select the Black Hole Control program in the installer.
5965
If you wish you can add the program to auto download, for manual start write a command.
6066

src/black-hole-controller.lua

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -110,17 +110,19 @@ function blackHoleController:new(
110110
end
111111
end
112112
self.stateMachine.states.idle.update = function()
113-
if self:hasItems() == true and self.controllerProxy.isWorkAllowed() then
114-
if self:hasSeeds() == true then
115-
if self:hasEnoughSpacetime(self.stateMachine.data.spaceTimePerCraftCount) then
116-
self.stateMachine:setState(self.stateMachine.states.openBlackHole)
117-
return
118-
elseif self.stateMachine.data.notifyNotEnoughSpaceTime == false then
119-
self.stateMachine.data.notifyNotEnoughSpaceTime = true
120-
event.push("log_warning", "Not enough Space Time for craft. Need: "..numWithCommas(self.stateMachine.data.spaceTimePerCraftCount))
113+
if self.controllerProxy.getWorkMaxProgress() == 0 then
114+
if self:hasItems() == true and self.controllerProxy.isWorkAllowed() then
115+
if self:hasSeeds() == true then
116+
if self:hasEnoughSpacetime(self.stateMachine.data.spaceTimePerCraftCount) then
117+
self.stateMachine:setState(self.stateMachine.states.openBlackHole)
118+
return
119+
elseif self.stateMachine.data.notifyNotEnoughSpaceTime == false then
120+
self.stateMachine.data.notifyNotEnoughSpaceTime = true
121+
event.push("log_warning", "Not enough Space Time for craft. Need: "..numWithCommas(self.stateMachine.data.spaceTimePerCraftCount))
122+
end
123+
124+
os.sleep(3)
121125
end
122-
123-
os.sleep(3)
124126
end
125127
end
126128
end
@@ -230,15 +232,23 @@ function blackHoleController:new(
230232
self.stateMachine.states.collapseBlackHole = self.stateMachine:createState("Collapse Black Hole")
231233
self.stateMachine.states.collapseBlackHole.init = function()
232234
self:collapseBlackHole()
235+
self.stateMachine:setState(self.stateMachine.states.waitEnd)
233236
end
234-
self.stateMachine.states.collapseBlackHole.update = function()
237+
238+
self.stateMachine.states.waitEnd = self.stateMachine:createState("Wait end")
239+
self.stateMachine.states.waitEnd.update = function()
235240
if self.controllerProxy.getWorkMaxProgress() == 0 then
236241
self.stateMachine:setState(self.stateMachine.states.idle)
237242
end
238243
end
239244

240245
self.stateMachine.states.error = self.stateMachine:createState("Error")
241246
self.stateMachine.states.error.init = function()
247+
self:collapseBlackHole()
248+
249+
self.stateMachine.data.startTime = nil
250+
self.stateMachine.data.cycleStartTime = nil
251+
242252
while self:tryCancelFakeRecipe() == false do
243253
os.sleep(0.1)
244254
end
@@ -268,7 +278,7 @@ function blackHoleController:new(
268278
--Reset error
269279
function obj:resetError()
270280
if self.stateMachine.currentState == self.stateMachine.states.error then
271-
self.stateMachine:setState(self.stateMachine.states.idle)
281+
self.stateMachine:setState(self.stateMachine.states.waitEnd)
272282
end
273283
end
274284

0 commit comments

Comments
 (0)