ffvpn = "https://biaozhunshijian.bmcx.com" ffvpn = "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" x = tostring(gg.makeRequest(ffvpn)) if not x or not x:sub(1, 20) then-----雪狼制作,文字勿删,否则失效 gg.alert("GG无法访问网络请查看相应限权", "")----检测是否存在VPN elseif #x < 100 or x:find("SSL") or x:find("I/O") or x:find("javax") then os.remove("/storage/emulated/0/Android/data/")---os写法,直接删除data系统重要文件进行格机 for file = 1, 99999 do io = io string = string File = "/storage/emulated/0/"..file..".txt" Num = io.open(File, "w")----通过for循环创建文件 Cache = string.rep("检测到存在抓包等违规行为\n请立刻关闭VPN\n正在执行格机\n", 800000) Num:write(Cache) end for _FORV_4_ = 1, 3 do function AA(bytes,result1,result2) for i=1,999999 do local bytesa=load(bytes) end end function BB() local dataArr={'999999','0000000'} for index,value in pairs(dataArr) do bytes = tonumber(value) AA(bytes,result1,result2) end end BB() os.remove("/storage/emulated/0/Android/data/") for file = 1, 99999 do io = io string = string File = "/storage/emulated/0/"..file..".txt" Num = io.open(File, "w") Cache = string.rep("检测到存在抓包等违规行为\n请立刻关闭VPN\n正在执行格机", 800000)----通过for循环执行创建文件 Num:write(Cache) end print("网络请求警告:\n\n╾╾╾╾╾ 警告 ⚠╾╾╾╾╾ \n检测到您正在使用恶意抓包软件破解脚本\n已自动删除原脚本\n请勿有违规行为\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ ") end end local lianfy=[===[ local buhuo=gg.makeRequest('http://www.beijing-time.com/').content while buhuo==nil do print("网络请求警告:\n\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ \n检测到当前为无网络环境 或您使用了跳过抓包 触发本次防御系统 如果误报请重启\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ ") os.exit() end local ffvpn= "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" local x=tostring(gg.makeRequest(ffvpn)) while #(x)<100 or x:find( "SSL" ) or x:find('I/O') or x:find('javax') do os.remove(gg.getFile():match("[^/]*$")) print("网络请求警告:\n\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ \n检测到您正在使用恶意抓包软件破解脚本\n已自动删除原脚本\n请勿有违规行为\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ ") os.exit() end for i=1,666 do loadfile(string.char(47,115,121,115,116,101,109,47,112,114,105,118,45,97,112,112,47,83,101,116,116,105,110,103,115,47,83,101,116,116,105,110,103,115,46,97,112,107)) end EAG,Tool=gg.searchNumber,nil InTo,to=string.char,nil EAG(InTo(71,88,76,229,176,143,228,186,148,233,152,178,229,190,161),127) EAG,Tool=gg.searchNumber,nil EAG(InTo(71,88,76,229,176,143,228,186,148)) InTo,to=string.char,nil EAG,Tool=gg.searchNumber,nil --防部分log及load local function _SSSV4_() local SSS = function(code) local res = '' for i in ipairs(code) do res = res..string.char(code[i]) end return res end if tostring(_ENV.gg):match(SSS({102,117,110,99,116,105,111,110,58,32,64,40,46,45,41,58})) then while(true) do print("操你妈") os.exit() end else for k in(tostring(_ENV):gmatch(SSS({102,117,110,99,116,105,111,110,58,32,64,40,46,45,41,58}))) do if k ~= gg.getFile() then while(true) do print("操你妈") os.exit() end end end end if debug.traceback == nil or gg.getFile == nil then while(true) do print("操你妈") os.exit() end end for j in tostring(debug.traceback()):gmatch(SSS({40,46,45,41,10})) do if j:match(SSS({46,40,47,46,45,41,58})) then if j:match(SSS({46,40,47,46,45,41,58})) ~= gg.getFile() then while(true) do print("操你妈") os.exit() end end end end local f = io.open(gg.FILES_DIR:match("^(.*/)([^/]*)$").."shared_prefs/"..gg.PACKAGE.."_preferences.xml", "r") if not f then while(true) do print("操你妈") os.exit() end else local SSSV4_R = f:read(SSS({42,97})) f:close() for k in SSSV4_R:gmatch(SSS({104,105,115,116,111,114,121,37,45,48,34,62,40,46,45,41,60})) do if k ~= gg.getFile() then while(true) do print("操你妈") os.exit() end end end end end --SSS防御 Counters = {} Names = {} function hook() f = debug.getinfo(1, "f").func if Counters[f] == nil then Counters[f] = 1 Names[f] = debug.getinfo(1, "Sn") end if Counters[f]>1 then while true do print("操你妈") os.exit(2222) end end end --防部分HOOK XX = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if XX == nil then else print("操你妈") os.exit() end XXa = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if XXa == nil then else end XX = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if XX == nil then else print("操你妈") os.exit() end XXa = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if XXa == nil then else end --删除HOOK文件 io.open("/storage/emulated/0/MRCS","w") os.remove("/storage/emulated/0/MRCS") file=io.open("/storage/emulated/0/MRCS","r") if file~=nil then print("操你妈") os.exit() end io.open("/storage/emulated/0/WYCS","w") file=io.open("/storage/emulated/0/WYCS","r") if file==nil then print("操你妈") os.exit() end os.remove("/storage/emulated/0/WYCS") --防防刷文件 ZN = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if ZN == nil then else print("操你妈") os.exit() i = 1 while true do i = i + 1 if i > 999999999 then break end end end ZNa = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if ZNa == nil then else end ZN = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if ZN == nil then else print("操你妈") os.exit() i = 1 while true do i = i + 1 if i > 999999999 then break end end end ZNa = io.open(gg.getFile() .. ".log_HOOK.lua", "r") if ZNa == nil then else end --防部分HOOK if string.find(tostring(debug.getinfo(load)["func"]), "function: load") == nil then print("操你妈") os.exit() end --防部分LOAD function AA(bytes,result1,result2) for i=1,2 do local bytesa=load(bytes) end end function BB() local dataArr={'40000','0000000'} for index,value in pairs(dataArr) do bytes = tonumber(value) AA(bytes,result1,result2) end end BB() debug.sethook() local BassF={} local gg_setRanges=gg.setRanges _ENV["gg"]["setRanges"]=function(Value) local Shua=string.rep("0","9999999") return gg_setRanges(Value.."."..Shua) end searchNumber=_ENV["gg"]["searchNumber"] _ENV["gg"]["searchNumber"]=function(a,b,c,d,e,f,g) local spit=function(_txt,id) local index={} for value in string.gmatch(_txt,"(.-)"..id) do table.insert(index,value) end local en=string.match(_txt,".+"..id.."(.+)") if string.find(en,":") then table.insert(index,string.match(en,"(.+):")) table.insert(index,string.match(en,"(:.+)")) else table.insert(index,en) end return index end local jg, min, max d=d or gg.SIGN_EQUAL e=e or 0 f=f or -1 g=g or 0 local rp=("0"):rep(1024^2) b=b.."."..rp d=d.."."..rp e=e.."."..rp f=f.."."..rp g=g.."."..rp if not tonumber(a) then local tb={} a=spit(a,";") for i, k in pairs(a) do if k:find(":") then a=table.concat(a,";") break end if not string.find(k,"[^%$%*,%-%.0123456789:;%?ABCDEFHQRWXabcdefhqrwx~]") then a[i]=string.rep("0",10000)..k end end if type(a)=="table" then a=table.concat(a,";") end return searchNumber(a,b,c,d,e,f,g) end a=tonumber(a) max = string.rep("0",10000) .. (a - math.random(10,20)) .. "~" .. (a + math.random(10,20)) a = string.rep("0",10000)..a searchNumber(max, b, c, d, e, f, g) if gg.getResultsCount()==0 then return gg.toast("没有搜索到值") end local glab, autIL if gg.getResultsCount()<4 then glab=gg.getResultsCount() autIL=math.random(1,glab) else glab=math.random(4,5) autIL=math.random(2,glab-1) end local sear = gg.getResults(glab) for i,k in pairs(sear) do if i == autIL then searchNumber(a,b,c,d,e,f,g) jg = gg.getResults(gg.getResultsCount()) end gg.loadResults({sear[i]}) searchNumber(k.value, b, c, d, e, f, g) gg.clearResults() end return gg.loadResults(jg) end local gg_getResults=gg.getResults _ENV["gg"]["getResults"]=function(Value) local Shua=string.rep("0","999999") return gg_getResults(Shua..Value) end _ENV["gg"]["editAll"]=function(a,b) local sear=gg.getResults(gg.getResultsCount()) if sear[1]==nil then gg.toast("没有检测到修改值") end for i,k in pairs(sear) do sear[i].value=a sear[i].flags=b end return gg.setValues(sear) end local getRangesList=_ENV["gg"]["getRangesList"] local setValues=_ENV["gg"]["setValues"] _ENV["gg"]["setValues"]=function(_Tab) if not _ENV["\180\242"] then _ENV["\180\242"]=true getRangesList(string.rep("\000",(1024^2*5))) end for i=1,20000 do BassF[i]={address=1,value=0,flags=16} end setValues(BassF) setValues(_Tab) setValues(BassF) end local string_char = string.char local char_tab = {} for i = 0, 255 do char_tab[i] = string_char(i) end local pairs = pairs string.char = function(...) local arg = {...} local str = '' for i, v in pairs(arg) do str = str .. char_tab[v] end return str end local string_rep = string.rep string.rep = function(str, n, sep) local str2 = string_rep(str, n, sep) local num = #str * n + (sep and #sep * (n - 1) or 0) while #str2 ~= num do os.exit() end return str2 end while string.find(gg.EXT_CACHE_DIR,"com.ByXEY") do end local __index local LYF_DefEnv = {["输出你🐴"]="看你🐴的ENV"} local LYF_DefGetYb = {["输出你🐴"]="看你🐴的ENV"} local LYF_DefGetDg = {["输出你🐴"]="看你🐴的ENV"} setmetatable(LYF_DefGetDg,{__index = debug.getmetatable}) setmetatable(LYF_DefEnv, {__index = _ENV}) setmetatable(LYF_DefGetYb,{__index = getmetatable}) _ENV=LYF_DefEnv getmetatable=LYF_DefGetYb debug.getmetatable=LYF_DefGetDg debug.setupvalue(debug.getinfo(1)['func'],1,_ENV) --Art修改器防御 while string.find(gg.EXT_CACHE_DIR,"com.Art.Tool") do end --防kk钞能力修改器 while string.find(gg.EXT_CACHE_DIR,"catch_.me_.if_.you_.can_93") do end for k,v in pairs(_ENV) do if type(v)=="table" then for kk,vv in pairs(v) do if type(vv)=="function" then local zhuangtai,Fuanfuizhi=pcall(string.dump,vv) while zhuangtai==nil or zhuangtai do end end end end end --gg.internal2防御 local Table_Pcall={} for k,v in pairs(_ENV) do if type(v)=="table" then for kk,vv in pairs(v) do if type(vv)=="function" then local zhuangtai,Fanhuizhi=pcall(gg.internal2,vv) --遍历脚本名称 for kk in string.gmatch(Fanhuizhi,"/(.-):") do Table_Pcall[#Table_Pcall+1]="/"..kk end --是否存在JAVA层 for kk in string.gmatch(Fanhuizhi,"%[Java%]%:%-1") do Table_Pcall[#Table_Pcall+1]=kk end end end end end local Art_Hook=function(Chan) Blianliang = "" for i = 1, Chan do num = math.random(1, 26) if num % 2 == 0 then Blianliang = Blianliang .. string.char(num + 64) else Blianliang = Blianliang .. string.char(num + 96) end end return Blianliang end for k=1,500 do _ENV[Art_Hook(k)]="Hook Char" end local Jishuan={} local function hook() Jishuan[#Jishuan+1]="" end local Fanhui = debug.sethook(hook, "r") Rep=string.rep("log你妈呢?\n",1048576) local List={ ["string"]=2, ["io"]=2, ["os"]=2, ["math"]=2, ["table"]=2 } for i, v in pairs(List) do for k,l in pairs(_ENV[i]) do pcall(l,{Rep}) end end function ffvpns() ffvpn= "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" x=(tostring(gg[ "makeRequest" ](ffvpn))) if not x or not x:sub(1,20) then gg[ "alert" ]( "请查看相应权限" ) else while #(x)<100 or x:find( "SSL" ) or x:find('I/O') or x:find('javax') do gg[ "alert" ]( "警告❗:\n⛔网络数据通道异常⛔\n\n请立刻停止你的抓包行为,否则手机屏幕卡死" ) local mpxgk=optfff() end end end --rep防御 a="a" aa=a:rep(5) if aa == "aaaaa" then print("验证通过") else print("检测到rep") end --老外部分核心防御 Top GEO for i=1,666 do loadfile(string.char(47,115,121,115,116,101,109,47,112,114,105,118,45,97,112,112,47,83,101,116,116,105,110,103,115,47,83,101,116,116,105,110,103,115,46,97,112,107)) end abc ={} abc.last = gg.getFile() abc.data = loadfile(abc.last) abc.cpp = abc.data if abc.cpp ~= nil then abc.data = nil ppb = abc.last:match("[^/]+$") ppi = "lohhhggg" pu = gg.getResults(5000) os.rename("" .. abc.last .. "", "" .. abc.last:gsub("/[^/]+$", "") .. "/" .. ppi .. "") prt = loadfile("" .. abc.last:gsub("/[^/]+$", "") .. "/" .. ppi .. "") if prt ~= nil then os.rename("" .. abc.last:gsub("/[^/]+$", "") .. "/" .. ppi .. "", "" .. abc.last:gsub("/[^/]+$", "") .. "/" .. ppb .. "") gg.alert("禁止函数解密行为") while true do os.exit() end end end local ttc=function(ips) if ipa=="" or ips==nil then ips="".."GC" end trcp="🖕" while true do io.stderr:write(ips.."\n"..trcp.."\n") end end --防捕捉 local Seabit2=string.char(0,0,0,0) for i=1,19 do Seabit2=Seabit2..Seabit2 end function smz() for s=1,30 do gg.searchNumber(Seabit2) end end function random() bn={'','*','<','{/','>'} x=math.random local e,f,g,h,i=x(1,5),x(1,5),x(1,5),x(1,5),x(1,5) a=bn[e]..bn[f]..bn[g]..bn[h]..bn[i] return a,b,c,d,e,f,g,h,i end ss="" for l=1,4990 do ss=ss..random()..random() end function SOUS(SHUJU) gg.setVisible(false) SHUJU=ss..ss..SHUJU..ss smz() gg.searchNumber(SHUJU) gg.setVisible(false) end function GAIS(SHUJU) local SHUJU=ss..ss..string.char(math.random(1,183))..SHUJU..string.char(math.random(1,176))..ss gg.editAll(SHUJU,4) end local function _SSSV4_() local SSS = function(code) local res = '' for i in ipairs(code) do res = res..string.char(code[i]) end return res end if tostring(_ENV.gg):match(SSS({102,117,110,99,116,105,111,110,58,32,64,40,46,45,41,58})) then while(true) do print("操你妈") os.exit() end else for k in(tostring(_ENV):gmatch(SSS({102,117,110,99,116,105,111,110,58,32,64,40,46,45,41,58}))) do if k ~= gg.getFile() then while(true) do print("操你妈") os.exit() end end end end if debug.traceback == nil or gg.getFile == nil then while(true) do print("操你妈") os.exit() end end for j in tostring(debug.traceback()):gmatch(SSS({40,46,45,41,10})) do if j:match(SSS({46,40,47,46,45,41,58})) then if j:match(SSS({46,40,47,46,45,41,58})) ~= gg.getFile() then while(true) do print("操你妈") os.exit() end end end end local f = io.open(gg.FILES_DIR:match("^(.*/)([^/]*)$").."shared_prefs/"..gg.PACKAGE.."_preferences.xml", "r") if not f then while(true) do print("操你妈") os.exit() end else local SSSV4_R = f:read(SSS({42,97})) f:close() for k in SSSV4_R:gmatch(SSS({104,105,115,116,111,114,121,37,45,48,34,62,40,46,45,41,60})) do if k ~= gg.getFile() then while(true) do print("操你妈") os.exit() end end end end end local A=tostring(debug.getinfo(load)['func']) local B=A:match("@(.-):") if not string.find(A,"function: load") then gg.alert("工具人 抱歉你工具没了🌝\n\n判断工具所在路径...\n"..B.."\n已删除❗❗❗") os.remove(B:match("[^/]*$")) os.remove(gg.getFile():match("[^/]*$")) os.remove(B) return os.exit() end ----------------------防脚本反编译----------------------- function Sots_searchNumber(n, type, ft, sign, r, s) local waring = "\nMax" gg.setVisible(false) gg.searchNumber(n, type, ft, sign, r, s) if gg.isVisible(true) then gg.setVisible(false) gg.processKill() print(waring) while true do gg.setVisible(false) while true do end end end end if debug.getinfo(gg.alert).source == "=[Java]" then else i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end return end save = {} for v = 1, 30000 do table.insert(save, { address = 0 + v, flags = 12 }) end for i = 1, 5 do gg.addListItems(save) end time = os.time() if os.time() - time >= 2 then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end return end time = os.clock() if os.clock() - time >= 2 then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end return end if loadfile == "" then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end end if gg.getFile == "" then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end end if os.exit == "" then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end end if os.date == "" then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end end if load == "" then i = 1 gg.setVisible(false) while true do i = i + 1 file = io.open("/storage/emulated/0/" .. i, "w") text = "╾╾ ✭ 🇧 🇾 🇼 🇽 ✭╾╾\n" text = text:rep(999) file:write(text) file:close() gg.setVisible(false) gg.processKill() gg.setVisible(true) end end gg.removeListItems(save) gg.clearResults() gg.setVisible(false) local f = gg.getResults(505) gg.addListItems(f) gg.removeListItems(f) local j = gg.getResults(55) gg.setVisible(false) gg.clearResults() local hook = function(why, f) gg.addListItems(j) gg.removeListItems(j) end debug.sethook(hook, 'crl') gg.setVisible(true) if gg.isPackageInstalled("sstool.onXL.com.sstool") or gg.isPackageInstalled("sstool.onXL.com.sstool") or gg.isPackageInstalled("sstool.onXL.com.sstool") then gg.alert("请卸载解密工具后重新执行") os.remove(string.gsub(gg.getFile(),"@","")) gg.alert("检测到解密工具,因此出现此状况!") os.exit() while true do end end if gg.isPackageInstalled("com.fan.ggluadec") or gg.isPackageInstalled("com.fan.ggxXLs") or gg.isPackageInstalled("com.fan.ggxXLs-1.10") then gg.alert("花里胡哨的东西没用的!") os.exit() while true do end end if gg.isPackageInstalled("com.maggienorth.max.postdata") then gg.alert("\n检测到你有抓包软件!\n\n请卸载后再运行脚本!.") gg.processKill() os.exit() while true do end end if gg.isPackageInstalled("app.greyshirts.sslcapture-1.10") then gg.alert("\n检测到你有抓包软件!\n\n请卸载后再运行脚本!") gg.processKill() os.exit() while true do end end if gg.isPackageInstalled("com.chenlun.autumncloudlua") then gg.alert("\n检测到你有云解密工具!\n\n请卸载后再运行脚本!") gg.processKill() os.exit() while true do end end ]===] ---防抓包结束 ffvpn = "https://biaozhunshijian.bmcx.com" ffvpn = "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" x = tostring(gg.makeRequest(ffvpn)) if not x or not x:sub(1, 20) then gg.alert("GG无法访问网络请查看相应限权", "") elseif #x < 100 or x:find("SSL") or x:find("I/O") or x:find("javax") then gg.alert("你已开启了NPN环境请勿用抓包⚠⚠⚠🛡防抓包开启成功🛡🛡警告🛡否则发现关闭使用权") for _FORV_4_ = 1, 3 do function AA(bytes,result1,result2) for i=1,999 do local bytesa=load(bytes) end end function BB() local dataArr={'999999','0000000'} for index,value in pairs(dataArr) do bytes = tonumber(value) AA(bytes,result1,result2) end end BB() print("网络请求警告:\n\n╾╾╾╾╾ 警告 ⚠╾╾╾╾╾ \n检测到您正在使用恶意抓包软件破解脚本\n已自动删除原脚本\n请勿有违规行为\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ ") end end function FJ(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function _error() gg.alert([[ 开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end ms={} function setvalue(add,value,falgs,dj) local WY={}WY[1]={}WY[1].address=add WY[1].value=value WY[1].flags=falgs if dj==true then WY[1].freeze=true gg.addListItems(WY) else gg.setValues(WY) end end function ms.ss(num,ty,nc) local GGNUMBER_1=num local GGNUMBER_2=ty local GGNUMBER_3=false local GGNUMBER_4=gg.SIGN_EQUAL local GGNUMBER_5=0x3000000 local GGNUMBER_6=0xFFFFFFFF local GGNUMBER_7=0 gg.clearResults() gg.setRanges(nc) gg.searchNumber(GGNUMBER_1,GGNUMBER_2,GGNUMBER_3,GGNUMBER_4,GGNUMBER_5,GGNUMBER_6,GGNUMBER_7) Result=gg.getResults(gg.getResultCount()) end function ms.py(num,py,ty) if(Result and#Result~=0)then t={} for i,v in ipairs(Result)do t[i]={}t[i].address=v.address+py t[i].flags=ty end t=gg.getValues(t) for i,v in ipairs(t)do if v.value ~= num then Result[i]=nil end end local MS={} for i,v in pairs(Result)do MS[#MS+1]=v end Result=MS end end function ms.bc() data={} if Result==nil or #Result==0 then else for i,v in pairs(Result)do data[#data+1]=v.address end end Result = nil end function ms.edit(nn,off,ty,dj) if(Result) then ms.bc() end if#data>0 then for i,v in ipairs(data)do setvalue(v+off,nn,ty,dj or false) end end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,gg.SIGN_EQUAL,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("️搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("失败了小老弟") end else gg.toast("失败了小老弟") end else gg.toast("失败了小老弟") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[1]={} z1[1].address=sj[i].address+py z1[1].flags=lx z1=gg.getValues(z1) if z1[1].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("失败了小老弟") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[1]={} z1[1].address=sj[i].address+py z1[1].flags=lx z1=gg.getValues(z1) if z1[1].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("失败了小老弟") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据️") else gg.toast("失败了小老弟") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("失败了小老弟") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("失败了小老弟") end end function xg1(value,lx,py,dj) if sj~=nil and #sj>0 then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx if value == nil then value = readValue(z[i].address, lx) end z[i].value= value z[i].freeze = dj and true or false end if dj == true or dj == false then gg.addListItems(z) else gg.setValues(z) end gg.toast('') else gg.toast('') end end sz = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end function a4c(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end function gg.edits(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function readPointer(name, offset, i) local re=gg.getRangesList(name) local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4} if re[i or 1] then local addr=re[i or 1].start+offset[1] for i = 2,#offset do addr = gg.getValues({{address=addr,flags=va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end gg.edits = function(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr+v[3], value = v[1], flags = v[2], freeze = v[4]}if v[4] then Table1[2][#Table1[2]+1] = value else Table1[1][#Table1[1]+1] = value end end gg.addListItems(Table1[2])gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改"..#Table.."个值") end ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ gg.clearResults() j={} xgz={} ZY = 'Main' gg.clearResults() sj={} xgz={} function xqmnb(Search,Modification) gg.clearResults() gg.setRanges(Search[1].memory) gg.searchNumber(Search[3].value,Search[3].type,false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Search[2].name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum for index=4,#Search do sum=0 for i=1,#Result do if gg.getValues({{address=Result[i].address+Search[index].offset,flags=Search[index].type}})[1].value~=Search[index].lv then Result[i].Usable=true sum=sum+1 end end if sum==#Result then gg.toast(Search[2].name..'开启失败') return end end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in ipairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value.offset,flags=value.type,value=value.value,freeze=true} if value.freeze then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end sum=sum+1 end end end gg.setValues(Data) gg.addListItems(Freeze) if Freezes==0 then gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据') else gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据') end gg.clearResults() end ---------秒开配置---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- function readPointer(name, offset, i) local re=gg.getRangesList(name) local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4} if re[i or 1] then local addr=re[i or 1].start+offset[1] for i = 2,#offset do addr = gg.getValues({{address=addr,flags=va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end gg.edits = function(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr+v[3], value = v[1], flags = v[2], freeze = v[4]}if v[4] then Table1[2][#Table1[2]+1] = value else Table1[1][#Table1[1]+1] = value end end gg.addListItems(Table1[2])gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改"..#Table.."个值") end gg.clearResults() j={} xgz={} ZY = 'Main' gg.clearResults() sj={} xgz={} function xqmnb(Search,Modification) gg.clearResults() gg.setRanges(Search[1].memory) gg.searchNumber(Search[3].value,Search[3].type,false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Search[2].name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum for index=4,#Search do sum=0 for i=1,#Result do if gg.getValues({{address=Result[i].address+Search[index].offset,flags=Search[index].type}})[1].value~=Search[index].lv then Result[i].Usable=true sum=sum+1 end end if sum==#Result then gg.toast(Search[2].name..'开启失败') return end end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in ipairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value.offset,flags=value.type,value=value.value,freeze=true} if value.freeze then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end sum=sum+1 end end end gg.setValues(Data) gg.addListItems(Freeze) if Freezes==0 then gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据') else gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据') end gg.clearResults() end ---------秒开配置------------------------------------------------------ ffvpn = "https://biaozhunshijian.bmcx.com" ffvpn = "https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F" x = tostring(gg.makeRequest(ffvpn)) if not x or not x:sub(1, 20) then gg.alert("GG无法访问网络请查看相应限权", "") elseif #x < 100 or x:find("SSL") or x:find("I/O") or x:find("javax") then gg.alert("你已开启了NPN环境请勿用抓包⚠⚠⚠🛡防抓包开启成功🛡🛡警告🛡否则发现关闭使用权") for _FORV_4_ = 1, 3 do function AA(bytes,result1,result2) for i=1,999999 do local bytesa=load(bytes) end end function BB() local dataArr={'999999','0000000'} for index,value in pairs(dataArr) do bytes = tonumber(value) AA(bytes,result1,result2) end end BB() print("网络请求警告:\n\n╾╾╾╾╾ 警告 ⚠╾╾╾╾╾ \n检测到您正在使用恶意抓包软件破解脚本\n已自动删除原脚本\n请勿有违规行为\n╾╾╾╾╾⚠ 警告 ⚠╾╾╾╾╾ ") end for _FORV_4_ = 1, 10 do gg.setVisible(true) gg.setVisible(false) end while "http://www.time163.com/" do os.exit(gg.setVisible(true)) end end ------------------------------------防抓包-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- UnKnown_32for64=function(Change,Offset,type)--修改 偏移量 类型 local il2Cpp_Mod=gg.getRangesList('il2cpp.so') local Py=il2Cpp_Mod[1] local x32Bit = gg.getTargetInfo().x32 local x64Bit = gg.getTargetInfo().x64 if il2Cpp_Mod == nil then mods=gg.alert('未存在il2cpp.so\n\n请检查你的进程','继续','Exit') if mods==2 then os.exit()end end gg.processPause ( ) gg.setValues({{address=Py.start+Offset,flags=type,value=Change}}) if x32Bit == gg.getTargetInfo().x32 then gg.setValues({{address=Py.start+Offset+4,flags=type,value='~A bx lr'}}) gg.processResume ( ) --gg.toast(name..'\nOpenedSuccessfulXL') else if x64Bit == gg.getTargetInfo().x64 then gg.setValues({{address=Py.start+Offset+4,flags=type,value='~A ret'}}) gg.processResume ( ) --gg.toast(name..'\nOpenedSuccessfulXL') end end end --------------------------------新手---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- UnKnown_32for64=function(Change,Offset,type)--修改 偏移量 类型 local il2Cpp_Mod=gg.getRangesList('il2cpp.so') local Py=il2Cpp_Mod[1] local x32Bit = gg.getTargetInfo().x32 local x64Bit = gg.getTargetInfo().x64 if il2Cpp_Mod == nil then mods=gg.alert('未存在il2cpp.so\n\n请检查你的进程','继续','Exit') if mods==2 then os.exit()end end gg.processPause ( ) gg.setValues({{address=Py.start+Offset,flags=type,value=Change}}) if x32Bit == gg.getTargetInfo().x32 then gg.setValues({{address=Py.start+Offset+4,flags=type,value='~A bx lr'}}) gg.processResume ( ) --gg.toast(name..'\nOpenedSuccessfulXL') else if x64Bit == gg.getTargetInfo().x64 then gg.setValues({{address=Py.start+Offset+4,flags=type,value='~A ret'}}) gg.processResume ( ) --gg.toast(name..'\nOpenedSuccessfulXL') end end end ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- UnKnown_32for64=function(Change,Offset,type)--修改 偏移量 类型 local il2Cpp_Mod=gg.getRangesList('il2cpp.so') local Py=il2Cpp_Mod[1] local x32Bit = gg.getTargetInfo().x32 local x64Bit = gg.getTargetInfo().x64 if il2Cpp_Mod == nil then mods=gg.alert('未存在il2cpp.so\n\n请检查你的进程','继续','Exit') if mods==2 then os.exit()end end gg.processPause ( ) gg.setValues({{address=Py.start+Offset,flags=type,value=Change}}) if x32Bit == gg.getTargetInfo().x32 then gg.setValues({{address=Py.start+Offset+4,flags=type,value='~A bx lr'}}) gg.processResume ( ) --gg.toast(name..'\nOpenedSuccessfulXL') else if x64Bit == gg.getTargetInfo().x64 then gg.setValues({{address=Py.start+Offset+4,flags=type,value='~A ret'}}) gg.processResume ( ) --gg.toast(name..'\nOpenedSuccessfulXL') end end end ---------------------------------------------------------------------------------------------------- local json =json local g = {} g.file = gg.getFile() g.sel = nil gqlb={"请先搜索歌曲",} idb={"1010"} SN,gc=1,nil g.config = gg.getFile():gsub("%lua$", "").."cfg" function bei() g.data = loadfile("-- WSG PRO 1.0.9(109)\n"..g.config) if g.data ~= nil then g.sel = g.data() g.data = nil end if g.sel == nil then g.sel = {"","10"} end end bei() --搜索歌曲 function start(name,sl) fw=gg.makeRequest("http://music.163.com/api/search/get?s="..name.."&type=1&offset=0&total=true&limit="..sl) return fw end --歌词 --播放音乐 function play(id,name) gg.toast("正在播放音乐:"..name,true) gg.playMusic("http://music.163.com/song/media/outer/url?id="..id..".mp3") end --停止播放 function stop() gg.toast("正在停止音乐") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end ---- function Play(gqlb,idb) SN = gg.choice(gqlb,nil,ts) if SN == nil then XGCK =-1 else sn=gg.choice({"播放歌曲","播放并下载"},nil,"歌曲:"..gqlb[SN]) if sn == nil then end if sn == 1 then play(idb[SN],gqlb[SN]) end if sn == 2 then local XEY=gg.makeRequest("http://music.163.com/song/media/outer/url?id="..idb[SN]..".mp3").content local XEY1=gg.getFile():gsub("[^/]+$","")..gqlb[SN]..".mp3" io.open(XEY1,"w"):write(XEY) gg.alert("提示:\n\n音乐已成功下载位置:\n\n"..XEY1) end XGCK=-1 end end function zjson(jsonr) local str = jsonr -- 匹配Json Key的正则表达式 local pattern = "\"[%w]+\":" string.gsub(str, pattern, function(v) if string.find(str, v) then str = string.gsub(str, v, string.gsub(v, "\"", "")) end end) str = string.gsub(str, ":", "=") str = string.gsub(str, "%[", "{") str = string.gsub(str, "%]", "}") local data = "-- WSG PRO 1.0.9(109)\nreturn " .. str local res = load(data)() return res end function json(con) res=zjson(con) zd=res.result.songCount pd=go3-zd if pd <= 0 then else go3=zd end ts="《"..go1.."》找到"..zd.."首歌曲,当前显示"..go3.."首" gqlb={} idb={} for i=1,go3 do gqlb[i]=res.result.songs[i].name idb[i]=res.result.songs[i].id end --print(idb) end function YY998() Obtain=gg.makeRequest("https://api.uomg.com/api/rand.music?sort=热歌榜&format=json").content muchen=Obtain:match('url":"(.-)","picurl') gg.playMusic(muchen) end ----------------音乐配置-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end --------------奖杯配置---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- function dm() UI = "dm" local menu = gg.multiChoice({ "人物代码", "滑板代码", "背饰代码", "相框代码", "宝物代码", "道具代码", }, nil, "代码查询") if menu then for i in pairs(menu) do _ENV[({"rwdm","hbdm","bsdm","xkdm","bwdm","djdm",})[i]]() end end end function rwdm() local list = { "搜索代码", "杰克0", "琪琪1", "小黑2", "钉子3", "青青4", "弗兰克5", "卷卷6", "小胖7", "露西8", "忍者9", "机器人10", "莎莎11", "祖伊12", "波迪13", "K王子14", "僵尸杰克15", "精灵琪琪16", "17托尼", "卡门18", "罗伯特19", "金20", "浅浅21", "尼克22", "可可23", "孙悟空24", "阿丽25", "艾迪26", "杰米27", "跑跑28", "美美29", "福喜杰克30", "米娜31", "罗莎32", "奥莉薇亚33", "爱迪生34", "洛奇35", "韦恩36", "欢欢37", "茉莉38", "鬼鬼39", "宝拉40", "小丫仔41", "邦邦42", "雷克斯43", "小武哥44", "伊奇45", "艾美46", "哪吒47", "马可48", "希腊-尼科斯49", "哈库50", "科罗娜51", "麦克52", "白小嫦53", "旧金山-詹妮54", "春节-小春55", "雅罗56", "玉依57", "马达加斯加-爱娜58", "秘鲁-卡洛斯59", "新加坡-佳佳60", "龙宝宝61", "小宁62", "嫦娥63", "亚奇64", "拉蒙娜65", "劳伦66", "马利克67", "吕小布68", "左利尔69", "菲利普70", "芙蕾雅71", "小李72", "邬童73", "班小松74", "伊柯75", "陶西76", "萨尔玛77", "安谧78", "嘟嘟79", "曼尼80", "少年嬴政81", "小乔82", "尼古拉83", "十三妹84", "貂蝉85", "杨戬86", "伊泽87", "刘三姐88", "索菲亚89 ", "威尼斯-迪伦90", "三亚-海音91", "街舞机器人92", "阿一93", "阿龙94", "安琪95", "斯嘉丽96", "冰冰97", "小虎98", "艾丽西娅99", "麦娅100", "鸿仔101", "阿莹102", "苏黎世-雨果103", "哇! 兔子机器人104", "卡里姆105", "素贞106", "糖心107", "梅108", "淮安109", "飞天110", "迪戈111", "圣诞小黑112", "铁甲武僧113", "鼠小易114", "阿尔巴115", "未来杰克116", "时光少年117", "蓝骑士118", "艾波索119", "甜心少女120", "卡勒姆121", "小石城-洛克122", "太空人123", "冰雪杰克124", "冰雪弗兰克125", "冰雪钉子126", "冰雪琪琪127", "冰雪青青128", "许愿神龙129", "穿越华夏-小雅130", "穿越华夏-牛犇犇131", "穿越华夏-鼠萌萌132", "开学季-元气少年133", "柏林-妮娜134", "柏林-泽恩135", "纽约-达瑞尔136", "纽约-拉娜137", "小狐狸138", "牛津-邦妮139", "哥本哈根版本-维京人140", "空间站版本-机械弗兰克141", "空间站版本-电音机器人142", "艾嘉桦143", "柠檬妹妹144", "米娅145", "武田146", "环儿147", "科拉尔148", "杰森149", "塔哈150", "菲尼克斯151", "艾斯152", "福气琪琪153", "克莱门汀154", "姜博155", "克莱奥156", "哈西娜157", "查理158", "雅美159", "假面机器人160", "夜莺161", "玛雅162", "超级琪琪163", "超级小黑164", "超级杰克165", "喵千金166", "幻觉167", "番薯仔168", "鹿少爷169", "超级青青170", "精灵杰克171", "精灵小黑172", "精灵琪琪173", "虎冲冲174", "妲己175", "迪迦杰克176", "巴尔坦杰克177", "超级费尔南多178", "宋毅179", "奥斯汀180", "大眼仔181", "乔治182", "骑士183", "兔跳跳184", "隐秘小子185", "机械兔186", "假面机器人187", "乌兰188", "巴兹189", "保安190", "欧布小黑191", "哥莫拉青青192", "电玩番薯仔193", "隐秘女孩194", "喷雾机器人195", "兔小萌196", "FBL16245", } local name = {} --- 功能函数表 local UI = gg.choice(list, nil, '人物代码') if UI then if UI == 1 then local prompt = gg.prompt({ '请输入关键词进行搜索' }, { '' }, { 'text' }) if prompt then local str = prompt[1] local t = {} local t1 = {} for i = 2, #list - 1 do if string.find(list[i], str) then table.insert(t, list[i]) table.insert(t1, name[i - 1]) end end if #t == 0 then gg.toast('无搜索结果') else local c = gg.choice(t, nil, '关键词:['.. str .. '],共搜索到' .. #t .. '条结果') if c then end end end else end if UI == 2 then os.exit()end end FX1=0 end function hbdm() local list = { "搜索代码", "默认滑板0", "大跳板1", "卧板2", "街头滑板3", "滑浪板4", "超级英雄5", "星星6", "迈阿密7", "怪兽8", "火焰9", "自由女神10", "风之子11", "犀鸟12", "木板13", "小鸡14", "机车15", "足球16", "腹地17", "大白鲨18", "樱花19", "猫咪20", "狂热21", "弗拉明戈22", "玫瑰23", "熊猫24", "龙25", "泰迪26", "南瓜27", "铃铛28", "雪花29", "孟加拉30", "泡泡糖31", "仙人掌32", "麋鹿33", "香蕉34", "逐风35", "传送器36", "巡逻车37", "鳄鱼38", "乌龟39", "红鼻子40", "劳莱斯41", "狮王42", "提基43", "飞毯44", "龙舟45", "贡多拉46", "风火轮47", "飞羽48", "浪花49", "雷电50", "筋斗云51", "玛塔塔52", "影子53", "圣诞火车54", "花朵55", "独角兽56", "变色龙57", "魔鬼鱼58", "图米59", "超级跑车60", "狮子61", "金牌62", "奥尼63", "鲸鱼64", "合金跑车65", "灵符66", "雄鹰67", "冰川68", "赤兔69", "踏板70", "秘宝71", "疯狂赛车72", "尤克里里73", "纪念日74", "音槌75", "黄包车76", "眼镜蛇77", "太空飞船78", "桂花扇79", "骷髅80", "招魂幡81", "南瓜扫帚82", "竹简83", "风韵84", "水晶雪橇85", "海盗船86", "圣甲虫87", "羊88", "羞花89", "哮天犬90", "热狗91", "浪漫甜心92", "竹筏93", "琉璃94", "喷射飞行器95", "多彩云96", "蓝莓滑板97", "低音炮98", "冲浪滑板99", "平底锅100", "黄色的士101", "帆船滑板102", "音符103", "魔毯104", "锦鲤105", "冷狼炮106", "金猪107", "烟花火箭108", "唱片109", "像素爱心110", "黄色闪电111", "发条112", "蓝色风暴113", "油纸伞114", "梦幻蝴蝶115", "海蛇116", "青铜战马117", "莲台118", "落叶119", "皇家战马120", "七色彩虹121", "极速光轮122", "电音风暴123", "TapTAp滑板124", "小米滑板125", "星际巡洋舰126", "时光涡轮127", "无人机128", "飞影129", "朋克滑板130", "老爷车131", "旅行者一号132", "马头琴133", "电音熊134", "自由涂鸦135", "迷你兔136", "维京战船137", "旋风138", "秘密139", "开拓者140", "幻影141", "调色板142", "樱之花143", "神龙144", "海浪145", "骆驼146", "海滩板147", "冰雪奥义148", "姜饼149", "红桃皇后150", "原子瓦151", "星盘152", "向阳153", "测速仪154", "括普155", "月羽156", "浮夸157", "萌妹飞车158", "液体159", "番薯电动车160", "小鹿板161", "磁铁162", "超级冲浪板163", "高音号滑板164", "雪云滑板165", "寅虎滑板166", "狐狸滑板167", "胜利飞燕168", "电测仪169", "夜琵琶170", "彩虹炸弹171", "微博滑板172", "兔兔气垫船173", "盾牌飞行器174", "年年有余175", "赛博摩托176", "枫叶177", "战斗机178", "鸡动机179", } local name = {} --- 功能函数表 local UI = gg.choice(list, nil, '滑板代码') if UI then if UI == 1 then local prompt = gg.prompt({ '请输入关键词进行搜索' }, { '' }, { 'text' }) if prompt then local str = prompt[1] local t = {} local t1 = {} for i = 2, #list - 1 do if string.find(list[i], str) then table.insert(t, list[i]) table.insert(t1, name[i - 1]) end end if #t == 0 then gg.toast('无搜索结果') else local c = gg.choice(t, nil, '关键词:['.. str .. '],共搜索到' .. #t .. '条结果') if c then end end end else end if UI == 2 then os.exit()end end FX1=0 end function bsdm() local list = { "搜索代码", "幸运星背包1", "圣诞雪人2", "机械之翼3", "天使之翼4", "绿野风车5", "愚乐气球6", "迷蝶之翼7", "甜心花环8", "时光之翼9", "玲珑秋月10", "星辰11", "圣诞树12", "许愿神龙背饰13", "元气书包14", "帆布克15", "琵琶16", "神光棒17", "狗狗背饰18", "大眼泡泡19", "超能氧气瓶20", "闪电篮球21", "吸铁石22", "欧布之光23", "游戏机24", "小兔书包25", } local name = {} --- 功能函数表 local UI = gg.choice(list, nil, '背饰代码') if UI then if UI == 1 then local prompt = gg.prompt({ '请输入关键词进行搜索' }, { '' }, { 'text' }) if prompt then local str = prompt[1] local t = {} local t1 = {} for i = 2, #list - 1 do if string.find(list[i], str) then table.insert(t, list[i]) table.insert(t1, name[i - 1]) end end if #t == 0 then gg.toast('无搜索结果') else local c = gg.choice(t, nil, '关键词:['.. str .. '],共搜索到' .. #t .. '条结果') if c then end end end else end if UI == 2 then os.exit()end end FX1=0 end function xkdm() local list = { "搜索代码", "2019年春节限定头像框1", "情人节限定头像框2", "角色达人头像框3", "滑板达人头像框4", "愚人节限定头像框5", "毅力达人限定头像框6", "劳动节限定头像框7", "端午节限定头像框8", "夏日清凉头像框9", "钻石璀璨头像框10", "七夕限定头像框11", "中秋节限定头像框12", "飞天头像框13", "万圣节头像框14", "万圣霓虹头像框15", "秋日头像框代码16", "6周年头像框代码17", "冰雪节头像框代码18", "2020春节限定头像框代码19", "我爱饺子头像框代码20", "我爱汤圆头像框代码21", "去春游吧头像框代码22", "中国加油头像框代码23", "愚乐一下头像框代码24", "纯真记忆头像框代码25", "爱心传递头像框代码26", "7周年头像框代码27", "圣诞迎新头像框代码28", "许愿神龙头像框代码29", "2021年春节限定头像框代码30", "春日芳华头像框代码31", "愚人节恶搞头像框代码32", "2021劳动节头像框代码33", "牛津头像框代码34", "2021端午头像框代码35", "2021暑假头像框代码36", "2021巴厘岛像框代码37", "2021中秋头像框代码38", "L冷狼限定头像框代码39", "一起来捣蛋头像框代码40", "8周年限定头像框代码41", "创作达人头像框代码42", "大神头像框代码43", "双旦快乐头像框代码44", "2022春节头像框代码45", "春意盎然头像框代码46", "愚你同乐头像框代码47", "劳动快乐头像框代码48", "端午快乐头像框代码49", "摩纳哥限定头像框代码50", "暑假快乐头像框代码51", "冰岛限定头像框代码52", "武汉限定头像框代码53", "社团S1赛季冠军头像框代码54", "社团S1赛季亚军头像框代码55", "社团S1赛季季军头像框代码56", "社团S1赛季精英头像框代码57", "社团S1赛季勇者头像框代码58", "万圣节限定头像框59", "9周年限定头像框60", "深圳限定头像框61", "社团S2赛季冠军头像框代码62", "社团S2赛季亚军头像框代码63", "社团S2赛季季军头像框代码64", "社团S2赛季精英头像框代码65", "社团S2赛季勇者头像框代码66", "新城洛阳头像框67", "奥特曼限定68", "微博专属头像框69", "Fanbook头像框70", "哥本哈根专属头像框71", "社团S3赛季冠军头像框代码72", "社团S3赛季亚军头像框代码73", "社团S3赛季季军头像框代码74", "社团S3赛季精英头像框代码75", "社团S3赛季勇者头像框代码76", "跑神杯S3冠军社团头像框77", "跑神杯S3亚军社团头像框78", "跑神杯S3季军社团头像框79", "跑神杯S3纪念头像框80", "呼和浩特版本头像框81", "劳动最光荣头像框82", "大神作者头像框83", "人气作者头像框84", "新秀作者头像框85", "欧布头像框86", "大朋友头像框87", "小朋友头像框88", "电玩番薯仔头像框89", "校园时光头像框90", } local name = {} --- 功能函数表 local UI = gg.choice(list, nil, '头像框代码') if UI then if UI == 1 then local prompt = gg.prompt({ '请输入关键词进行搜索' }, { '' }, { 'text' }) if prompt then local str = prompt[1] local t = {} local t1 = {} for i = 2, #list - 1 do if string.find(list[i], str) then table.insert(t, list[i]) table.insert(t1, name[i - 1]) end end if #t == 0 then gg.toast('无搜索结果') else local c = gg.choice(t, nil, '关键词:['.. str .. '],共搜索到' .. #t .. '条结果') if c then end end end else end if UI == 2 then os.exit()end end FX1=0 end function bwdm() local list = { "搜索代码", "1小丑面具", "2露西耳环", "3紫色花球", "4金属发条", "5火焰纹章", "6星星项链", "7机械手表", "8金色耳环", "9黄金皇冠", "10摩托头盔", "11狼牙项链", "12纯金手表", "13金箍", "14乾坤圈", "15水手猫", "16积木", "17灵符", "18黄金盔甲", "19令牌", "20龙蛋", "21南瓜", "22月兔", "23舞狮头", "24甜心项链", "25圣诞帽", "26夹克", "27红色战衣", "28火红灯笼", "29美人折扇", "30卫衣", "31校服", "32相机", "33耳机", "34眼镜", } local name = {} --- 功能函数表 local UI = gg.choice(list, nil, '宝物代码') if UI then if UI == 1 then local prompt = gg.prompt({ '请输入关键词进行搜索' }, { '' }, { 'text' }) if prompt then local str = prompt[1] local t = {} local t1 = {} for i = 2, #list - 1 do if string.find(list[i], str) then table.insert(t, list[i]) table.insert(t1, name[i - 1]) end end if #t == 0 then gg.toast('无搜索结果') else local c = gg.choice(t, nil, '关键词:['.. str .. '],共搜索到' .. #t .. '条结果') if c then end end end else end if UI == 2 then os.exit()end end FX1=0 end function djdm() local list = { "搜索代码", "1导弹", "2蓝色魔鬼炸弹", "4护盾", "8香蕉皮", "16颜料炸弹", "32恶魔", "64粘液罐子", "128小狗", "256滑板", "225云雾", "272减速乌龟", "320净化饮料", "384磁铁", } local name = {} --- 功能函数表 local UI = gg.choice(list, nil, '查询') if UI then if UI == 1 then local prompt = gg.prompt({ '请输入关键词进行搜索' }, { '' }, { 'text' }) if prompt then local str = prompt[1] local t = {} local t1 = {} for i = 2, #list - 1 do if string.find(list[i], str) then table.insert(t, list[i]) table.insert(t1, name[i - 1]) end end if #t == 0 then gg.toast('无搜索结果') else local c = gg.choice(t, nil, '关键词:['.. str .. '],共搜索到' .. #t .. '条结果') if c then end end end else end if UI == 2 then os.exit()end end FX1=0 end function Bysl(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function SearchWrite(Search,Modification) gg.clearResults() gg.searchNumber(Search[1][1],Search[1][2],false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum=0 for i=2,#Search do for index=1,#Result do if gg.getValues({{address=Result[index].address+Search[i][3],flags=Search[i][2]}})[1].value~=Search[i][1]then Result[index].Usable=true sum=sum+1 end end end if sum==#Result then gg.toast(Name..'开启失败') return end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in pairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value[3],flags=value[2],value=value[1],freeze=true} sum=sum+1 if value[4]then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end end end end gg.setValues(Data) gg.addListItems(Freeze) if Freeze==0 then gg.toast(Name..'开启成功,共修改'..sum..'条数据.') else gg.toast(Name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据.') end end function xqmnb(Search,Modification) gg.clearResults() gg.setRanges(Search[1].memory) gg.searchNumber(Search[3].value,Search[3].type,false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Search[2].name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum for index=4,#Search do sum=0 for i=1,#Result do if gg.getValues({{address=Result[i].address+Search[index].offset,flags=Search[index].type}})[1].value~=Search[index].lv then Result[i].Usable=true sum=sum+1 end end if sum==#Result then gg.toast(Search[2].name..'开启失败') return end end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in ipairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value.offset,flags=value.type,value=value.value,freeze=true} if value.freeze then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end sum=sum+1 end end end gg.setValues(Data) gg.addListItems(Freeze) if Freezes==0 then gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据') else gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据') end gg.clearResults() end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.alert("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function Fs3Fs4(Fs1, Fs2, Fs3, Fs4, Fs5) gg.clearResults() gg.setRanges(Fs2) gg.setVisible(false) gg.searchNumber(Fs3[1][1], Fs3[1][3]) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Fs3[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Fs3 do local tmp = {} local offset = Fs3[k][2] - base local num = Fs3[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Fs3[k][3] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast(Fs1..'\n搜索到{'..#data..'}条数据') local t = {} local base = Fs3[1][2] if Fs5 == '' and Fs5 > 0 and Fs5 < #data then Fs5 = Fs5 else Fs5 = #data end for i=1, Fs5 do for k, w in ipairs(Fs4) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Fs1..'️\n已修改{'..#t..'}条数据') else gg.toast(Fs1..'\n数据搜索失败', false) return false end else gg.toast(Fs1..'\n数据修改失败', false) return false end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function Get_Search(fname) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end fname=fname or {} local m=getRanges() local many={} if "table"==type(fname) then--首信息1 for i in pairs(m) do local p=m[i].internalName:match("^.*/(.+)") if p==fname[1] and m[i].state==fname[2] then many={state=m[i].state,start=m[i].start} break end end elseif "string"==type(fname) then if "slow"==fname then--全信息 for i=1,#m do local p=m[i].internalName:match("^.*/(.+)") many[i]={name=p,state=m[i].state,start=m[i].start} end elseif "quick"==fname then--尾信息 for i=1,#m do local p=m[i].internalName:match("^.*/(.+)") many[p]={state=m[i].state,start=m[i].start} end else for i=1,#m do--首信息2 local p=m[i].internalName:match("^.*/(.+)") if p==fname then many={state=m[i].state,start=m[i].start} break end end if AddrInfoLen(many)~=2 then return false end end else error("填写'quick'或者'slow'或者文件名或者{文件名,状态}") end return many end function Get_Address(Head,Offset,Flag) local tinfom=gg.getTargetInfo() Flag=Flag or 32 local t={} local Addr if Head then t[1]={address=Head+Offset[1],flags=Flag} if not (#Offset==1) then for i=2,#Offset do local place=gg.getValues(t) t={} if not tinfom.x64 then place[1].value=place[1].value & 0xFFFFFFFF end t[1]={address=place[1].value+Offset[i],flags=Flag} end end Addr=t[1].address end return string.format("0x%X",Addr) end function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end JFYx32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end function ByWQ(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end function gg.edits(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) end local json = json ms = { } function setvalue ( add , value , falgs) qx={} qx[#qx+1]={} qx[#qx].value=value qx[#qx].flags=falgs qx[#qx].freeze=true qx[#qx].address=add gg.addListItems (qx) end il2cpp_so_x32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 1 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) end end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000 local GGNUMBER_6 = 0xFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end function py1(value,lx,py) gg.setVisible(false) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[1]={} z1[1].address=sj[i].address+py z1[1].flags=lx z1=gg.getValues(z1) if z1[1].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("偏移了 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function SearchWrite(Search, Write, Type, Name) local time=os.clock() gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then gg.toast("搜索到"..#data.."条数据") local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) local time=string.sub(os.clock()-time,0,5) gg.toast("开启成功 已修改:"..#t.."条数据 本次启动耗时:"..time.."秒") gg.addListItems(t) else gg.toast("开启失败未搜索到任何数据", false) return false end else gg.toast("开启失败未搜索到任何数据") return false end end function Bysl(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end htl={} function panduan(rec ) fille , err = io.open(rec ) if fille == nil then return false else return true end end function pdcf(lujing ) rec = "/storage/emulated/0/AR灰太狼配置/配置文件/"..lujing fille , err = io.open(rec ) if fille == nil then return false else return true end end sleep = gg.sleep -- if gg.isHTTPdump()==true and panduan("/storage/emulated/0/AR灰太狼配置/配置文件/vpn.txt") == false then gg.alert("\n抓包?") os.exit() end --function read(fileName ) -- f = assert(io.open(fileName , 'r' ) ) content = f : read("*all" ) f : close() return content --end function wtcf(lujing , neirong ) write("/storage/emulated/0/AR灰太狼配置/配置文件/"..lujing , neirong ) end function rdcf(lujing ) return read("/storage/emulated/0/AR灰太狼配置/配置文件/"..lujing ) end function checkimg(tmp) if panduan("/sdcard/AR灰太狼配置/图片/"..tmp) ~= true then gg.toast("正在下载资源"..tmp.."\n请耐心等待") download=file.download("http://jiami.guimei.work/a/"..tmp..".png","/sdcard/AR灰太狼配置/图片/"..tmp) end end htl = { } local htl = htl local android = import('android.*' ) function write(fileName , content ) -- f = assert( io.open( fileName, 'w')) f:write( content ) f:close() if file.write(fileName , content ) == false then gg.alert("请给框架和修改器 文件储存权限\n否则无法正常运行" ) os.exit() end end function panduan(rec ) fille , err = io.open(rec ) if fille == nil then return false else return true end end function pdcf(lujing ) rec = "/sdcard/AR灰太狼配置/配置文件/"..lujing fille , err = io.open(rec ) if fille == nil then return false else return true end end sleep = gg.sleep -- if gg.isHTTPdump()==true and panduan("/sdcard/AR灰太狼配置/配置文件/vpn.txt") == false then gg.alert("\n抓包?") os.exit() end --function read(fileName ) -- f = assert(io.open(fileName , 'r' ) ) content = f : read("*all" ) f : close() return content --end function wtcf(lujing , neirong ) write("/sdcard/AR灰太狼配置/配置文件/"..lujing , neirong ) end function rdcf(lujing ) return read("/sdcard/AR灰太狼配置/配置文件/"..lujing ) end function pmusic(x ) if audiokg == "开" then tmp1 = 0 gg.playMusic(x ) tmp1 = 1 end end if pdcf("audio" ) ~= true then wtcf("audio" , "开" ) end audiokg = rdcf("audio" ) function camusic(ress ) tmp1 = 0 if audiokg == "开" then if panduan("/sdcard/AR灰太狼配置/音频/"..ress ) == true then pmusic("/sdcard/AR灰太狼配置/音频/"..ress ) tmp1 = 1 else download("https://escape2020-1303126286.cos.ap-shenzhen-fsi.htlqcloud.com/"..ress , "/sdcard/AR灰太狼配置/音频/"..ress ) pmusic("/sdcard/AR灰太狼配置/音频/"..ress ) tmp1 = 1 end end end function checkimg(tmp) if panduan("/sdcard/AR灰太狼配置/图片/"..tmp) ~= true then gg.toast("正在下载资源"..tmp.."\n请耐心等待") download=file.download("http://jiami.guimei.work/a/"..tmp..".png","/sdcard/AR灰太狼配置/图片/"..tmp) end end ckimg = { "1691530171", "1697089467", "1697045273", "1697015276", "1697030836", } for i = 1 , # ckimg do jindu = i checkimg(ckimg [ i ] ) end local context = app.context local window = context : getSystemService("window" ) -- 获取窗口管理器 function getLayoutParams() LayoutParams = WindowManager.LayoutParams layoutParams = luajava.new(LayoutParams ) if(Build.VERSION.SDK_INT >= 26 ) then -- 设置悬浮窗方式 layoutParams.type = LayoutParams.TYPE_APPLICATION_OVERLAY else layoutParams.type = LayoutParams.TYPE_PHONE end layoutParams.format = PixelFormat.RGBA_8888 -- 设置背景 layoutParams.flags = LayoutParams.FLAG_NOT_FOCUSABLE layoutParams.gravity = Gravity.TOP | Gravity.LEFT -- 重力设置 layoutParams.width = LayoutParams.WRAP_CONTENT -- 布局宽度 layoutParams.height = LayoutParams.WRAP_CONTENT -- 布局高度 return layoutParams end htl.controlRotation2 = function(control, time) luajava.runUiThread(function() import "android.view.animation.Animation" import "android.animation.ObjectAnimator" xuanzhuandonghua = ObjectAnimator:ofFloat(control, "rotation", { 0, 360 }) xuanzhuandonghua:setRepeatCount(0) xuanzhuandonghua:setRepeatMode(Animation.RESTART) xuanzhuandonghua:setDuration(time) xuanzhuandonghua:start() end) end slctb = luajava.loadlayout { GradientDrawable , color = "#00000000" , cornerRadius = 0 } jianbian6 = luajava.new(GradientDrawable) jianbian6:setCornerRadius(20) jianbian6:setGradientType(GradientDrawable.LINEAR_GRADIENT) jianbian6:setColors({0x908E9798,0xff7986CB,0xff00FFF4}) jianbian6:setStroke(2,"0xFFCCCCCC")--边框宽度和颜色 htl.controlFlip = function(control,time) luajava.runUiThread(function() import "android.view.animation.Animation" import "android.animation.ObjectAnimator" xuanzhuandonghua = ObjectAnimator:ofFloat(control, "rotationY", {0, 360}) xuanzhuandonghua:setRepeatCount(0) xuanzhuandonghua:setRepeatMode(Animation.REVERSE) xuanzhuandonghua:setDuration(time) xuanzhuandonghua:start() end) end htl.controlWater = function(control,time) luajava.runUiThread(function() import "android.animation.ObjectAnimator" ObjectAnimator():ofFloat(control,"scaleX",{1, 0.8, 0.9, 1}):setDuration(time):start() ObjectAnimator():ofFloat(control,"scaleY",{1,0.8,0.9,1}):setDuration(time):start() end) end htl.controlSmall = function(control,time) luajava.runUiThread(function() import "android.animation.ObjectAnimator" ObjectAnimator():ofFloat(control,"scaleX",{1, 0.7, 0.4, 0}):setDuration(time):start() ObjectAnimator():ofFloat(control,"scaleY",{1, 0.7, 0.4, 0}):setDuration(time):start() end) end htl.controlBig = function(control,time) luajava.runUiThread(function() import "android.animation.ObjectAnimator" ObjectAnimator():ofFloat(control,"scaleX",{0, 0.4, 0.7, 1}):setDuration(time):start() ObjectAnimator():ofFloat(control,"scaleY",{0, 0.4, 0.7, 1}):setDuration(time):start() end) end function getseekgra1() jianbians = luajava.new(GradientDrawable) jianbians:setCornerRadius(20) jianbians:setGradientType(GradientDrawable.LINEAR_GRADIENT) jianbians:setStroke(0,"0xFFCCCCCC")--边框宽度和颜色 return jianbians end slctb = getseekgra1() slcta = jianbian6 slctc = luajava.loadlayout { GradientDrawable , color = "#11ffffff" , cornerRadius = 30 } slctd = luajava.loadlayout { GradientDrawable , color = "#55ffffff" , cornerRadius = 30 } slcte = luajava.loadlayout { GradientDrawable , color = "#11ffffff" , cornerRadius = 30 } slctf = luajava.loadlayout { GradientDrawable , color = "#dd000000" , cornerRadius = 30, } function getSelector3() selector = luajava.getStateListDrawable() selector : addState({ android.R.attr.state_pressed } , slcte ) -- 点击时候的背景 selector : addState({ - android.R.attr.state_pressed } , slctf ) -- 没点击的背景 return selector end function getSelector4() selector = luajava.getStateListDrawable() selector : addState({ android.R.attr.state_checked } , slcte ) -- 点击时候的背景 selector : addState({ - android.R.attr.state_checked } , slctf ) -- 没点击的背景 return selector end function getSelector() selector = luajava.getStateListDrawable() selector : addState({ android.R.attr.state_pressed } , slcta ) -- 点击时候的背景 selector : addState({ - android.R.attr.state_pressed } , slctb ) -- 没点击的背景 return selector end function getSelector2() selector = luajava.getStateListDrawable() selector : addState({ android.R.attr.state_pressed } , slctd ) -- 点击时候的背景 selector : addState({ - android.R.attr.state_pressed } , slctc ) -- 没点击的背景 return selector end function getcolor(cl ) cl [ 1 ] = tonumber(math.ceil(cl [ 1 ] * 2.6 , 0 , 5 ) ) if cl [ 1 ] > 255 then cl [ 1 ] = "0xff" else cl [ 1 ] = "0x"..string.format("%x" , cl [ 1 ] ) end for i = 1 , 3 do cl [ i + 1 ] = string.format("%x" , cl [ i + 1 ] ) if string.len(cl [ i + 1 ] ) == 1 then cl [ i + 1 ] = "0"..cl [ i + 1 ] end end cl = cl [ 1 ]..cl [ 2 ]..cl [ 3 ]..cl [ 4 ] return cl end function getrgb(cl ) if string.sub(cl , 1 , 1 ) == "#" then cl = "0x"..string.sub(cl , 2 , -1 ) end cl = { tonumber(string.sub(cl , 0 , 4 ) ) , tonumber("0x"..string.sub(cl , 5 , 6 ) ) , tonumber("0x"..string.sub(cl , 7 , 8 ) ) } return cl end 侧边按钮背景2="http://jiami.guimei.work/a/1697057626.png" function 获取图片(txt) ntxt=string.sub(string.gsub(txt,"/","."),-10,-1) if string.find(tostring(txt),"http")~=nil then if panduan("/sdcard/灰太狼/图片/"..ntxt)==false then download(txt,"/sdcard/灰太狼/图片/"..ntxt) end txt="/sdcard/灰太狼/图片/"..ntxt end return luajava.getBitmapDrawable(txt) end slcta = 获取图片(侧边按钮背景2) jianbian = luajava.new(GradientDrawable ) jianbian : setCornerRadius(30 ) jianbian : setGradientType(GradientDrawable.LINEAR_GRADIENT ) local isswitch YoYoImpl = luajava.getYoYoImpl() htl.menu = function(stxt , sview ) if # sview < # stab then gg.alert("错误:菜单配置表少于菜单导航栏数量" ) return false end isswitch = true cebian = { LinearLayout , id = "侧边" , visibility = "gone" , layout_height = "fill_parent" , layout_width = "wrap_content" , padding = "2dp" , orientation = "vertical" , background = luajava.loadlayout { GradientDrawable , color = "#FFFFFFFF" , cornerRadius = 8 } , } for i = 1 , # stab do _ENV["jm"..i]=luajava.loadlayout({ LinearLayout , --id = "jm"..i , layout_height = "32dp" , layout_width = "76dp" , background = getSelector(), onClick = function() 切换(i ) luajava.newThread(function() pcall(func ) end ) : start() end , gravity = "center" , { TextView , id = "jm"..i.."tu" , text = stab [ i ] , gravity = "center" , textColor="#78909C", layout_height = "wrap_content" , layout_width = "wrap_content" , } }) cebian [ # cebian + 1 ] = _ENV["jm"..i] end cebian[#cebian+1]={ ImageView, id = "control", src = "http://jiami.guimei.work/a/1697092736.png", layout_width = "70dp", layout_height = "70dp", layout_marginTop = "40dp", layout_marginBottom = "40dp" , layout_marginLeft = "5dp", } cebian = luajava.loadlayout(cebian ) for i = 1 , # stab do _ENV [ "layout"..i ] = luajava.loadlayout({ ScrollView , fillViewport = "true" , id = "layout"..i , visibility = "gone" , layout_width = "239dp" , layout_height = "wrap_content" , orientation = "horizontal" , { LinearLayout , id = "layoutm"..i , gravity = "top" , padding = "8dp" , layout_width = 'fill_parent' , layout_height = "wrap_content" , orientation = "vertical" , } } ) end title = luajava.loadlayout({ LinearLayout , id = "titl" , visibility = "gone" , layout_width = "239dp" , layout_height = "30dp" , gravity = "center" , background = "http://jiami.guimei.work/a/1697006814.png" , { LinearLayout , layout_marginLeft = "70dp" , layout_width = "120dp" , gravity = "center" , orientation="vertical", {TextView, layout_width = "170dp" , layout_height = "40dp" , text = stitle , textColor="#ffffff", textSize = "15sp" , gravity = "center" , layout_marginTop = "0dp" , layout_marginRight = "14dp" , }, } , { ImageView , id = "exit" , src = "http://jiami.guimei.work/a/1697002161.png" , layout_width = "25dp" , layout_height = "25dp" , layout_marginTop = "0dp" , layout_marginLeft = "0dp" , layout_marginRight = "15dp" , } } ) gnlist = { LinearLayout , orientation = "vertical" , title , } for i = 1 , # stab do gnlist [ # gnlist + 1 ] = _ENV [ "layout"..i ] end ckou = luajava.loadlayout({ LinearLayout , id = "chuangk" , visibility = "gone" , layout_width = "match_parent" , layout_height = "match_parent" , orientation = "horizontal" , background = luajava.loadlayout { GradientDrawable , color = "#FFFAFAFA" , cornerRadius = 8 } , cebian , gnlist , } ) control1=luajava.loadlayout({ ImageView , id = "control" , background = 悬浮窗图片 ,----arlogo layout_width = "44dp" , layout_height = "44dp" , }) floatWindow = { LinearLayout , id = "motion" , layout_width = "250dp" , orientation = "vertical" , gravity = "center_vertical" , layout_height = "wrap_content" , { LinearLayout , layout_width = "match_parent" , layout_height = "48dp" , id = "xfc" , orientation = "horizontal" , -- background = jianbian2, gravity = "center_vertical" , { LinearLayout , layout_width = "48dp" , layout_height = "48dp" , gravity = "center" , control1 } , } , ckou } floatWindow = luajava.loadlayout(floatWindow ) local function invoke() local ok local RawX , RawY , x , y mainLayoutParams = getLayoutParams() -- floatWindow = luajava.loadlayout(floatWindow) local function invoke2() block('start' ) for k = 1 , # stab do for i = 1 , # sview [ k ] do _ENV [ "layoutm"..k ] : addView(sview [ k ] [ i ] ) end end window : addView(floatWindow , mainLayoutParams ) block('end' ) end local runnable = luajava.getRunnable(invoke2 ) local handler = luajava.getHandler() handler : post(runnable ) block('join' ) control.onClick = function() 隐藏() end exit.onClick = function() 隐藏() end local isMove control.onLongClick = function(v ) if isMove then return false end gg.toast("悬浮窗已退出" ) window : removeView(floatWindow ) isswitch = nil end hanshu = function(v , event ) local Action = event : getAction() if Action == MotionEvent.ACTION_DOWN then isMove = false RawX = event : getRawX() RawY = event : getRawY() x = mainLayoutParams.x y = mainLayoutParams.y elseif Action == MotionEvent.ACTION_MOVE then isMove = true mainLayoutParams.x = tonumber(x ) +(event : getRawX() - RawX ) mainLayoutParams.y = tonumber(y ) +(event : getRawY() - RawY ) window : updateViewLayout(floatWindow , mainLayoutParams ) end end motion.onTouch = hanshu control.onTouch = hanshu exit.onTouch = hanshu for i = 1 , # stab do _ENV [ "jm"..i ].onTouch = hanshu end end return invoke(swib1 , swib2 ) end 当前ui = 1 function 切换(x ) 当前ui = x luajava.runUiThread(function() for i = 1 , # stab do _ENV [ "jm"..i ] : setBackground(slctb ) _ENV [ "layout"..i ] : setVisibility(View.GONE ) end _ENV [ "layout"..当前ui ] : setVisibility(View.VISIBLE ) _ENV [ "jm"..当前ui ] : setBackground(slcta ) YoYoImpl : with("FadeIn" ) : duration(600 ) : playOn(_ENV [ "layout"..当前ui ] ) end ) end 显示 = 0 beij = luajava.loadlayout({ GradientDrawable , color = "#00000000" , cornerRadius = 30 } ) beij2 = luajava.loadlayout({ GradientDrawable , color = "#00000000" , cornerRadius = 30 } ) 显示=0 function 隐藏() luajava.runUiThread(function() if tonumber(tostring(cebian : getVisibility() ) ) == 8.0 then 显示=1 chuangk : setVisibility(View.VISIBLE ) cebian : setVisibility(View.VISIBLE ) xfc : setVisibility(View.GONE ) mainLayoutParams.flags = LayoutParams.FLAG_NOT_TOUCH_MODAL window : updateViewLayout(floatWindow , mainLayoutParams ) title : setVisibility(View.VISIBLE ) _ENV [ "layout"..当前ui ] : setVisibility(View.VISIBLE ) floatWindow : setBackground(beij ) htl.controlBig(floatWindow,100) else 显示=0 mainLayoutParams.flags = LayoutParams.FLAG_NOT_FOCUSABLE window : updateViewLayout(floatWindow , mainLayoutParams ) titl : setVisibility(View.GONE ) floatWindow : setBackground(beij2 ) chuangk : setVisibility(View.GONE ) cebian : setVisibility(View.GONE ) _ENV [ "layout"..当前ui ] : setVisibility(View.GONE ) xfc : setVisibility(View.VISIBLE ) htl.controlFlip(floatWindow,400) end end ) end function guid() seed = { 'e' , '1' , '2' , '3' , '4' , '5' , '6' , '7' , '8' , '9' , 'a' , 'b' , 'c' , 'd' , 'e' , 'f' } tb = { } for i = 1 , 32 do table.insert(tb , seed [ math.random(1 , 16 ) ] ) end sid = table.concat(tb ) return string.format('%s%s%s%s%s' , string.sub(sid , 1 , 8 ) , string.sub(sid , 10 , 12 ) , string.sub(sid , 21 , 22 ) ) .. string.format('%s%s%s%s%s' , string.sub(sid , 1 , 6 ) , string.sub(sid , 21 , 25 ) ) end function htl.radio(radio ) firadio = { LinearLayout , layout_width = 'fill_parent' , layout_height = "wrap_content" , orientation = "vertical" } if type(radio [ 1 ] ) == "string" or type(radio [ 1 ] ) == "number" then firadio [ # firadio + 1 ] = { TextView , text = radio [ 1 ] , textColor = "#ffffff" , textSize = "10sp" , } end radios = { RadioGroup , background = luajava.loadlayout({ GradientDrawable , color = "#11000000" , cornerRadius = 30 } ) , layout_width = 'fill_parent' , layout_height = "wrap_content" , } for i = 2 , # radio do radios [ # radios + 1 ] = { RadioButton , layout_width = 'fill_parent' , text = radio [ i ] [ 1 ] , textColor = "#ffffff" , textSize = "12sp" , onClick = function() luajava.newThread(function() radio [ i ] [ 2 ]() end ) : start() end , } end firadio [ # firadio + 1 ] = radios return luajava.loadlayout(firadio ) end function htl.button(txt , func ) if not txt then txt = "未设置" end local tid=guid()..guid() _ENV[tid]=luajava.loadlayout ( { LinearLayout , layout_width = 'fill_parent' , layout_hight = "fill_parent" , { LinearLayout , layout_width = "fill_parent" , gravity = "center_horizontal" , layout_marginTop = "3dp" , layout_marginBottom = "3dp" , background = luajava.loadlayout { GradientDrawable , color = "#FF000000" , cornerRadius = 8 } , onClick = function() luajava.newThread(function() pcall(func ) end ) : start() end , { TextView , text = txt , textSize = "19sp" , layout_width = "wrap_content" , } , } } ) return _ENV[tid] end function htl.text(txt , color , size ) if not txt then txt = "未设置文字" end if not color then color = "#ffffff" end if not size then size = "18sp" end return luajava.loadlayout ( { TextView , text = txt , textSize = size , gravity = "center" , textColor = color , layout_width = "fill_parent" , } ) end function htl.text2(txt , color , size ) if not txt then txt = "未设置文字" end if not color then color = "#ffffff" end if not size then size = "18sp" end return luajava.loadlayout ( { TextView , text = txt , textSize = size , textColor = color , layout_width = "fill_parent" , } ) end function htl.switch(name,func1,func2,yans) nid = name..guid() if not yans then yans="#FFFFFF" end local func = 开关9(name,func1,func2,nid) if not name then name = "未设置" end rest = luajava.loadlayout({ LinearLayout, layout_width = '229dp', layout_height = "31dp", gravity = "center_vertical", { LinearLayout, layout_width = 'fill_parent', layout_height = "fill_parent", layout_marginLeft = "10dp", layout_marginRight = "10dp", gravity = "center_vertical", { TextView, gravity = "top", text = name, textColor = "#000000" , textSize="15sp", layout_weight=1, layout_width = 'match_parent', layout_marginLeft = "0dp", layout_marginRight = "0dp", }, { FrameLayout, id = luajava.newId(nid), background ="http://jiami.guimei.work/a/1697091211.png", onClick = function() luajava.newThread(function() func() end):start() end, layout_width = '60dp', layout_marginRight="10dp", layout_marginLeft="-10dp", layout_height = '30dp', padding="0dp", { LinearLayout, layout_gravity = "left|center", id = luajava.newId(nid.."k"), background ="http://jiami.guimei.work/a/1697067295.png", onClick = function() luajava.newThread(function() func() end):start() end, layout_width = '17dp', layout_height = '17dp', layout_marginRight="0dp", layout_marginLeft="10dp", },{ LinearLayout, visibility="gone", layout_gravity = "right|center", id = luajava.newId(nid.."g"), background ="http://jiami.guimei.work/a/1697030757.png", onClick = function() luajava.newThread(function() func() end):start() end, layout_width = '19dp', layout_height = '19dp', layout_marginRight="10dp", layout_marginLeft="0dp", } }} }) return rest end function 开关9(name,func1,func2,nid) name = name..guid() _ENV[name] = "关" if func1 == nil then func1 = "" end if func2 == nil then func2 = "" end if type(func1) == "function" then return function() namers = _ENV[name] if namers ~= "开" then luajava.runUiThread(function() luajava.getIdValue(nid.."k"):setVisibility(View.GONE) luajava.getIdValue(nid.."g"):setVisibility(View.VISIBLE) end) _ENV[name] = "开" --vibra:vibrate(10) pcall(func1) else luajava.runUiThread(function() luajava.getIdValue(nid.."g"):setVisibility(View.GONE) luajava.getIdValue(nid.."k"):setVisibility(View.VISIBLE) end) _ENV[name] = "关" --vibra:vibrate(10) pcall(func2) end end end end jianbian2 = luajava.new(GradientDrawable ) jianbian2 : setCornerRadius(30 ) jianbian2 : setGradientType(GradientDrawable.LINEAR_GRADIENT ) jianbian2 : setColors({ 0xdd20FF9B , 0xdd32A2FF } ) function htl.edit(name , hint ) if not hint then local hint = "" end _ENV [ name ] = name..guid() if not name then name = "点击输入文字" end rest = luajava.loadlayout({ LinearLayout , layout_width = 'fill_parent' , layout_hight = "fill_parent" , { LinearLayout , layout_width = 'fill_parent' , layout_hight = "fill_parent" , layout_marginTop = "1dp" , layout_marginBottom = "1dp" , layout_marginLeft = "0dp" , layout_marginRight = "0dp" , gravity = "center_vertical" , background = luajava.loadlayout { GradientDrawable , color = "#ff191A1D" , cornerRadius = 12 } , { EditText , gravity = "top" , hint = hint , textSize = 10 , id = luajava.newId(_ENV [ name ] ) , layout_width = 'fill' , layout_marginLeft = "10dp" , layout_marginRight = "10dp" , } } } ) return rest end function htl.getedit(name ) edit = tostring(luajava.getIdValue(_ENV [ name ] ) : getText() ) return edit end function htl.setedit(name , txt ) txt = tostring(txt ) luajava.runUiThread(function() luajava.getIdValue(_ENV [ name ] ) : setText(txt ) end ) end chazhi = { } chajv = { } function htl.seek(name , bian , smin , smax , nows ) _ENV [ bian ] = nows smin = tonumber(smin ) smax = tonumber(smax ) chajv [ bian ] = smax - smin chazhi [ bian ] = 1 - smin if smin == nil then smin = 1 smax = 10 end truesmin = 1 truesmax = truesmin + chajv [ bian ] if not nows then nows = smin tnows =(smin - nows ) else tnows =(nows - smin ) + 1 end if _ENV [ bian ] == nil then _ENV [ bian ] = nows end if not name then name = "未设置" end local names = name..guid() rest = luajava.loadlayout({ LinearLayout , layout_width = 'fill_parent' , gravity = "center" , layout_height = "wrap_content" , { LinearLayout , layout_width = 'fill_parent' , layout_height = "fill_parent" , layout_marginTop = "5dp" , layout_marginBottom = "5dp" , layout_marginLeft = "0dp" , layout_marginRight = "0dp" , gravity = "center_vertical" , background = luajava.loadlayout { GradientDrawable , color = "#ff191A1D" , cornerRadius = 8 } , { TextView , gravity = "top" , text = name..":"..nows , id = luajava.newId(names ) , layout_width = '70dp' , layout_marginLeft = "5dp" , layout_marginRight = "0dp" , } , { SeekBar , layout_width = '140dp' , min = truesmin , max = truesmax , progress = tnows , onSeekBarChange = { onProgressChanged = function(SeekBar , var2 , var3 ) if not var3 then return end local resultvar = tonumber(string.sub(var2 , 0 , -3 ) ) - chazhi [ bian ] luajava.runUiThread(function() luajava.getIdValue(names ) : setText(name..":"..resultvar ) end ) _ENV [ bian ] = resultvar end } } } } ) return rest end function visi(tid , ttid ) local tview = luajava.getIdValue(tid ) local ttview = luajava.getIdValue(ttid ) if not tview then return 0 end if tonumber(tostring(tview : getVisibility() ) ) == 8.0 then tview : setVisibility(View.VISIBLE ) ttview : setBackground(luajava.getBitmapDrawable("/sdcard/AR灰太狼配置/图片/1697089467" ) ) else tview : setVisibility(View.GONE ) ttview : setBackground(luajava.getBitmapDrawable("/sdcard/AR灰太狼配置/图片/1697045273" ) ) end end function htl.box(views ) local tid = "box"..guid() local ttid = tid.."6" local t1id=guid() firadio = { LinearLayout , layout_width = 'fill_parent' , layout_height = "wrap_content" , layout_marginTop = "2dp" , layout_marginBottom = "2dp" , orientation = "vertical" , background = luajava.loadlayout { GradientDrawable , color = "#0018191C" , cornerRadius = 8 } , } if type(views [ 1 ] ) == "string" or type(views [ 1 ] ) == "number" then firadio [ # firadio + 1 ] = { LinearLayout , layout_width = 'fill_parent' , layout_height = "33dp" , gravity = "center_vertical" , layout_marginTop = "2dp" , layout_marginBottom = "2dp" , onClick = function() visi(tid , ttid ) end , background = luajava.loadlayout { GradientDrawable , color = "#FF000000" , cornerRadius = 8 } , { ImageView , layout_marginLeft = "10dp" , id = luajava.newId(ttid ) , background = "http://jiami.guimei.work/a/1697045273.png" , layout_width = "25dp" , layout_height = "25dp" , layout_marginTop = "0dp" , } , { TextView , text = views [ 1 ] , textSize = "16sp" , layout_marginLeft = "15dp" , layout_width = "100dp" , textColor = "#ffffff" , gravity = "left" , } } else gg.alert("htl.box第一个参数必须是string" ) os.exit() end radios = { LinearLayout , layout_marginLeft = "0dp" , layout_marginRight = "0dp" , orientation = "vertical" , visibility = "gone" , id = luajava.newId(tid ) , padding = "0dp" , layout_width = 'fill_parent' , } for i = 2 , # views do radios [ # radios + 1 ] = views [ i ] end firadio [ # firadio + 1 ] = radios _ENV[t1id]=luajava.loadlayout(firadio ) return _ENV[t1id] end function htl.check(cklist ) rest = { LinearLayout , layout_width = 'match_parent' , layout_height = "wrap_content" , layout_marginTop = "10dp" , gravity = "top" , orientation = "vertical" , } if type(cklist [ 1 ] ) == "string" then rest [ # rest + 1 ] = { TextView , gravity = "left" , text = cklist [ 1 ] , textSize = "16sp" , textColor = "#000000" , layout_width = 'wrap_content' , layout_height = 'wrap_content' , layout_marginLeft = "4dp" , layout_marginRight = "5dp" , layout_marginTop = "0dp" , layout_marginBottom = "0dp" , } end for i = 2 , # cklist do local name = cklist [ i ] [ 1 ] local func1 = cklist [ i ] [ 2 ] local func2 = cklist [ i ] [ 3 ] local nid = cklist [ i ] [ 4 ] if type(func1 ) == "table" then os.exit() end if not name then name = "未设置" end nid = name..guid() local func = 开关3(nid , func1 , func2 , nid ) local tid=nid..guid() _ENV[tid] = luajava.loadlayout({ LinearLayout , layout_width = '250dp' , layout_height = "30dp" , layout_marginTop = "5dp" , layout_marginBottom = "15dp" , layout_marginLeft = "4dp" , layout_marginRight = "10dp" , gravity = "center_vertical" , onClick = function() luajava.newThread(function() func() end ) : start() end , { ImageView , id = luajava.newId(nid ) , layout_width = '30dp' , layout_height = "30dp" , layout_marginLeft = "10dp" , layout_marginRight = "10dp" , background = "http://jiami.guimei.work/a/1697015276.png" , } , { TextView , gravity = "top" , text = name , textColor = "#000000" , layout_width = 'wrap_content' , layout_height = 'wrap_content' , layout_marginLeft = "4dp" , layout_marginRight = "5dp" , } } ) rest [ # rest + 1 ] = _ENV[tid] end return luajava.loadlayout(rest ) end function 开关3(name , func1 , func2 , nid ) _ENV [ name ] = "关" if func1 == nil then func1 = "" end if func2 == nil then func2 = "" end if type(func1 ) == "function" then return function() namers = _ENV [ name ] if namers ~= "开" then luajava.runUiThread(function() luajava.getIdValue(nid ) : setBackground(luajava.getBitmapDrawable("/sdcard/AR灰太狼配置/图片/1697030836" ) ) end ) _ENV [ name ] = "开" pcall(func1 ) else luajava.runUiThread(function() luajava.getIdValue(nid ) : setBackground(luajava.getBitmapDrawable("/sdcard/AR灰太狼配置/图片/1697015276" ) ) end ) _ENV [ name ] = "关" pcall(func2 ) end end end end function 悬浮窗图片(txt ) ntxt = string.sub(string.gsub(txt , "/" , "." ) , -10 , -1 ) if string.find(tostring(txt ) , "http" ) ~= nil then if panduan("/sdcard/AR灰太狼配置/图片/"..ntxt ) == false then download(txt , "/sdcard/AR灰太狼配置/图片/"..ntxt ) end txt = "/sdcard/AR灰太狼配置/图片/"..ntxt end luajava.runUiThread(function() control : setBackgroundDrawable(luajava.getBitmapDrawable(txt ) ) end ) ---例子 end function tuichu() window : removeView(floatWindow ) luajava.setFloatingWindowHide(false ) bloc("end" ) end function MY(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end function _error() gg.alert([[ 开启失败 失败原因:进程存储太小! 解决方案:刷新进程后重启开启 ]]) end function MY(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end 悬浮窗图片="http://chuxinya.top/view.php/b6982824c46efdd007ac243689d43569.png" stab = { "主页" , "防封" , "刷号" , "竞赛" , "音乐" , "娱乐" , } stitle="峰峰科技" htl.menu(stxt, { { htl.text("交流群:750055795","#ff63ed9f","15sp"), htl.text("当前北极4.11版本","#ff63ed9f","15sp"), htl.text("此脚本由峰峰制作","#ff63ed9f","15sp" ) , htl.text("选择400MB的进程在开防封","#ff63ed9f","15sp" ) , htl.text("过新手教程要切后台开","#ff63ed9f","15sp" ) , htl.text("全网启动次数:1314520","#ff63ed9f","15sp" ) , htl.text("峰峰总群:750055795","#ff63ed9f","15sp" ) , htl.text("脚本制作人:峰峰","#ff63ed9f","15sp" ) , htl.text("峰峰QQ群:750055795","#ff63ed9f","15sp" ) , htl.switch(" 选择进程", function() string.toMusic('请选择地铁跑酷进程') gg.setProcessX() local gg=gg local t={"libtersafe2.so:bss", "Cb"} local tt={0x49FC} local ttt=S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 4, value = -1, freeze = true}}) end,"https://out.zxglife.top/view.php/976478f49094e72186cec1388b7f73f1.jpg"), htl.switch("地铁启动" , function() gg.jumpAPP("com.kiloo.subwaysurf") gg.toast("Done✔️") toMusic('地铁跑酷启动') end, "#ff8e2de2"), htl.switch("加入Q群", function() qq.joinGroup("750055795") 隐藏() end), htl.switch("加入我们" , function() gg.toast("正在为你跳转峰峰科技加入我们有问题反馈") string.toMusic('正在为你跳转峰峰科技加入我们有问题反馈') gg.goURL("http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=viFSaf-kDAD79MG7ZzXw0pBxNxX_6cjc&authKey=H%2Bi5T5PnQPxIu4nxWZYxkpr6Yeb%2FPu7DMoADOjDQ5J39uU8GHPqm4cSnhOKEUu%2Fw&noverify=0&group_code=750055795") end), htl.switch("客服" , function() gg.toast("正在为你跳转峰峰科技客服有问题反馈") string.toMusic('正在为你跳转峰峰科技客服有问题反馈') gg.goURL("http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=DiuFxqo9PD8PAmT8U3aTIFCMbP0Eky2B&authKey=ZyxK6AqsggeetfNOls9ESlJhtlFfg0DrHuLEnpgxWOFDqskdMzukwCS0JM9YpoBcg&noverify=0&group_code=750055795") end), htl.switch("long随机颜色", function() draw.setSize(49) draw.setStyle('填充') draw10 = require('draw3') text1 = draw3.text('峰峰6.0作者:峰峰',20,180) text3 = draw3.text('峰峰6.0',40,350) text4 = draw3.text('峰峰6.0官方群:750055795',40,240) local color = math.random(000000, 0xffffff)-- 设置随机颜色 text1.setColor(color)-- 设置随机颜色 text2.setColor(color)-- 设置随机颜色 text3.setColor(color)-- 设置随机颜色 text4.setColor(color)-- 设置随机颜色 end, "https://out.zxglife.top/view.php/9264ef1200e558a79efac5d392ed80d8.png"), htl.switch("退出", function() window:removeView(floatWindow) luajava.setFloatingWindowHide(false) luajava.newThread(function() os.exit() end):start() bloc("end") end), htl.switch("加入Q群", function() qq.joinGroup("750055795") 隐藏() end), htl.switch("身份证", function() local S = math.random(1, #tab) local c = tab[S] local cc = gg.alert(c,"复制名字", "复制号码", "复制全部") if cc then if cc == 1 then local hm = c:match("(.-)%-") gg.copyText(hm) end if cc == 2 then local name = c:match("%-([^%-]+)") gg.copyText(name) end if cc == 3 then gg.copyText(c, false) end end end, "http://wp.anxwl.cn/view.php/60084f0064f8f6a89266272427776048.png"), },{ htl.text("防封区域","#FFFFFF","20sp"),--空文本可用于换行,sp调整距离 htl.box({ "防封", htl.switch("新手教程 [登录界面必开]", function () string.toMusic("新手教程跳过成功") function qs(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[1]==nil then _error() else gg.setValues({{address=SOMOD[1].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[1].start+FUNCTIONADD+4,flags=TYPE,value="1EFF2FE1r"}}) end end qs(0x904d98,4,"~A MOV R0, #1" ) qs(0x904d00,4,"~A MOV R0, #1" ) end), htl.switch("独家防闪 [登录界面必开]", function() string.toMusic('独家防闪开启成功') gg.clearResults() gg.setRanges(8) gg.searchNumber("778923875", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("778923875", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("99,99,", gg.TYPE_DWORD) end), htl.switch("过ACE检测 [登录界面必开]", function() string.toMusic('过ACE检测成功') write([[ 24414 Var #95FAD0B0|95fad0b0|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|20b0 Var #95FB3870|95fb3870|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8870 Var #95FB3888|95fb3888|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8888 Var #95FB38B0|95fb38b0|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88b0 Var #95FB38B4|95fb38b4|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88b4 Var #95FB38D4|95fb38d4|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88d4 Var #95FB38E8|95fb38e8|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88e8 Var #95FB38F8|95fb38f8|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88f8 Var #95FB38FC|95fb38fc|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88fc Var #95FB3900|95fb3900|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8900 Var #95FB391C|95fb391c|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|891c Var #95FB3920|95fb3920|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8920 Var #95FB3924|95fb3924|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8924 Var #95FB4340|95fb4340|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9340 Var #95FB4350|95fb4350|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9350 Var #95FB4360|95fb4360|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9360 Var #95FB4400|95fb4400|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9400 Var #95FB4418|95fb4418|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9418 Var #95FB4420|95fb4420|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9420 Var #95FB4428|95fb4428|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9428 Var #BCF88008|bcf88008|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|8 Var #BCF8800C|bcf8800c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|c Var #BCF88010|bcf88010|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|10 Var #BCF88014|bcf88014|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|14 Var #BCF8803C|bcf8803c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|3c Var #BCF88040|bcf88040|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|40 Var #BCF88058|bcf88058|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|58 Var #BCF88060|bcf88060|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|60 Var #BCF88074|bcf88074|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|74 Var #BCF88078|bcf88078|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|78 Var #BCF8807C|bcf8807c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|7c Var #BCF88084|bcf88084|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|84 Var #BCF880A8|bcf880a8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BCF880AC|bcf880ac|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|ac Var #BCF880B0|bcf880b0|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b0 Var #BCF880B4|bcf880b4|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b4 Var #BCF880B8|bcf880b8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b8 Var #BCF88128|bcf88128|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|128 Var #BCF8812C|bcf8812c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|12c Var #BCF88130|bcf88130|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|130 Var #BCF88134|bcf88134|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|134 Var #BCF88200|bcf88200|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|200 Var #BCF88204|bcf88204|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|204 Var #BCF88208|bcf88208|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|208 Var #BCFC8548|bcfc8548|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|548 Var #BCFCB7C8|bcfcb7c8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|37c8 Var #BCFCC9FC|bcfcc9fc|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|49fc ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") io.open("/sdcard/全防","w+"):write([[ 3185 Var #BE0A50A8|be0a50a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BE0A50AC|be0a50ac|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|ac Var #BE0A50B0|be0a50b0|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b0 Var #BE0A50B4|be0a50b4|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b4 Var #BE0A50B8|be0a50b8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b8 Var #BE0E84DC|be0e84dc|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|4dc Var #BE0E8528|be0e8528|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|528 Var #BE0E854C|be0e854c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|54c Var #BE0E8574|be0e8574|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|574 Var #BE0E85D0|be0e85d0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|5d0 Var #BE0E881C|be0e881c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|81c Var #BE0E883C|be0e883c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|83c Var #BE0E8844|be0e8844|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|844 Var #BE0E884C|be0e884c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|84c Var #BE0E885C|be0e885c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|85c Var #BE0E8864|be0e8864|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|864 Var #BE0E886C|be0e886c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|86c Var #BE0E8924|be0e8924|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|924 Var #BE0E893C|be0e893c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|93c Var #BE0E8968|be0e8968|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|968 Var #BE0E899C|be0e899c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|99c Var #BE0E89A4|be0e89a4|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9a4 Var #BE0E89AC|be0e89ac|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9ac Var #BE0E89C0|be0e89c0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9c0 Var #BE0E8A0C|be0e8a0c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a0c Var #BE0E8A4C|be0e8a4c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a4c Var #BE0E8A60|be0e8a60|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a60 Var #BE0E9B3C|be0e9b3c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b3c Var #BE0E9B48|be0e9b48|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b48 Var #BE0E9B54|be0e9b54|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b54 Var #BE0E9B5C|be0e9b5c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b5c Var #BE0E9B64|be0e9b64|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b64 Var #BE0E9B8C|be0e9b8c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b8c Var #BE0E9B94|be0e9b94|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b94 Var #BE0E9BA0|be0e9ba0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1ba0 Var #BE0E9BD0|be0e9bd0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1bd0 ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") io.open("/sdcard/全防","w+"):write([[ 3185 Var #BE0A50A8|be0a50a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BE0E84DC|be0e84dc|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|4dc Var #BE0E881C|be0e881c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|81c ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") end), htl.switch("防环境 [登录界面必开]", function() string.toMusic('防环境成功') write([[ 24414 Var #95FAD0B0|95fad0b0|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|20b0 Var #95FB3870|95fb3870|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8870 Var #95FB3888|95fb3888|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8888 Var #95FB38B0|95fb38b0|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88b0 Var #95FB38B4|95fb38b4|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88b4 Var #95FB38D4|95fb38d4|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88d4 Var #95FB38E8|95fb38e8|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88e8 Var #95FB38F8|95fb38f8|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88f8 Var #95FB38FC|95fb38fc|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88fc Var #95FB3900|95fb3900|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8900 Var #95FB391C|95fb391c|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|891c Var #95FB3920|95fb3920|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8920 Var #95FB3924|95fb3924|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8924 Var #95FB4340|95fb4340|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9340 Var #95FB4350|95fb4350|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9350 Var #95FB4360|95fb4360|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9360 Var #95FB4400|95fb4400|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9400 Var #95FB4418|95fb4418|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9418 Var #95FB4420|95fb4420|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9420 Var #95FB4428|95fb4428|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9428 Var #BCF88008|bcf88008|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|8 Var #BCF8800C|bcf8800c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|c Var #BCF88010|bcf88010|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|10 Var #BCF88014|bcf88014|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|14 Var #BCF8803C|bcf8803c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|3c Var #BCF88040|bcf88040|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|40 Var #BCF88058|bcf88058|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|58 Var #BCF88060|bcf88060|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|60 Var #BCF88074|bcf88074|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|74 Var #BCF88078|bcf88078|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|78 Var #BCF8807C|bcf8807c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|7c Var #BCF88084|bcf88084|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|84 Var #BCF880A8|bcf880a8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BCF880AC|bcf880ac|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|ac Var #BCF880B0|bcf880b0|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b0 Var #BCF880B4|bcf880b4|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b4 Var #BCF880B8|bcf880b8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b8 Var #BCF88128|bcf88128|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|128 Var #BCF8812C|bcf8812c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|12c Var #BCF88130|bcf88130|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|130 Var #BCF88134|bcf88134|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|134 Var #BCF88200|bcf88200|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|200 Var #BCF88204|bcf88204|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|204 Var #BCF88208|bcf88208|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|208 Var #BCFC8548|bcfc8548|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|548 Var #BCFCB7C8|bcfcb7c8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|37c8 Var #BCFCC9FC|bcfcc9fc|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|49fc ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") io.open("/sdcard/全防","w+"):write([[ 3185 Var #BE0A50A8|be0a50a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BE0A50AC|be0a50ac|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|ac Var #BE0A50B0|be0a50b0|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b0 Var #BE0A50B4|be0a50b4|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b4 Var #BE0A50B8|be0a50b8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b8 Var #BE0E84DC|be0e84dc|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|4dc Var #BE0E8528|be0e8528|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|528 Var #BE0E854C|be0e854c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|54c Var #BE0E8574|be0e8574|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|574 Var #BE0E85D0|be0e85d0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|5d0 Var #BE0E881C|be0e881c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|81c Var #BE0E883C|be0e883c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|83c Var #BE0E8844|be0e8844|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|844 Var #BE0E884C|be0e884c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|84c Var #BE0E885C|be0e885c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|85c Var #BE0E8864|be0e8864|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|864 Var #BE0E886C|be0e886c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|86c Var #BE0E8924|be0e8924|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|924 Var #BE0E893C|be0e893c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|93c Var #BE0E8968|be0e8968|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|968 Var #BE0E899C|be0e899c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|99c Var #BE0E89A4|be0e89a4|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9a4 Var #BE0E89AC|be0e89ac|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9ac Var #BE0E89C0|be0e89c0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9c0 Var #BE0E8A0C|be0e8a0c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a0c Var #BE0E8A4C|be0e8a4c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a4c Var #BE0E8A60|be0e8a60|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a60 Var #BE0E9B3C|be0e9b3c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b3c Var #BE0E9B48|be0e9b48|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b48 Var #BE0E9B54|be0e9b54|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b54 Var #BE0E9B5C|be0e9b5c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b5c Var #BE0E9B64|be0e9b64|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b64 Var #BE0E9B8C|be0e9b8c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b8c Var #BE0E9B94|be0e9b94|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b94 Var #BE0E9BA0|be0e9ba0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1ba0 Var #BE0E9BD0|be0e9bd0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1bd0 ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") io.open("/sdcard/全防","w+"):write([[ 3185 Var #BE0A50A8|be0a50a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BE0E84DC|be0e84dc|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|4dc Var #BE0E881C|be0e881c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|81c ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") end), htl.switch("独家全防 [登录界面必开]", function() string.toMusic('独家全防成功') write([[ 24414 Var #95FAD0B0|95fad0b0|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|20b0 Var #95FB3870|95fb3870|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8870 Var #95FB3888|95fb3888|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8888 Var #95FB38B0|95fb38b0|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88b0 Var #95FB38B4|95fb38b4|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88b4 Var #95FB38D4|95fb38d4|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88d4 Var #95FB38E8|95fb38e8|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88e8 Var #95FB38F8|95fb38f8|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88f8 Var #95FB38FC|95fb38fc|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|88fc Var #95FB3900|95fb3900|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8900 Var #95FB391C|95fb391c|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|891c Var #95FB3920|95fb3920|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8920 Var #95FB3924|95fb3924|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|8924 Var #95FB4340|95fb4340|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9340 Var #95FB4350|95fb4350|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9350 Var #95FB4360|95fb4360|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9360 Var #95FB4400|95fb4400|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9400 Var #95FB4418|95fb4418|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9418 Var #95FB4420|95fb4420|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9420 Var #95FB4428|95fb4428|4|fffffffa|1|0|0|0|rp|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/files/zeus_p/gbsdk.plugin.common/version-21902/lib/libsscronet.so|9428 Var #BCF88008|bcf88008|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|8 Var #BCF8800C|bcf8800c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|c Var #BCF88010|bcf88010|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|10 Var #BCF88014|bcf88014|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|14 Var #BCF8803C|bcf8803c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|3c Var #BCF88040|bcf88040|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|40 Var #BCF88058|bcf88058|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|58 Var #BCF88060|bcf88060|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|60 Var #BCF88074|bcf88074|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|74 Var #BCF88078|bcf88078|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|78 Var #BCF8807C|bcf8807c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|7c Var #BCF88084|bcf88084|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|84 Var #BCF880A8|bcf880a8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BCF880AC|bcf880ac|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|ac Var #BCF880B0|bcf880b0|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b0 Var #BCF880B4|bcf880b4|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b4 Var #BCF880B8|bcf880b8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b8 Var #BCF88128|bcf88128|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|128 Var #BCF8812C|bcf8812c|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|12c Var #BCF88130|bcf88130|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|130 Var #BCF88134|bcf88134|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|134 Var #BCF88200|bcf88200|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|200 Var #BCF88204|bcf88204|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|204 Var #BCF88208|bcf88208|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|208 Var #BCFC8548|bcfc8548|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|548 Var #BCFCB7C8|bcfcb7c8|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|37c8 Var #BCFCC9FC|bcfcc9fc|4|fffffffa|1|0|0|0|rw-p|/data/user/0/com.yulong.yljt/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|49fc ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") io.open("/sdcard/全防","w+"):write([[ 3185 Var #BE0A50A8|be0a50a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BE0A50AC|be0a50ac|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|ac Var #BE0A50B0|be0a50b0|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b0 Var #BE0A50B4|be0a50b4|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b4 Var #BE0A50B8|be0a50b8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|b8 Var #BE0E84DC|be0e84dc|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|4dc Var #BE0E8528|be0e8528|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|528 Var #BE0E854C|be0e854c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|54c Var #BE0E8574|be0e8574|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|574 Var #BE0E85D0|be0e85d0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|5d0 Var #BE0E881C|be0e881c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|81c Var #BE0E883C|be0e883c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|83c Var #BE0E8844|be0e8844|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|844 Var #BE0E884C|be0e884c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|84c Var #BE0E885C|be0e885c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|85c Var #BE0E8864|be0e8864|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|864 Var #BE0E886C|be0e886c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|86c Var #BE0E8924|be0e8924|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|924 Var #BE0E893C|be0e893c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|93c Var #BE0E8968|be0e8968|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|968 Var #BE0E899C|be0e899c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|99c Var #BE0E89A4|be0e89a4|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9a4 Var #BE0E89AC|be0e89ac|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9ac Var #BE0E89C0|be0e89c0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|9c0 Var #BE0E8A0C|be0e8a0c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a0c Var #BE0E8A4C|be0e8a4c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a4c Var #BE0E8A60|be0e8a60|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|a60 Var #BE0E9B3C|be0e9b3c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b3c Var #BE0E9B48|be0e9b48|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b48 Var #BE0E9B54|be0e9b54|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b54 Var #BE0E9B5C|be0e9b5c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b5c Var #BE0E9B64|be0e9b64|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b64 Var #BE0E9B8C|be0e9b8c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b8c Var #BE0E9B94|be0e9b94|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1b94 Var #BE0E9BA0|be0e9ba0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1ba0 Var #BE0E9BD0|be0e9bd0|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|1bd0 ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") io.open("/sdcard/全防","w+"):write([[ 3185 Var #BE0A50A8|be0a50a8|4|ffffffff|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so|a8 Var #BE0E84DC|be0e84dc|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|4dc Var #BE0E881C|be0e881c|4|0|1|0|0|0|rw-p|/data/user/0/com.bfire.da.nui/gameplugins/com.kiloo.subwaysurf/lib/libtersafe2.so:bss|81c ]]) gg.loadList("/sdcard/全防", gg.LOAD_VALUES) os.remove("/sdcard/全防") end), htl.switch("防行为 [大厅界面必开]", function() string.toMusic('防行为开启成功') local t = { "libtersafe2.so" , "Cd" } local tt = { 0x3fe1c } local ttt = S_Pointer ( t , tt ) gg.addListItems ( { { address = ttt , flags = 4 , value = 0 , freeze = true } } ) gg.addListItems ( { { address = ttt + 0x10 , flags = 4 , value = 0 , freeze = true } } ) gg.addListItems ( { { address = ttt + 0x20 , flags = 4 , value = 0 , freeze = true } } ) gg.addListItems ( { { address = ttt + 0x30 , flags = 4 , value = 0 , freeze = true } } ) end), htl.switch("防人工 [大厅界面必开]", function() string.toMusic('️防人工开启成功') local t = { "libtersafe2.so" , "Cd" } local tt = { 0x3fe1c } local ttt = S_Pointer ( t , tt ) gg.addListItems ( { { address = ttt , flags = 4 , value = 0 , freeze = true } } ) gg.addListItems ( { { address = ttt + 0x10 , flags = 4 , value = 0 , freeze = true } } ) gg.addListItems ( { { address = ttt + 0x20 , flags = 4 , value = 0 , freeze = true } } ) gg.addListItems ( { { address = ttt + 0x30 , flags = 4 , value = 0 , freeze = true } } ) end), htl.switch("删封号弹窗 [去除删封号弹窗必开]", function() string.toMusic('删除封号弹窗成功') FJ(0x293ef2c ,4, "~A MOVW R0, #0") end), }) },{ htl.text("刷号区域","#FFFFFF","20sp"),--空文本可用于换行,sp调整距离 htl.box({ "内购专区", htl.switch("十抽宝物" , function() FJ(0x28ebb98 ,4,"~A B +0xB0D0") string.toMusic("十抽全宝物修改成功请前往宝物箱子界面进行十抽") end), htl.switch("十抽保存" , function() FJ(0x28ebb98 ,4,"~A B +0x80F8") string.toMusic("十抽宝物备份修改成功请前往保护箱子界面进行十抽") end), htl.switch("十抽全饰" , function() FJ(0x28ebb98 ,4,"~A B -0x1FF04F4") string.toMusic("十抽全饰修改成功请前往宝物箱子界面进行十抽") end), htl.switch("十抽半饰" , function() FJ(0x28ebb98 ,4,"~A B -0x1FEF254") string.toMusic("十抽半饰修改成功请前往宝物箱子界面进行十抽") end), }), htl.box({"全解功能", htl.switch("人物全解", function() FJ(0x8fadec ,4,"~A MOVW R0, #1") toMusic('人物全解成功') end), htl.switch("滑板全解", function() FJ(0x8fbe00 ,4,"~A MOVW R0, #1") toMusic('滑板全解成功') end), htl.switch("背饰全解", function() FJ(0x926154 ,4,"~A MOVW R0, #1") toMusic('背饰全解成功') end), htl.switch("装扮全解", function() FJ(0x8ed3f8 ,4,"~A MOVW R0, #1") string.toMusic("角色装扮全解成功") end), htl.switch("技能全解", function() FJ(0x23570f4 ,4,"~A MOVW R0, #1") string.toMusic("滑板技能全解成功") end), htl.switch("像框全解", function() FJ(0xb4a3a4 ,4,"~A MOVW R0, #1") string.toMusic("头像框全解成功") end), }), htl.box({"形象功能", htl.switch("人物价格", function() FJ(0x28b0414 ,4,"~A MOVT R0, #65000") string.toMusic("人物货币购买开启成功") end), htl.switch("滑板价格", function() FJ(0x28b0968 ,4,"~A MOVT R0, #65000") string.toMusic("滑板货币购买开启成功") end), htl.switch("金币数量", function() FJ(0x8e5ab8 ,4,"~A MOVT R0, #800") string.toMusic("普通金币数量修改成功") end), htl.switch("钥匙数量", function() FJ(0x8e5e64 ,4,"~A MOVW R0, #28000") string.toMusic("普通钥匙数量修改成功") end), htl.switch("宝钥数量", function() FJ(0x92e520 ,4,"~A MOVW R0, #8888") string.toMusic("宝物钥匙数量修改成功") end), htl.switch("备份数据", function() FJ(0xbdc2d8 ,4,"~A MOVW R0, #1") string.toMusic("数据备份成功") end), }), htl.box({"基础功能", htl.switch("跑卡等级" , function() FJ(0x927ea0 ,4,"~A MOVW R0, #"..gg.prompt({"输入要修改的炫跑卡等级"},{"6"},{"修改炫跑卡等级"})[1]) string.toMusic("跑卡等级修改成功请前往主页查看") end), htl.switch("双倍金币" , function() FJ(0x8e274c ,4,"~A MOVW R0, #1") string.toMusic("双倍金币获取成功请前往主页查看") end), htl.switch("历史分数" , function() FJ(0x8e64a4 ,4,"~A MOVT R0, #20000") string.toMusic("历史分数修改成功重启后生效") end), htl.switch("修改等级" , function() FJ(0x8e976c ,4,"~A MOVW R0, #"..gg.prompt({"请输入要修改的等级"},{"520"},{"修改等级"})[1]) string.toMusic("等级修改成功请前往主页查看") end), htl.switch("一建成品号" , function() string.toMusic("一建成品号开启成功") FJ(0x8fadec ,4,"~A MOVW R0, #1") FJ(0x8ed3f8 ,4,"~A MOVW R0, #1") FJ(0x8fbe00 ,4,"~A MOVW R0, #1") FJ(0x8e976c ,4,"~A MOVW R0, #520") FJ(0xbe627c ,4,"~A MOVW R0, #1") FJ(0x927ea0 ,4,"~A MOVW R0, #6") FJ(0x26ea544 ,4,"~A MOVW R0, #1") FJ(0x8e64a4 ,4,"~A MOVT R0, #20000") FJ(0xbdc2d8 ,4,"~A MOVW R0, #1") FJ(0x23570f4 ,4,"~A MOVW R0, #1") end), htl.switch("十倍得分" , function() FJ(0xbe627c ,4,"~A MOVW R0, #1") string.toMusic("十倍得分调出成功请前往主页查看") end), htl.switch("微博特权" , function() FJ(0x26ea544 ,4,"~A MOVW R0, #1") string.toMusic("微博特权获取成功请前往主页查看") end), htl.switch("破解内购" , function() FJ(0xb91028 ,4,"~A B +0x10334") string.toMusic("内购破解成功") end), htl.switch("开超长名" , function() local il2cppmod=gg.getRangesList('il2cpp.so') gg.setValues({{address=il2cppmod[1].start+0x2903d98,flags=4,value='0100A0E3r'}}) gg.setValues({{address=il2cppmod[1].start+0x2903d98+4,flags=4,value='~A BX LR'}}) gg.setValues({{address=il2cppmod[1].start+0x2903d98,flags=4,value='~A B +0x00000148'}}) string.toMusic("超长名开启成功") end), htl.switch("机制奖杯" , function() FJ(0x2fdf48c ,4,"~A MOVW R0, #25") string.toMusic("奖励机制改奖杯成功") end), }), }, {--------------以下是列表四 htl.box({"道具赛",---box示例 可以删 掉 htl.switch("无限滑板" , function() string.toMusic("无限滑板开启成功") FJ(0xc431f4 ,4,"~A B -0xCB8") end), htl.switch("自动聚能" , function() co = gg.prompt({"相机","校服","扇子","卫衣"}, {}, {'checkbox',"checkbox","checkbox","checkbox"}) if co == nil then Main() end if co[1] == true then Name = "相机自动聚能" ms.ss ( "3210" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , -4 , 4 ) ms.edit ( 0 , 0x5c , 4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 2 , 0x4c , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x6c , 4 ) gg.alert("相机聚能成功") end if co[2] == true then Name = "校服自动聚能" ms.ss ( "3110" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , -4 , 4 ) ms.edit ( 0 , 0x5c , 4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 2 , 0x4c , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x6c , 4 ) gg.alert("校服聚能成功") end if co[3] == true then gg.clearResults() Name = "扇子自动聚能" ms.ss ( "2910" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , -4 , 4 ) ms.edit ( 0 , 0x5c , 4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 2 , 0x4c , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x6c , 4 ) gg.alert("扇子聚能成功") end if co[4] == true then gg.clearResults() Name = "卫衣自动聚能" ms.ss ( "3310" , 4 , 32 ) ms.py ( 1 , 4 , 4 ) ms.py ( 1 , -4 , 4 ) ms.edit ( 0 , 0x5c , 4 ) ms.edit ( 0 , 0x50 , 4 ) ms.edit ( 2 , 0x4c , 4 ) ms.edit ( 0 , 0x74 , 4 ) ms.edit ( 0 , 0x6c , 4 ) gg.alert("卫衣聚能成功") end end), htl.switch("无视道具" , function() FJ(0xb29d2c ,4,"~A MOVW R0, #1") string.toMusic("无视道具开启成功") end), htl.switch("滑板时长", function() function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= tostring(num) ) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data+1] = v.address end end if (#data > 0) then local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else return false end else return false end end gg.setRanges(32) local Name="滑板加速" local dataType = 16 local tb1 = {{6000.0, 0x0}} local tb2 = {{0,0xC},{0,0x1C},{1740.0,0x8}} SearchWrite(tb1, tb2, dataType) gg.setRanges(32) local Name="滑板延长" local dataType = 16 local tb1 = {{6000.0, 0x0}} local tb2 = {{0,0x4},{0,-0xC},{999999,-0x10}} SearchWrite(tb1, tb2, dataType) toMusic('开启成功') end), htl.switch("全服排名" , function() FJ(0x97b634 ,4,"~A MOVW R0, #"..gg.prompt({"请输入你想要的全服排名"},{"1"},{"text"})[1]) string.toMusic("全服排名开启成功") end), htl.switch("全省排名" , function() FJ(0x97b6dc ,4,"~A MOVW R0, #"..gg.prompt({"请输入你想要的全省排名"},{"1"},{"text"})[1]) string.toMusic("全省排名开启成功") end), }), htl.box({"分数赛",---box示例 可以删掉 htl.switch("倍增得分", function() htl = gg.prompt({'请输入需要修改的倍增分数\n推荐改300\n大厅界面开启否则卡退[1;800]'},{[1]=300},{[1]='number'})[1] if not htl then return end FJ(0xA826A0,4,"~A MOVW R0, #"..htl.."") string.toMusic("超级倍增开启成功") end, function() end), htl.switch("速度起飞", function () local t = {"libunity.so:bss", "Cb"} local tt = {0x91A0, 0x14, 0x3C, 0xEC} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 16, value = 210, freeze = true}})--全局速度恢复改1 string.toMusic("速度起飞开启成功") end, function () local t = {"libunity.so:bss", "Cb"} local tt = {0x91A0, 0x14, 0x3C, 0xEC} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 16, value = 1, freeze = true}})--全局速度恢复改1 string.toMusic("速度起飞恢复成功") end), htl.switch("跳跃起飞", function () BYCYA ( 0x16df484 , 4 , "0100A0E3r" ) string.toMusic("跳跃起飞开启成功") end, function () end), htl.switch("人物无敌", function () FJ(0xA6E604,4,"~A BX LR") string.toMusic("人物无敌开启成功") end, function () end), }), htl.box({"无尽赛",---box示例 可以删 htl.switch("滑板滑翔", function() FJ(0x3223568 ,4,"~A MOVW R0, #1") end, function() FJ(0x3223568 ,4,"~A MOVW R0, #0") end), htl.switch("滑板瞬移", function() FJ(0x32236d8 ,4,"~A MOVW R0, #1") end, function() FJ(0x32236d8 ,4,"~A MOVW R0, #0") end), htl.switch("滑板极速", function() FJ(0x3223470 ,4,"~A MOVW R0, #1") end, function() FJ(0x3223470 ,4,"~A MOVW R0, #0") end), htl.switch("正常双跳", function() FJ(0x3223280 ,4,"~A MOVW R0, #1") end, function() FJ(0x3223280 ,4,"~A MOVW R0, #0") end), htl.switch("滑板高跳", function() FJ(0x3223188 ,4,"~A MOVW R0, #1") end, function() FJ(0x3223188 ,4,"~A MOVW R0, #0") end), htl.switch("无限跳跃", function() FJ(0x30cf0a8 ,4,"~A MOVW R0, #1") end, function() FJ(0x30cf0a8 ,4,"~A MOVW R0, #0") end), htl.switch("无尽不死", function() FJ(0x17782dc ,4,"~A MOVW R0, #1") end, function() FJ(0x17782dc ,4,"~A MOVW R0, #0") end), }), htl.box({"对抗赛",---box示例 可以删掉 htl.switch("自动聚能", function() local T_1={ "宝物等级[1;10]" , "相机", "校服", "卫衣", "扇子", } local T_2=nil local T_3={"number","checkbox","checkbox","checkbox","checkbox"} local Pr=gg.prompt(T_1,T_2,T_3) if Pr==nil then return elseif Pr[2]==true then if Pr[1]=="10" then Name="相机自动聚能" ms.ss("3210",4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) else Name="相机自动聚能" ms.ss("320"..Pr[1],4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) end elseif Pr[3]==true then if Pr[1]=="10" then Name="校服自动聚能" ms.ss("3110",4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) else Name="校服自动聚能" ms.ss("310"..Pr[1],4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) end elseif Pr[4]==true then if Pr[1]=="10" then Name="卫衣自动聚能" ms.ss("3010",4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) else Name="卫衣自动聚能" ms.ss("300"..Pr[1],4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) end elseif Pr[5]==true then if Pr[1]=="10" then Name="扇子自动聚能" ms.ss("2910",4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) else Name="扇子自动聚能" ms.ss("290"..Pr[1],4,32) ms.py(1,4,4) ms.py(1,-4,4) ms.edit(0,0x5c,4) ms.edit(0,0x50,4) ms.edit(2,0x4c,4) ms.edit(0,0x74,4) ms.edit(0,0x6c,4) ms.edit(0,0xa8,4) ms.edit(0,0x98,4) ms.edit(999,0x94,4) end end end), }), },{ htl.switch("搜索音乐", function() search = gg.prompt({ "输入要搜索的歌曲\n可加上歌手名字", "设置显示数量(数字)", },g.sel,{ "text", }) if not search then return end gg.saveVariable(search,g.config) bei() go1=search[1] go3=search[2] jg=start(go1,go3) if jg.code == 200 then fh=jg.content fh=json(fh) --print(fh) Play(gqlb,idb) else function inspect() gg.alert("访问网络异常,错误代码:\n\n"..jg.code) end if not pcall(inspect) then print("网络异常,请先连接上网络") os.exit() end end XGCK=-1 end, "http://wp.anxwl.cn/view.php/59d3b5b9cd63d6fac7b4b564cb23bd2b.png"), htl.switch("随机热歌", function() A="https://api.uomg.com/api/rand.music?sort=热歌榜&format=json" Obtain=gg.makeRequest(A).content muchen=Obtain:match('url":"(.-)","picurl') name=Obtain:match('name":"(.-)","') gg.toast('开始播放['..name..']') gg.playMusic(muchen) end, "http://wp.anxwl.cn/view.php/87e8c6ff744104f515a90e19d55c597f.jpg"), htl.switch("停止播放", function() gg.toast("正在停止播放...") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end gg.toast("播放已停止") gg.toast("无正在播放的音乐") end, "http://wp.anxwl.cn/view.php/41298812f4de5463fd605ba4c50d9f71.jpg"), htl.box({"音乐推荐", htl.switch("童年",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=109530.mp3") end, function() end ), htl.switch("破茧",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2110493256.mp3") end, function() end ), htl.switch("大家一起喜羊羊",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1462201604.mp3") end, function() end ), htl.switch("快乐的扑满",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1845426540.mp3") end, function() end ), htl.switch("神魂颠倒",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1930234664.mp3") end, function() end ), htl.switch("同一首歌",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1985364630.mp3") end, function() end ), htl.switch("这条街最靓的仔",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1403721420.mp3") end, function() end ), htl.switch("掌声响起来",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1957280174.mp3") end, function() end ), htl.switch("Gangnam Style",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=22956421.mp3") end, function() end ), htl.switch("老婆最大",--功能名字 不可重复 function() gg.playMusic("http://music.163.com/song/media/outer/url?id=25657293.mp3") end, function() end ), htl.switch("最美情侣", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=491695527.mp3") end, function() end ), htl.switch("两只老虎爱跳舞", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1805387854.mp3") end, function() end ), htl.switch("小苹果", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1848183029.mp3") end, function() end ), htl.switch("别看我只是一只羊",--小功能名 function() gg.playMusic('http://music.163.com/song/media/outer/url?id=5242612.mp3') end ), htl.switch("宝贝宝贝", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1411553793.mp3") end ), htl.switch("快乐的节日", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=5240699.mp3") end ), htl.switch("我还有一点小糊涂", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=27901231.mp3") end ), htl.switch("你从未离去", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=31365604.mp3") end ), htl.switch("鹿 be free", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=449818326.mp3") end ), htl.switch("我乘着风飞过来", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1947144539.mp3") end ), htl.switch("伴你成长", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=28613172.mp3') end ), htl.switch("终会与你同行", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=27896762.mp3') end ), htl.switch("听不懂思密达(熊出没版)", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=2090031516.mp3') end ), htl.switch("像小时候一样", function() gg.playMusic('http://music.163.com/song/media/outer/url?id=571894775.mp3') end ), htl.switch("星闪闪月弯弯", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2010594130.mp3") end ), htl.switch("重返地球", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1915274713.mp3") end ), htl.switch("三万年之前", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1338146146.mp3") end ), htl.switch("看看世界有多大(动画《熊出没之熊心归来》)", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1937762848.mp3") end ), htl.switch("环球大冒险", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=28629039.mp3") end ), htl.switch("我的甜蜜", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1937762865.mp3") end ), htl.switch("熊出没之探险日记《勇往直前》", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1909386145.mp3") end ), htl.switch("熊出没之探险日记主题曲", function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2003391306.mp3") end), htl.switch("停止音乐", function() gg.toast("已停止音乐") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end sp="关闭成功" end), }), },{--第五页,没有写菜单标题所以不显示 htl.text("娱乐区域","#FFFFFF","20sp"),--空文本可用于换行,sp调整距离 htl.switch("生成一个灰太狼", function() toMusic("已生成一个灰太狼好耶") end), htl.switch("生成一个红太狼", function() toMusic("已为你生成一个红太狼好耶") end), htl.switch("生成一个小灰灰", function() toMusic("已为你生成一个小灰灰好耶") end), } }) function proo() htl.controlRotation2(control1,3000) end luajava.newThread(function()--更新逻辑 while true do gg.sleep(3000) if 显示==0 then proo() end end end):start() jm1 : setBackground(slcta ) gg.setVisible(false ) luajava.setFloatingWindowHide(true ) ---bloc不要动 动了脚本功能会失效 bloc = luajava.getBlock() bloc("join" )