Skip to content

Instantly share code, notes, and snippets.

@beccasaurus
Created March 8, 2021 08:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save beccasaurus/4e1e1970abc056e38989fbc0652f4acf to your computer and use it in GitHub Desktop.
Save beccasaurus/4e1e1970abc056e38989fbc0652f4acf to your computer and use it in GitHub Desktop.
require "json"
require "csv"
weapons = JSON.parse File.read("weapons.json")
column_names = File.read("column_names").split "\t"
csv = CSV.generate do |csv|
weapons.keys.each do |weapon_name|
30.times do |i|
csv << column_names.map do |column_name|
if column_name == 'Hex'
i + 1
elsif weapons[weapon_name].include? column_name
weapons[weapon_name][column_name]
elsif weapons[weapon_name]["Availability"].include? column_name
weapons[weapon_name]["Availability"][column_name]
else
raise "Whoa, weapon '#{weapon_name}' doesn't have column '#{column_name}'"
end
end
end
end
end
puts csv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment