From 7d8540d69a4bf906ce7c06314836a22f8d99a33b Mon Sep 17 00:00:00 2001 From: Daniel Asher Resnick Date: Tue, 15 Nov 2022 20:12:27 -0600 Subject: [PATCH] Stub custom stock parsing --- src/lib/data.rb | 3 +++ src/lib/data/custom.rb | 23 +++++++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/src/lib/data.rb b/src/lib/data.rb index 833f71e..42eba5a 100644 --- a/src/lib/data.rb +++ b/src/lib/data.rb @@ -58,5 +58,8 @@ module Charred [] end end + + def json_get(filename) + JSON.parse(File.read(filename)) end end diff --git a/src/lib/data/custom.rb b/src/lib/data/custom.rb index 48fd332..4c74fa5 100644 --- a/src/lib/data/custom.rb +++ b/src/lib/data/custom.rb @@ -3,6 +3,29 @@ require 'json' module Charred module Custom def load_custom(data) + Dir.glob("data/custom/*/") { |dir| + stock_name = File.basename(dir) + + if File.readable?("dir/skills.json") + skills = json_get("dir/skills.json") + verbose_merge data[:skills], skills + end + + if File.readable?("dir/traits.json") + traits = json_get("dir/traits.json") + verbose_merge data[:traits], traits + end + + if File.readable?("dir/lifepaths.json") + lifepaths = json_get("dir/lifepaths.json") + data[:lifepaths][stock_name] = lifepaths + end + + if File.readable?("dir/resources.json") + resources = json_get("dir/resources.json") + data[:resources][stock_name] = resources + end + } end end end