cave-story-randomizer/src/main.lua

72 lines
1.6 KiB
Lua
Raw Normal View History

2018-12-14 17:17:22 +00:00
require 'lib.strict'
2019-09-12 07:15:51 +00:00
VERSION = '0.8C'
Class = require 'lib.classic'
_ = require 'lib.moses'
2018-12-14 17:17:22 +00:00
lf = love.filesystem
2018-12-16 02:14:48 +00:00
lg = love.graphics
2018-12-14 17:17:22 +00:00
U = require 'util'
2019-09-10 09:13:50 +00:00
require 'log'
2018-12-14 17:17:22 +00:00
local random = require 'randomizer'
local settings = require 'settings'
Randomizer = random()
Screen = require 'ui.draw'
Settings = settings()
local csdirectory
2018-12-16 02:14:48 +00:00
function love.load()
2019-09-10 09:13:50 +00:00
Screen:setup()
Settings:init()
if Settings.settings.csdirectory ~= "" then
Screen:setStatus("Cave Story folder found!")
Randomizer:setPath(Settings.settings.csdirectory)
else
Screen:setStatus("Drag and drop your Cave Story folder here.")
end
Screen:draw()
end
local function recursiveWrite(path, name)
local filesTable = lf.getDirectoryItems(path)
lf.createDirectory(name)
for i,v in ipairs(filesTable) do
local file = path..'/'..v
if lf.isFile(file) then
local n
lf.write(name..'/'..v, lf.read(file))
elseif lf.isDirectory(file) then
recursiveWrite(file, name..'/'..v)
end
end
2018-12-16 02:14:48 +00:00
end
2018-12-14 17:17:22 +00:00
function love.directorydropped(path)
local success = Randomizer:_mountDirectory(path)
--Randomizer:_unmountDirectory(path)
if success then
recursiveWrite('mounted-data', 'csdata')
Settings.settings.csdirectory = 'csdata'
Settings:update()
Randomizer:setPath('csdata')
Screen:setStatus("Cave Story folder updated!")
else
Screen:setStatus("Could not find \"data\" subfolder.\n\nMaybe try dropping your Cave Story \"data\" folder in directly?")
end
2018-12-14 17:17:22 +00:00
end
function love.keypressed(key)
if key == 'escape' then
love.event.push('quit')
end
end
2018-12-16 02:14:48 +00:00
function love.draw()
2019-09-10 09:13:50 +00:00
Screen:draw()
2018-12-16 02:14:48 +00:00
end