diff --git a/Zframework b/Zframework index 4de4d3eb..325168c2 160000 --- a/Zframework +++ b/Zframework @@ -1 +1 @@ -Subproject commit 4de4d3eb8671ca7e1ecb26566d9ecdfe803a2dce +Subproject commit 325168c2c17c112d26ccd7d366079d970ae9627a diff --git a/main.lua b/main.lua index 268495f4..2bbc1a59 100644 --- a/main.lua +++ b/main.lua @@ -25,7 +25,6 @@ TIME=love.timer.getTime SYSTEM=love.system.getOS()if SYSTEM=='OS X'then SYSTEM='macOS'end FNNS=SYSTEM:find'\79\83'--What does FNSF stand for? IDK so don't ask me lol MOBILE=SYSTEM=='Android'or SYSTEM=='iOS' -SAVEDIR=fs.getSaveDirectory() --Global Vars & Settings SFXPACKS={'chiptune'} @@ -106,7 +105,7 @@ require'parts.gameFuncs' --Load shader files from SOURCE ONLY SHADER={} for _,v in next,fs.getDirectoryItems('parts/shaders')do - if isSafeFile('parts/shaders/'..v)then + if FILE.isSafe('parts/shaders/'..v)then local name=v:sub(1,-6) SHADER[name]=love.graphics.newShader('parts/shaders/'..name..'.glsl') end @@ -347,7 +346,7 @@ SKIN.load{ SFX.init((function()--[Warning] Not loading files here, just get the list of sound needed local L={} for _,v in next,fs.getDirectoryItems('media/effect/chiptune/')do - if isSafeFile('media/effect/chiptune/'..v,"Dangerous file : %SAVE%/media/effect/chiptune/"..v)then + if FILE.isSafe('media/effect/chiptune/'..v,"Dangerous file : %SAVE%/media/effect/chiptune/"..v)then table.insert(L,v:sub(1,-5)) end end @@ -356,7 +355,7 @@ end)()) BGM.init((function() local L={} for _,v in next,fs.getDirectoryItems('media/music')do - if isSafeFile('media/music/'..v,"Dangerous file : %SAVE%/media/music/"..v)then + if FILE.isSafe('media/music/'..v,"Dangerous file : %SAVE%/media/music/"..v)then L[v:sub(1,-5)]='media/music/'..v end end @@ -411,7 +410,7 @@ table.insert(_LOADTIMELIST_,("Initialize Parts: %.3fs"):format(TIME()-_LOADTIME_ --Load background files from SOURCE ONLY for _,v in next,fs.getDirectoryItems('parts/backgrounds')do - if isSafeFile('parts/backgrounds/'..v)and v:sub(-3)=='lua'then + if FILE.isSafe('parts/backgrounds/'..v)and v:sub(-3)=='lua'then local name=v:sub(1,-5) BG.add(name,require('parts.backgrounds.'..name)) end @@ -419,7 +418,7 @@ end BG.remList('none')BG.remList('gray')BG.remList('custom') --Load scene files from SOURCE ONLY for _,v in next,fs.getDirectoryItems('parts/scenes')do - if isSafeFile('parts/scenes/'..v)then + if FILE.isSafe('parts/scenes/'..v)then local sceneName=v:sub(1,-5) SCN.add(sceneName,require('parts.scenes.'..sceneName)) LANG.addScene(sceneName) @@ -428,13 +427,13 @@ end --Load mode files for i=1,#MODES do local m=MODES[i]--Mode template - if isSafeFile('parts/modes/'..m.name)then + if FILE.isSafe('parts/modes/'..m.name)then TABLE.complete(require('parts.modes.'..m.name),MODES[i]) MODES[m.name],MODES[i]=MODES[i] end end for _,v in next,fs.getDirectoryItems('parts/modes')do - if isSafeFile('parts/modes/'..v)and not MODES[v:sub(1,-5)]then + if FILE.isSafe('parts/modes/'..v)and not MODES[v:sub(1,-5)]then local M={name=v:sub(1,-5)} local modeData=require('parts.modes.'..M.name) if modeData.env then diff --git a/parts/gameFuncs.lua b/parts/gameFuncs.lua index 050861c2..412a8b3d 100644 --- a/parts/gameFuncs.lua +++ b/parts/gameFuncs.lua @@ -2,7 +2,7 @@ local gc_push,gc_pop=GC.push,GC.pop local gc_origin,gc_replaceTransform=GC.origin,GC.replaceTransform local gc_setLineWidth,gc_setColor=GC.setLineWidth,GC.setColor local gc_setShader=GC.setShader -local gc_draw,gc_rectangle,gc_line,gc_printf=GC.draw,GC.rectangle,GC.line,GC.printf +local gc_draw,gc_rectangle,gc_printf=GC.draw,GC.rectangle,GC.printf local ins,rem=table.insert,table.remove local int,rnd=math.floor,math.random @@ -93,13 +93,6 @@ do--function loadFile(name,args), function saveFile(data,name,args) end end end -function isSafeFile(file,mes) - if love.filesystem.getRealDirectory(file)~=SAVEDIR then - return true - elseif mes then - MES.new('warn',mes) - end -end function saveStats() return saveFile(STAT,'conf/data') end @@ -493,7 +486,7 @@ end function loadGame(mode,ifQuickPlay,ifNet)--Load a mode and go to game scene freshDate() if legalGameTime()then - if not MODES[mode]and love.filesystem.getRealDirectory('parts/modes/'..mode)~=SAVEDIR then + if not MODES[mode]and FILE.isSafe('parts/modes/'..mode) then MODES[mode]=require('parts.modes.'..mode) MODES[mode].name=mode end diff --git a/parts/scenes/app_console.lua b/parts/scenes/app_console.lua index f12611dc..f6e94391 100644 --- a/parts/scenes/app_console.lua +++ b/parts/scenes/app_console.lua @@ -131,7 +131,7 @@ local commands={}do code=function() local L=love.filesystem.getDirectoryItems"" for _,name in next,L do - if love.filesystem.getRealDirectory(name)==SAVEDIR then + if FILE.isSafe(name) then tree("",name,0) end end diff --git a/parts/scenes/stat.lua b/parts/scenes/stat.lua index 74e0bbc4..eaf6a6a2 100644 --- a/parts/scenes/stat.lua +++ b/parts/scenes/stat.lua @@ -115,9 +115,9 @@ scene.widgetList={ WIDGET.newButton{name='path',x=820,y=540,w=250,h=80,font=25, code=function() if SYSTEM=="Windows"or SYSTEM=="Linux"then - love.system.openURL(SAVEDIR) + love.system.openURL(love.filesystem.getSaveDirectory()) else - MES.new('info',SAVEDIR) + MES.new('info',love.filesystem.getSaveDirectory()) end end },