From d59055dd2b1a03449ff11318a2f210d37dd7e76a Mon Sep 17 00:00:00 2001
From: Zefram <zefram@fysh.org>
Date: Fri, 25 Jul 2014 16:38:40 +0200
Subject: [PATCH] Audible siren to warn of reactor meltdown

---
 technic/config.lua |   44 +++++++++++++-------------------------------
 1 files changed, 13 insertions(+), 31 deletions(-)

diff --git a/technic/config.lua b/technic/config.lua
index f546cf6..1dfce66 100644
--- a/technic/config.lua
+++ b/technic/config.lua
@@ -1,42 +1,24 @@
-technic.config = {}
 
-technic.config.loaded = {}
+local worldpath = minetest.get_worldpath()
 
-technic.config.default = {
+technic.config = Settings(worldpath.."/technic.conf")
+
+local conf_table = technic.config:to_table()
+
+local defaults = {
 	enable_mining_drill = "true",
 	enable_mining_laser = "true",
-	enable_flashlight = "true",
-	enable_item_drop = "true",
-	enable_item_pickup = "true",
+	enable_flashlight = "false",
 	enable_rubber_tree_generation = "true",
 	enable_marble_generation = "true",
-	enable_granite_generation = "true"
+	enable_granite_generation = "true",
+	enable_wind_mill = "false",
+	enable_corium_griefing = "true",
 }
 
-function technic.config:load(filename)
-	file, error = io.open(filename, "r")
-	if error then return end
-	local line = file:read("*l")
-	while line do
-		local found, _, setting, value = line:find("^([^#%s=]+)%s?=%s?([^%s#]+)")
-		if found then
-			self.loaded[setting] = value
-		end
-		line = file:read("*l")
-	end
-	file:close()
-end
-
-technic.config:load(minetest.get_worldpath().."/technic.conf")
-
-function technic.config:get(setting)
-	if self.loaded[setting] then
-		return self.loaded[setting]
-	else
-		return self.default[setting]
+for k, v in pairs(defaults) do
+	if conf_table[k] == nil then
+		technic.config:set(k, v)
 	end
 end
 
-function technic.config:getBool(setting)
-	return string.lower(self:get(setting)) == "true"
-end

--
Gitblit v1.8.0