local CurrentColors = nil;
local DataLoaded = false;
local ConfigFile = "CurrentColors.json";
local function SetColorAndSave(side)
redstone.setBundledOutput(side,CurrentColors[side]);
JsonSaveLoad.Save(ConfigFile,CurrentColors);
end
local function AddBundledOutputColor(side,newColor)
CurrentColors[side] = colors.combine(CurrentColors[side],newColor);
SetColorAndSave(side);
end
local function RemoveBundledOutputColor(side,newColor)
CurrentColors[side] = colors.subtract(CurrentColors[side],newColor);
SetColorAndSave(side);
end
local function Init()
if DataLoaded == false then
DataLoaded = true;
if fs.exists(ConfigFile) then
CurrentColors = JsonSaveLoad.Load(ConfigFile);
else
CurrentColors = {up=0 ,down=0 ,left=0 ,right=0 ,front=0 ,back=0};
JsonSaveLoad.Save(ConfigFile,CurrentColors);
end
for k,v in pairs(CurrentColors) do
redstone.setBundledOutput(k,v);
end
end
end
function InitalizeColors(side)
Init()
local self = {};
self.AddColor = function(num)
AddBundledOutputColor(side,2^num);
end
self.RemoveColor = function(num)
RemoveBundledOutputColor(side,2^num);
end
return self;
end
Comments
0 B
|👍
/👎