diff --git a/Libraries/Utilities/parser.lua b/Libraries/Utilities/parser.lua index 8a67bfd..7643863 100644 --- a/Libraries/Utilities/parser.lua +++ b/Libraries/Utilities/parser.lua @@ -7,12 +7,11 @@ local Parser = { local noCommaString = string.gsub(storedEnergyString, ",", "") local current = string.sub(noCommaString, string.find(noCommaString, "%ba§")) - current = string.gsub(current, "a", "") - current = tonumber((string.gsub(current, "§", ""))) + current = tonumber((string.gsub(string.gsub(current, "a", ""), "§", ""))) local maximum = string.sub(noCommaString, string.find(noCommaString, "%be§")) - maximum = string.gsub(maximum, "e", "") - maximum = tonumber((string.gsub(maximum, "§", ""))) + maximum = tonumber((string.gsub(string.gsub(maximum, "e", ""), "§", ""))) + return {current = current, maximum = maximum} end, parseAverageInput = function(averageInputString) @@ -24,12 +23,20 @@ local Parser = { return tonumber((string.sub(noCommaString, string.find(noCommaString, "%d+")))) end, parseProblems = function(problemsString) - return tonumber((string.gsub(string.sub(problemsString, string.find(problemsString, "c%d")), "c", ""))) + local problems = string.sub(problemsString, string.find(problemsString, "c%d")) + return tonumber((string.gsub(problems, "c", ""))) end, parseEfficiency = function(efficiencyString) local noParagraphMarkString = string.gsub(efficiencyString, "§r", "") local efficiency = string.sub(noParagraphMarkString, string.find(noParagraphMarkString, "%d+%.*%d*%s%%")) return tonumber((string.gsub(efficiency, "%s%%", ""))) + end, + parseName = function(nameString) + return string.gsub(string.gsub(nameString, "§9", ""), "§r", "") + end, + parseWorkArea = function(worAreaString) + local size = string.sub(worAreaString, string.find(worAreaString, "§a%d+x%d+§r")) + return string.gsub(string.gsub(size, "§a", ""), "§r", "") end } diff --git a/Programs/monitor-system/src/data/datasource/energy-provider.lua b/Programs/monitor-system/src/data/datasource/energy-provider.lua index 421d74f..65d2d08 100755 --- a/Programs/monitor-system/src/data/datasource/energy-provider.lua +++ b/Programs/monitor-system/src/data/datasource/energy-provider.lua @@ -1,7 +1,7 @@ -- Import section -local parser = require("util.parser") -local inherits = require("util.class.inherits") -local SingleBlock = require("data.datasource.single-block") +parser = require("parser") +inherits = require("inherits") +SingleBlock = require("single-block") local mock = require("mock-energy-provider") -- diff --git a/Programs/monitor-system/src/data/datasource/miner.lua b/Programs/monitor-system/src/data/datasource/miner.lua index e69de29..a55151f 100755 --- a/Programs/monitor-system/src/data/datasource/miner.lua +++ b/Programs/monitor-system/src/data/datasource/miner.lua @@ -0,0 +1,27 @@ +-- Import section +parser = require("parser") +inherits = require("inherits") +SingleBlock = require("single-block") +local mock = require("mock-multi-block") +-- + +local Miner = + inherits( + SingleBlock, + { + mock = mock, + name = "MultiBlock" + } +) + +function Miner:getName() + local sensorInformation = self:getSensorInformation() + return parser.parseProblems(sensorInformation[1]) +end + +function Miner:getWoarkArea() + local sensorInformation = self:getSensorInformation() + return parser.parseWorkArea(sensorInformation[2]) +end + +return Miner diff --git a/Programs/monitor-system/src/data/datasource/multi-block.lua b/Programs/monitor-system/src/data/datasource/multi-block.lua index 079068f..2e33b7f 100755 --- a/Programs/monitor-system/src/data/datasource/multi-block.lua +++ b/Programs/monitor-system/src/data/datasource/multi-block.lua @@ -1,7 +1,7 @@ -- Import section -local parser = require("util.parser") -local inherits = require("util.class.inherits") -local SingleBlock = require("data.datasource.single-block") +parser = require("parser") +inherits = require("inherits") +SingleBlock = require("single-block") local mock = require("mock-multi-block") -- diff --git a/Programs/monitor-system/src/data/datasource/single-block.lua b/Programs/monitor-system/src/data/datasource/single-block.lua index 29529f5..f459f3a 100644 --- a/Programs/monitor-system/src/data/datasource/single-block.lua +++ b/Programs/monitor-system/src/data/datasource/single-block.lua @@ -1,5 +1,5 @@ -- Import section -local component = require("component") +component = require("component") local mock = require("mock-single-block") -- diff --git a/Resources/Mock/miner.lua b/Resources/Mock/miner.lua new file mode 100644 index 0000000..f2ec18d --- /dev/null +++ b/Resources/Mock/miner.lua @@ -0,0 +1,22 @@ +-- Import section +MockSingleBlock = require("mock-single-block") +inherits = require("inherits") +-- + +local MockMiner = + inherits( + MockSingleBlock, + { + name = "MockMiner" + } +) + +function MockMiner.getSensorInformation() + return { + "§9Multiblock Miner§r", + "Work Area: §a2x2§r Chunks", + n = 2 + } +end + +return MockMiner diff --git a/Resources/Mock/mock-energy-provider.lua b/Resources/Mock/mock-energy-provider.lua index 6a03e87..7a33b07 100755 --- a/Resources/Mock/mock-energy-provider.lua +++ b/Resources/Mock/mock-energy-provider.lua @@ -1,8 +1,6 @@ -- Import section -local parser = require("util.parser") -local inherits = require("util.class.inherits") -local MockSingleBlock = require("data.mock.mock-single-block") -local new = require("util.class.new") +inherits = require("inherits") +MockSingleBlock = require("mock-single-block") -- local MockEnergyProvider = diff --git a/Resources/Mock/mock-multi-block.lua b/Resources/Mock/mock-multi-block.lua index dd7202c..9023c89 100644 --- a/Resources/Mock/mock-multi-block.lua +++ b/Resources/Mock/mock-multi-block.lua @@ -1,7 +1,6 @@ -- Import section -local MockSingleBlock = require("data.mock.mock-single-block") -local inherits = require("util.class.inherits") -local new = require("util.class.new") +MockSingleBlock = require("mock-single-block") +inherits = require("inherits") -- local MockMultiBlock = diff --git a/Resources/Mock/mock-single-block.lua b/Resources/Mock/mock-single-block.lua index 5eb0806..ec000d7 100644 --- a/Resources/Mock/mock-single-block.lua +++ b/Resources/Mock/mock-single-block.lua @@ -1,5 +1,5 @@ -- Import section -local new = require("util.class.new") +new = require("new") -- local MockSingleBlock = {