45 lines
1.3 KiB
CoffeeScript
Executable File
45 lines
1.3 KiB
CoffeeScript
Executable File
#!/usr/bin/env coffee
|
|
|
|
Logger = require '../src/scripts/logger'
|
|
|
|
global._ = require 'underscore'
|
|
global.Backbone = require 'backbone'
|
|
global.logger = new Logger level:Logger.FATAL
|
|
|
|
require '../src/scripts/underscore_mixins'
|
|
|
|
Mod = require '../src/scripts/models/mod'
|
|
ModParser = require '../src/scripts/models/mod_parser'
|
|
ModVersionParser = require '../src/scripts/models/mod_version_parser'
|
|
fs = require 'fs'
|
|
|
|
modSlugs = {}
|
|
itemSlugs = {}
|
|
|
|
for modSlug in fs.readdirSync './src/data'
|
|
continue if modSlug[0] is '.'
|
|
modSlugs[modSlug] = modSlug
|
|
|
|
mod = new Mod slug:modSlug
|
|
modParser = new ModParser model:mod
|
|
modParser.parse fs.readFileSync "./src/data/#{modSlug}/mod.cg", 'utf-8'
|
|
|
|
mod.eachModVersion (modVersion)->
|
|
modVersionParser = new ModVersionParser model:modVersion
|
|
modVersionParser.parse fs.readFileSync "./src/data/#{modSlug}/#{modVersion.version}/mod-version.cg", 'utf-8'
|
|
|
|
modVersion.eachItem (item)->
|
|
itemSlugs[item.slug] = item.slug
|
|
|
|
base = 'http://crafting-guide.com'
|
|
|
|
urls = [ base ]
|
|
for slug in _.keys(modSlugs).sort()
|
|
urls.push base + "/mod/#{slug}"
|
|
|
|
for slug in _.keys(itemSlugs).sort()
|
|
urls.push base + "/item/#{slug}"
|
|
|
|
for url in urls
|
|
console.log url
|