From e628ec2153e5abe5896cc9cc4123e7b892f732c4 Mon Sep 17 00:00:00 2001 From: Guillaume ARM Date: Tue, 21 May 2024 18:52:07 +0200 Subject: [PATCH] feat(inferium-server)!: support of multi computer plans --- config/inferium-plan.lua | 14 -------------- config/inferium-plans.lua | 16 ++++++++++++++++ inferium-server.lua | 8 +++++--- install.lua | 2 +- 4 files changed, 22 insertions(+), 18 deletions(-) delete mode 100644 config/inferium-plan.lua create mode 100644 config/inferium-plans.lua diff --git a/config/inferium-plan.lua b/config/inferium-plan.lua deleted file mode 100644 index af70e0a..0000000 --- a/config/inferium-plan.lua +++ /dev/null @@ -1,14 +0,0 @@ -local function mystical(essenceName) - return 'mysticalagriculture:' .. essenceName .. '_seeds' -end - -return { - mystical('coal'), - mystical('coal'), - mystical('coal'), - mystical('coal'), - mystical('experience'), - mystical('experience'), - mystical('experience'), - mystical('inferium') -} diff --git a/config/inferium-plans.lua b/config/inferium-plans.lua new file mode 100644 index 0000000..549cbb8 --- /dev/null +++ b/config/inferium-plans.lua @@ -0,0 +1,16 @@ +local function mystical(essenceName) + return 'mysticalagriculture:' .. essenceName .. '_seeds' +end + +return { + default = { + mystical('coal'), + mystical('coal'), + mystical('inferium'), + mystical('inferium'), + mystical('inferium'), + mystical('inferium'), + mystical('inferium'), + mystical('inferium') + } +} diff --git a/inferium-server.lua b/inferium-server.lua index a676f7f..29480ff 100644 --- a/inferium-server.lua +++ b/inferium-server.lua @@ -1,16 +1,18 @@ -local inferiumPlan = require('config/inferium-plan') -- temporary default plan +local inferiumPlans = require('config/inferium-plans') -- temporary default plan -local VERSION = "0.1.0" +local VERSION = "0.2.0" local INFERIUM_QUERY_PORT = 111 local INFERIUM_REPLY_PORT = 112 +local defaultPlan = inferiumPlans.default or error('no default plan provided in config') + local modem = peripheral.find("modem") or error("No modem attached", 0) modem.open(INFERIUM_QUERY_PORT) local function getPlanForComputer(computerId) - return inferiumPlan + return inferiumPlans[computerId] or defaultPlan end local function messageReceived(message) diff --git a/install.lua b/install.lua index ea28b60..ec0d551 100644 --- a/install.lua +++ b/install.lua @@ -18,7 +18,7 @@ local LIST_CONFIG_FILES = { 'upgrade.lua', 'config/mining.lua', 'config/harvesting.lua', - 'config/inferium-plan.lua' + 'config/inferium-plans.lua' }