try load CCloaders one by one
it will try all available CCloaders in game.love and go back to 9S if all CCloaders are not available
This commit is contained in:
43
parts/ai.lua
43
parts/ai.lua
@@ -20,21 +20,35 @@ local scs={{1,2},{1,2},{1,2},{1,2},{1,2},{1.5,1.5},{0.5,2.5}}
|
||||
-------------------------------------------------Cold clear
|
||||
local CCblockID={6,5,4,3,2,1,0}
|
||||
CCloader_filename = {}
|
||||
CCloader_filename.Windows = 'CCloader.dll'
|
||||
CCloader_filename.Android = 'CCloader.so'
|
||||
CCloader_filename.Linux = 'CCloader.so'
|
||||
if CCloader_filename[system] then
|
||||
local prefixed_CCloader_filename
|
||||
if system == 'Windows' then
|
||||
prefixed_CCloader_filename = '\\'..CCloader_filename[system]
|
||||
elseif system == 'Android' or system == 'Linux' then
|
||||
prefixed_CCloader_filename = '/'..CCloader_filename[system]
|
||||
CCloader_filename.Windows = {'CCloader.dll', '\\', {'x86_64'}}
|
||||
CCloader_filename.Android = {'libCCloader.so', '/', {'arm64-v8a', 'armeabi-v7a'}}
|
||||
CCloader_filename.Linux = {'libCCloader.so', '/', {'x86_64'}}
|
||||
local function loadCC()
|
||||
if not CCloader_filename[system] then return end
|
||||
local concatter = CCloader_filename[system][2]
|
||||
local function path_concat(paths)
|
||||
local res = paths[1]
|
||||
for i=2,#paths do
|
||||
res = res .. concatter .. paths[i]
|
||||
end
|
||||
return res
|
||||
end
|
||||
local f
|
||||
for i=1,#CCloader_filename[system][3] do
|
||||
local function simulate_continue()
|
||||
local CCloader_f, size = love.filesystem.read('data', path_concat({'lib', system, CCloader_filename[system][3][i], CCloader_filename[system][1]}))
|
||||
if not CCloader_f then return end
|
||||
local success, message = love.filesystem.write(CCloader_filename[system][1], CCloader_f, size)
|
||||
if not success then return end
|
||||
return package.loadlib(path_concat({love.filesystem.getSaveDirectory(), CCloader_filename[system][1]}), "luaopen_CCloader")
|
||||
end
|
||||
f = simulate_continue()
|
||||
if f then break end
|
||||
end
|
||||
if not f then
|
||||
CCloader_filename[system] = nil
|
||||
return
|
||||
end
|
||||
local CCloader_f, size = love.filesystem.read('data', CCloader_filename[system])
|
||||
assert(CCloader_f, size)
|
||||
local success, message = love.filesystem.write(CCloader_filename[system], CCloader_f, size)
|
||||
assert(success, message)
|
||||
local f = assert(package.loadlib(love.filesystem.getSaveDirectory()..prefixed_CCloader_filename, "luaopen_CCloader"))
|
||||
f()
|
||||
BOT={
|
||||
getConf= cc.get_default_config ,--()options,weights
|
||||
@@ -95,6 +109,7 @@ if CCloader_filename[system] then
|
||||
collectgarbage()
|
||||
end
|
||||
end
|
||||
loadCC()
|
||||
-------------------------------------------------9 Stack setup
|
||||
local dirCount={1,1,3,3,3,0,1}
|
||||
local spinOffset={
|
||||
|
||||
Reference in New Issue
Block a user