-- WIG 网络验证 -- 官方群 61898352 -- 官网 https://www.wigwy.xyz local function RcxfZj9wDvTSClB() fuhao= '"' local stringsub = string.sub local wytonumber = tonumber local wytostring = tostring local stringbyte = string.byte local mathfloor = math.floor local stringlower = string.lower local mathmodf = math.modf local stringupper = string.upper local stringchar = string.char local wypairs = pairs local stringformat = string.format local stringlen = string.len local wyrequest = gg.makeRequest local function json2true(str,from,to) return true, from+3 end local function json2false(str,from,to) return false, from+4 end local function json2null(str, from, to) return nil, from+3 end local function json2nan(str, from, to) return nul, from+2 end local numberchars = {['-'] = true,['+'] = true,['.'] = true,['0'] = true,['1'] = true,['2'] = true,['3'] = true,['4'] = true,['5'] = true,['6'] = true,['7'] = true,['8'] = true,['9'] = true} local function json2number(str,from,to) local i = from+1 while(i<=to) do local char = stringsub(str, i, i) if not numberchars[char] then break end i = i + 1 end local num = wytonumber(stringsub(str, from, i-1)) if not num then error(_format('json格式错误,不正确的数字, 错误位置:{from}', from)) end return num, i-1 end local function json2string(str,from,to) local ignor = false for i = from+1, to do local char = stringsub(str, i, i) if not ignor then if char == fuhao then return stringsub(str, from+1, i-1), i elseif char == '\\' then ignor = true end else ignor = false end end error(_format('json格式错误,字符串没有找到结尾, 错误位置:{from}', from)) end local function json2array(str,from,to) local result = {} from = from or 1 local pos = from+1 local to = to or stringlen(str) while(pos<=to) do local char = stringsub(str, pos, pos) if char == fuhao then result[#result+1], pos = json2string(str,pos,to) elseif char == '[' then result[#result+1], pos = json2array(str,pos,to) elseif char == '{' then result[#result+1], pos = json2table(str,pos,to) elseif char == ']' then return result, pos elseif (char=='f' or char=='F') then result[#result+1], pos = json2false(str,pos,to) elseif (char=='t' or char=='T') then result[#result+1], pos = json2true(str,pos,to) elseif (char=='n') then result[#result+1], pos = json2null(str,pos,to) elseif (char=='N') then result[#result+1], pos = json2nan(str,pos,to) elseif numberchars[char] then result[#result+1], pos = json2number(str,pos,to) end pos = pos + 1 end error(_format('json格式错误,表没有找到结尾, 错误位置:{from}', from)) end function _G.json2table(str,from,to) local result = {} from = from or 1 local pos = from+1 local to = to or stringlen(str) local key while(pos<=to) do local char = stringsub(str, pos, pos) if char == fuhao then if not key then key, pos = json2string(str,pos,to) else result[key], pos = json2string(str,pos,to) key = nil end elseif char == '[' then if not key then key, pos = json2array(str,pos,to) else result[key], pos = json2array(str,pos,to) key = nil end elseif char == '{' then if not key then key, pos = json2table(str,pos,to) else result[key], pos = json2table(str,pos,to) key = nil end elseif char == '}' then return result, pos elseif (char=='f' or char=='F') then result[key], pos = json2false(str,pos,to) key = nil elseif (char=='t' or char=='T') then result[key], pos = json2true(str,pos,to) key = nil elseif (char=='n') then result[key], pos = json2null(str,pos,to) key = nil elseif (char=='N') then result[key], pos = json2nan(str,pos,to) key = nil elseif numberchars[char] then if not key then key, pos = json2number(str,pos,to) else result[key], pos = json2number(str,pos,to) key = nil end end pos = pos + 1 end error(_format('格式错误,表没有找到结尾, 错误位置:{from}', from)) end local jsonfuncs={[ fuhao ]=json2string,['[']=json2array,['{']=json2table,['f']=json2false,['F']=json2false,['t']=json2true,['T']=json2true} local function PMmMsDqrHUN4n6k(str) if str==nil then gg.alert('错误json') else local char = stringsub(str, 1, 1) local func=jsonfuncs[char] if func then return func(str, 1, stringlen(str)) end if numberchars[char] then return json2number(str, 1, stringlen(str)) end end end local function md5(code) local code = wytostring(code) local HexTable = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"} local A = 0x67452301 local B = 0xefcdab89 local C = 0x98badcfe local D = 0x10325476 local S11 = 7 local S12 = 12 local S13 = 17 local S14 = 22 local S21 = 5 local S22 = 9 local S23 = 14 local S24 = 20 local S31 = 4 local S32 = 11 local S33 = 16 local S34 = 23 local S41 = 6 local S42 = 10 local S43 = 15 local S44 = 21 local function F(x,y,z) return (x & y) | ((~x) & z) end local function G(x,y,z) return (x & z) | (y & (~z)) end local function H(x,y,z) return x ~ y ~ z end local function I(x,y,z) return y ~ (x | (~z)) end local function FF(a,b,c,d,x,s,ac) a = a + F(b,c,d) + x + ac a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b return a & 0xffffffff end local function GG(a,b,c,d,x,s,ac) a = a + G(b,c,d) + x + ac a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b return a & 0xffffffff end local function HH(a,b,c,d,x,s,ac) a = a + H(b,c,d) + x + ac a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b return a & 0xffffffff end local function II(a,b,c,d,x,s,ac) a = a + I(b,c,d) + x + ac a = (((a & 0xffffffff) << s) | ((a & 0xffffffff) >> 32 - s)) + b return a & 0xffffffff end local function MD5StringFill(s) local len = stringlen(s) local mod512 = len * 8 % 512 local fillSize = (448 - mod512) // 8 if mod512 > 448 then fillSize = (960 - mod512) // 8 end local rTab = {} local byteIndex = 1 for i = 1,len do local index = (i - 1) // 4 + 1 rTab[index] = rTab[index] or 0 rTab[index] = rTab[index] | (stringbyte(s,i) << (byteIndex - 1) * 8) byteIndex = byteIndex + 1 if byteIndex == 5 then byteIndex = 1 end end local b0x80 = false local tLen = #rTab if byteIndex ~= 1 then rTab[tLen] = rTab[tLen] | 0x80 << (byteIndex - 1) * 8 b0x80 = true end for i = 1,fillSize // 4 do if not b0x80 and i == 1 then rTab[tLen + i] = 0x80 else rTab[tLen + i] = 0x0 end end local bitLen = mathfloor(len * 8) tLen = #rTab rTab[tLen + 1] = bitLen & 0xffffffff rTab[tLen + 2] = bitLen >> 32 return rTab end function getmd5(s) local fillTab = MD5StringFill(s) local result = {A,B,C,D} for i = 1,#fillTab // 16 do local a = result[1] local b = result[2] local c = result[3] local d = result[4] local offset = (i - 1) * 16 + 1 a = FF(a, b, c, d, fillTab[offset + 0], S11, 0xd76aa478) d = FF(d, a, b, c, fillTab[offset + 1], S12, 0xe8c7b756) c = FF(c, d, a, b, fillTab[offset + 2], S13, 0x242070db) b = FF(b, c, d, a, fillTab[offset + 3], S14, 0xc1bdceee) a = FF(a, b, c, d, fillTab[offset + 4], S11, 0xf57c0faf) d = FF(d, a, b, c, fillTab[offset + 5], S12, 0x4787c62a) c = FF(c, d, a, b, fillTab[offset + 6], S13, 0xa8304613) b = FF(b, c, d, a, fillTab[offset + 7], S14, 0xfd469501) a = FF(a, b, c, d, fillTab[offset + 8], S11, 0x698098d8) d = FF(d, a, b, c, fillTab[offset + 9], S12, 0x8b44f7af) c = FF(c, d, a, b, fillTab[offset + 10], S13, 0xffff5bb1) b = FF(b, c, d, a, fillTab[offset + 11], S14, 0x895cd7be) a = FF(a, b, c, d, fillTab[offset + 12], S11, 0x6b901122) d = FF(d, a, b, c, fillTab[offset + 13], S12, 0xfd987193) c = FF(c, d, a, b, fillTab[offset + 14], S13, 0xa679438e) b = FF(b, c, d, a, fillTab[offset + 15], S14, 0x49b40821) a = GG(a, b, c, d, fillTab[offset + 1], S21, 0xf61e2562) d = GG(d, a, b, c, fillTab[offset + 6], S22, 0xc040b340) c = GG(c, d, a, b, fillTab[offset + 11], S23, 0x265e5a51) b = GG(b, c, d, a, fillTab[offset + 0], S24, 0xe9b6c7aa) a = GG(a, b, c, d, fillTab[offset + 5], S21, 0xd62f105d) d = GG(d, a, b, c, fillTab[offset + 10], S22, 0x2441453) c = GG(c, d, a, b, fillTab[offset + 15], S23, 0xd8a1e681) b = GG(b, c, d, a, fillTab[offset + 4], S24, 0xe7d3fbc8) a = GG(a, b, c, d, fillTab[offset + 9], S21, 0x21e1cde6) d = GG(d, a, b, c, fillTab[offset + 14], S22, 0xc33707d6) c = GG(c, d, a, b, fillTab[offset + 3], S23, 0xf4d50d87) b = GG(b, c, d, a, fillTab[offset + 8], S24, 0x455a14ed) a = GG(a, b, c, d, fillTab[offset + 13], S21, 0xa9e3e905) d = GG(d, a, b, c, fillTab[offset + 2], S22, 0xfcefa3f8) c = GG(c, d, a, b, fillTab[offset + 7], S23, 0x676f02d9) b = GG(b, c, d, a, fillTab[offset + 12], S24, 0x8d2a4c8a) a = HH(a, b, c, d, fillTab[offset + 5], S31, 0xfffa3942) d = HH(d, a, b, c, fillTab[offset + 8], S32, 0x8771f681) c = HH(c, d, a, b, fillTab[offset + 11], S33, 0x6d9d6122) b = HH(b, c, d, a, fillTab[offset + 14], S34, 0xfde5380c) a = HH(a, b, c, d, fillTab[offset + 1], S31, 0xa4beea44) d = HH(d, a, b, c, fillTab[offset + 4], S32, 0x4bdecfa9) c = HH(c, d, a, b, fillTab[offset + 7], S33, 0xf6bb4b60) b = HH(b, c, d, a, fillTab[offset + 10], S34, 0xbebfbc70) a = HH(a, b, c, d, fillTab[offset + 13], S31, 0x289b7ec6) d = HH(d, a, b, c, fillTab[offset + 0], S32, 0xeaa127fa) c = HH(c, d, a, b, fillTab[offset + 3], S33, 0xd4ef3085) b = HH(b, c, d, a, fillTab[offset + 6], S34, 0x4881d05) a = HH(a, b, c, d, fillTab[offset + 9], S31, 0xd9d4d039) d = HH(d, a, b, c, fillTab[offset + 12], S32, 0xe6db99e5) c = HH(c, d, a, b, fillTab[offset + 15], S33, 0x1fa27cf8) b = HH(b, c, d, a, fillTab[offset + 2], S34, 0xc4ac5665) a = II(a, b, c, d, fillTab[offset + 0], S41, 0xf4292244) d = II(d, a, b, c, fillTab[offset + 7], S42, 0x432aff97) c = II(c, d, a, b, fillTab[offset + 14], S43, 0xab9423a7) b = II(b, c, d, a, fillTab[offset + 5], S44, 0xfc93a039) a = II(a, b, c, d, fillTab[offset + 12], S41, 0x655b59c3) d = II(d, a, b, c, fillTab[offset + 3], S42, 0x8f0ccc92) c = II(c, d, a, b, fillTab[offset + 10], S43, 0xffeff47d) b = II(b, c, d, a, fillTab[offset + 1], S44, 0x85845dd1) a = II(a, b, c, d, fillTab[offset + 8], S41, 0x6fa87e4f) d = II(d, a, b, c, fillTab[offset + 15], S42, 0xfe2ce6e0) c = II(c, d, a, b, fillTab[offset + 6], S43, 0xa3014314) b = II(b, c, d, a, fillTab[offset + 13], S44, 0x4e0811a1) a = II(a, b, c, d, fillTab[offset + 4], S41, 0xf7537e82) d = II(d, a, b, c, fillTab[offset + 11], S42, 0xbd3af235) c = II(c, d, a, b, fillTab[offset + 2], S43, 0x2ad7d2bb) b = II(b, c, d, a, fillTab[offset + 9], S44, 0xeb86d391) result[1] = result[1] + a result[2] = result[2] + b result[3] = result[3] + c result[4] = result[4] + d result[1] = result[1] & 0xffffffff result[2] = result[2] & 0xffffffff result[3] = result[3] & 0xffffffff result[4] = result[4] & 0xffffffff end local retStr = '' for i = 1,4 do for _ = 1,4 do local temp = result[i] & 0x0F local str = HexTable[temp + 1] result[i] = result[i] >> 4 temp = result[i] & 0x0F retStr = retStr .. HexTable[temp + 1] .. str result[i] = result[i] >> 4 end end return stringlower(retStr) end return getmd5(code) end local ZZRc4 = {} local ZZMathBit = {} function ZZMathBit.__xorBit(left, right) return (left + right) == 1 and 1 or 0 end function ZZMathBit.__base(left, right, op) if left < right then left, right = right, left end local res = 0 local shift = 1 while left ~= 0 do local ra = left % 2 local rb = right % 2 res = shift * op(ra,rb) + res shift = shift * 2 left = mathmodf( left / 2) right = mathmodf( right / 2) end return res end function ZZMathBit.xorOp(left, right) return ZZMathBit.__base(left, right, ZZMathBit.__xorBit) end local function vROpRxQEaTrmsqX(text,key,kasi) if kasi==false then str = text str=stringupper(str:gsub("[%s%p]","")) local index=1 local ret="" for index=1,stringlen(str),2 do ret=ret..stringchar(wytonumber(stringsub(str,index,index+1),16)) end text=ret end local function KSA(key) local keyLen = stringlen(key) local schedule = {} local keyByte = {} for i = 0, 255 do schedule[i] = i end for i = 1, keyLen do keyByte[i - 1] = stringbyte(key, i, i) end local j = 0 for i = 0, 255 do j = (j + schedule[i] + keyByte[ i % keyLen]) % 256 schedule[i], schedule[j] = schedule[j], schedule[i] end return schedule end local function PRGA(schedule, textLen) local i = 0 local j = 0 local k = {} for n = 1, textLen do i = (i + 1) % 256 j = (j + schedule[i]) % 256 schedule[i], schedule[j] = schedule[j], schedule[i] k[n] = schedule[(schedule[i] + schedule[j]) % 256] end return k end local function output(schedule, text) local len = stringlen(text) local c = nil local res = {} for i = 1, len do c = stringbyte(text, i,i) res[i] = stringchar(ZZMathBit.xorOp(schedule[i], c)) end j = "" for i,v in wypairs(res) do j = j..v end return j end local textLen = stringlen(text) local schedule = KSA(key) local k = PRGA(schedule, textLen) str=output(k, text) if kasi==true then str = wytostring(str) local index=1 local ret="" for index=1,stringlen(str) do ret=ret..stringformat("%02X",stringbyte(stringsub(str,index))) end return stringlower(ret) else return str end end local function initGG() if getrlyunyz then local URL = luajava.bindClass("java.net.URL") local HttpURLConnection = luajava.bindClass("java.net.HttpURLConnection") local OutputStream = luajava.bindClass("java.io.OutputStream") local InputStreamReader = luajava.bindClass("java.io.InputStreamReader") local BufferedReader = luajava.bindClass("java.io.BufferedReader") local StringBuilder = luajava.bindClass("java.lang.StringBuilder") function performHttpPost(url, postData) local result = "" local connection = nil local success, e = pcall(function() local urlObject = URL(url) connection = urlObject:openConnection() connection:setRequestMethod("POST") connection:setDoOutput(true) local outputStream = connection:getOutputStream() local data = postData:getBytes() outputStream:write(data) outputStream:close() local inputStream = connection:getInputStream() local reader = BufferedReader(InputStreamReader(inputStream)) local line = nil local response = StringBuilder() while (true) do line = reader:readLine() if line == nil then break end response:append(line) end reader:close() connection:disconnect() result = response:toString() end) if not success then return e:toString() end return result end function performHttpGet(url) local result = "" local connection = nil local success, e = pcall(function() local urlObject = URL(url) connection = urlObject:openConnection() connection:setRequestMethod("GET") local responseCode = connection:getResponseCode() if responseCode == 200 then local inputStream = connection:getInputStream() local reader = BufferedReader(InputStreamReader(inputStream)) local line = nil local response = StringBuilder() while (true) do line = reader:readLine() if line == nil then break end response:append(line) end reader:close() inputStream:close() result = response:toString() else result = "HTTP Response Code: " .. responseCode end connection:disconnect() end) if not success then return e:toString() end return result end end end initGG() local function ultra(get,post) if not getrlyunyz then local c=wyrequest(get,nil,post) local d = c.content local f = get.."\n网络异常" if d ~= nil then f=c.code end if d == nil or tonumber(c.code) ~= 200 then gg.alert("请求链接:"..get.."\n网络错误了,请检查你的网络:"..f) os.exit() end return d else if post then return performHttpPost(get,post) else return performHttpGet(get) end end end local domains = { "www.wigwy.xyz", "wig.wigwy.xyz", "wig.xiaoman.top", "wig.luatool.cn", "wig.ggpro.cn", -- "www.wigyyds.com", -- "wigyyds.com" } -- 测试路径 local test_path = "/api/ok" -- 函数:检查域名是否可用 local function is_domain_available(domain) local url = "http://" .. domain .. test_path local response = ultra(url) if response == "Ping" then return true else return false end end -- 遍历域名寻找可用的 local function find_available_domain() for _, domain in ipairs(domains) do if is_domain_available(domain) then return domain end end return nil end -- 主函数 local available_domain = find_available_domain() if not available_domain then gg.alert("未找到可用的域名,请检查网络连接") print("未找到可用的域名,请检查网络连接") os.exit() end local xxxxxxx = "http://"..available_domain.."/api" local xxxxxxx_33732 = '33732' function xxxxxxx_Kami(km) local time = os.time() return xxxxxxx .. "/login/" .. time .. "/" .. xxxxxxx_33732 .. "/" .. km end function xxxxxxx_Notice() return ultra(xxxxxxx .. "/announcement/" .. os.time() .. "/" .. xxxxxxx_33732) end function xxxxxxx_Number_Of() return ultra(xxxxxxx .. "/numberOf/" .. os.time() .. "/" .. xxxxxxx_33732) end local notice = xxxxxxx_Notice() local number_of = xxxxxxx_Number_Of() local xxxxxxx_jieba = xxxxxxx .. "/unbundling/" .. xxxxxxx_33732 .. "/" local xxxbanb = '1.0' AMI_YDO = "/sdcard/Android/" xxxxxxxx = 999 local function K6Zu25j7sxoE2aX() local imei if device and device.getimei then if type(device.getimei) == "function" then imei = device.getimei() else imei = device.getimei end end if not imei then imei_path = AMI_YDO .. '/wig' .. xxxxxxx_33732 .. '.imei' imei = io.open(imei_path, 'r') if not imei or imei:read("*a") == "" then imei = md5((os.time() * 1000 + 611 - 99999)..math.random("1","999999999"))..os.time() io.open(imei_path, 'w+'):write(imei) else imei = io.open(imei_path, 'r'):read("*a") end imei = imei end km_key = io.open(AMI_YDO .. '/km' .. xxxxxxx_33732, 'r') if km_key == nil then else km_key = io.open(AMI_YDO .. '/km' .. xxxxxxx_33732, 'r'):read("*a") end e = io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'r') if e == nil or e:read("*a") == "" then e = "1" io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'w+'):write(e) else e = io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'r'):read("*a") end if e == "1" then e = false else e = true end if km_key and stringlen(km_key) == 0 then e = false end function KM_G(km,imei) HUT = ultra(xxxxxxx_jieba .. km, "imei="..imei) return HUT end local function v7GJ4ScWgBRpU4s(km,bool) content = ultra(xxxxxxx_Kami(km,bool), "imei=" .. imei) content = vROpRxQEaTrmsqX(content, "qZQLxsXHVP6kEnW", false) while string.find(content,"code") == nil do gg.alert("脚本已更新!","") os.exit() end kQqXQkUtk2h5HUd = PMmMsDqrHUN4n6k(content) ljgTkw7Og3wIL7D = kQqXQkUtk2h5HUd.code msg = kQqXQkUtk2h5HUd.msg check = kQqXQkUtk2h5HUd.check api_time = kQqXQkUtk2h5HUd.api_time hbZuz5H4cbGUNG7 = kQqXQkUtk2h5HUd.vip GXMoY4jacNsJf28 = kQqXQkUtk2h5HUd.new_code2 user_vip = kQqXQkUtk2h5HUd.user_vip -- 永久卡 | 年卡 | 季卡 | 月卡 | 周卡 | 天卡 | 小时卡 | 分钟卡 card_type = kQqXQkUtk2h5HUd.card_type -- 假如你想限制卡密类型来使用卡密可以这样使用 --[[ -- 使用例子 仅供参考 if card_type == "永久卡" then -- 代码 else gg.alert("你没有权限使用该功能") end --------------------- if card_type == "永久卡" or card_type == "年卡" then -- 代码 else gg.alert("你没有权限使用该功能") end ]] if check == nil then gg.alert(msg) K6Zu25j7sxoE2aX() end local time = os.time() while kQqXQkUtk2h5HUd.imei ~= imei do print("机械码不匹配") os.exit() end while wytonumber(time) < wytonumber(api_time) or ((wytonumber(os.time()) - wytonumber(api_time)) > 30) or ((wytonumber(os.time()) - wytonumber(api_time)) < -30) do print("脚本:数据过期(4.0)\n解决方法:调整手机时间为自动\n北京时间24小时制"..wytonumber(os.time()) - wytonumber(api_time)) os.exit() end if ljgTkw7Og3wIL7D ~= "20000" then gg.alert(msg) if ljgTkw7Og3wIL7D ~= "20000" then os.remove(AMI_YDO .. '/km' .. xxxxxxx_33732) io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'w+'):write("1") end gg.sleep(1000) while time == os.time() do print("违规操作(Time)") os.exit() end K6Zu25j7sxoE2aX() else checktrue = vROpRxQEaTrmsqX(kQqXQkUtk2h5HUd.checktrue, "qZQLxsXHVP6kEnW", false) while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do print("脚本:检测到你有非法操作") os.exit() end if card_type == "次数卡" then vip_text = kQqXQkUtk2h5HUd.msg else vip_text = os.date( "%Y" .. "年" .. "%m" .. "月" .. "%d" .. "日 %H" .. "时" .. "%M" .. "分" .. "%S" .. "秒", hbZuz5H4cbGUNG7) if os.date("%Y", hbZuz5H4cbGUNG7) == "9999" then vip_text = "永久卡" end end if wytostring(GXMoY4jacNsJf28) ~= "5955cd9a3a757774b4c57c22d8a3a0ce" then gg.alert("检测到您有非法操作2") K6Zu25j7sxoE2aX() end local Mu_wig = gg.alert([[ 到期时间: ]] .. vip_text .. [[ 使用卡密: ]] .. kQqXQkUtk2h5HUd.key, "确定","取消自动登录") if Mu_wig==2 then io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'w+'):write("1") gg.setVisible(true) else io.open(AMI_YDO .. '/km' .. xxxxxxx_33732, 'w+'):write(kQqXQkUtk2h5HUd.key) gg.setVisible(true) --md5 3c9a4cc4eafffd13ac719dea851c261a do if type(getrlyunyz) ~= 'function' then gg.alert('请使用RLGG执行') os.exit() return end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功,共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启失败") end end 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 local function setvalue ( address , flags , value , freeze ) local t = { } t [ 1 ] = { } t [ 1 ].address = address t [ 1 ].flags = flags t [ 1 ].value = value t [ 1 ].freeze = freeze gg.setValues ( t ) gg.addListItems ( t ) 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 Unfreeze ( ) -- 获取保存列表 local t = gg.getListItems ( ) for k , v in pairs ( t ) do t [ k ] [ "freeze" ] = false end return gg.addListItems ( t ) end local function readD(a) return gg.getValues({{ address=a, flags=gg.TYPE_DWORD }})[1].value end local function readF(a) return gg.getValues({{ address=a, flags=gg.TYPE_FLOAT }})[1].value end local function setvalue(address,flags,value,freeze) local t={} t[1]={} t[1].address=address t[1].flags=flags t[1].value=value t[1].freeze=freeze gg.setValues(t) gg.addListItems(t) end --以上为读取d,f类型的值和修改某地址的值的函数 local function RUI(address) return gg.getValues({{address = address, flags = gg.TYPE_QWORD}})[1].value 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 PS() end function setvalue(address,flags,value) PS('修改地址数值(地址,数值类型,要修改的值)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end--静态 local Ranges=gg.getRangesList('/') local function Read(module,type) for k,v in pairs(Ranges) do if v['internalName']:match('[^/]*$')==module and v['type']==type then return v['start'] end end end local Table={} local function Modify(address,value,flags) Table[#Table+1]={address=address,value=value,flags=flags} 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 --遍历写法 local function readD ( a ) return gg.getValues ( { { address = a , flags = 4 } } ) [ 1 ].value end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function addListltems(address,flags,value,freeze) t={} t[1]={} t[1].address=address t[1].flags=flags t[1].value=value t[1].freeze=freeze gg.addListItems(t) end function xfnb(add,lx) return gg.getValues({ { address=add,flags = lx } })[1].value end local function RUI(address) return gg.getValues({{address = address, flags = gg.TYPE_QWORD}})[1].value end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function addListltems(address,flags,value,freeze) t={} t[1]={} t[1].address=address t[1].flags=flags t[1].value=value t[1].freeze=freeze gg.addListItems(t) end local function RUI(address) return gg.getValues({{address = address, flags = gg.TYPE_QWORD}})[1].value 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]) gg.toast((name or "") .. "开启成功, 共修改" .. #Table .. "个值") end function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return gg.getValues(tab) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function Unfreeze() --获取保存列表 local t = gg.getListItems() for k, v in pairs(t) do t[k]["freeze"] = false end return gg.addListItems(t) 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 indIT=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 XGBase(Address,AFV) local address=0 for index,offset in ipairs(Address)do if index==1 then address=offset else address=gg.getValues({{address=address+offset,flags=4}})[1].value end end local Value,Freeze={},{} for index,value in ipairs(AFV)do local VALUE={address=address+value[3],flags=value[2],value=value[1],freeze=true} if value[4]then Freeze[#Freeze+1]=VALUE else Value[#Value+1]=VALUE end end gg.setValues(Value) gg.addListItems(Freeze) end function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return print(gg.getValues(tab)) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function LSQ_Chain(so, offset, format, value, type, Function)--模块设置, 偏移量, 功能参数, 修改值, 类型, 功能 频道:@dzyyds A91 getRanges = getRanges or (function() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v["type"]:sub(2, 2) == 'w' then--判断so是否可读可写 ranges[#ranges+1] = v end end return ranges end) local rest, ranges, sostart, valtype = {}, getRanges(), nil , gg.TYPE_DWORD if gg.getTargetInfo()["x64"] then--判断应用程序是否为64位 valtype = gg.TYPE_QWORD end for i in pairs(ranges) do local _name = ranges[i]["internalName"]:gsub('^.*/', '') if so[1] == _name and so[2] == ranges[i]["state"] then sostart = ranges[i]["start"] break end end if sostart then if offset[1] then for i = 1, #offset do rest = {{flags = valtype,address = sostart + offset[i]}} rest = gg.getValues(rest) if i == #offset then break end if valtype == gg.TYPE_DWORD then sostart = rest[1].value & 0xFFFFFFFF--对值进行补位操作 else sostart = rest[1].value end end end if #rest == 1 then end return Format(rest, format, value, type, Function) end gg.toast("功能:" .. Function .. "开启失败") print("功能开启失败原因: 未找到基址头") return os.exit() end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功,共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启失败") end end end end function setvalue(address, flags, value) local tt = {} tt[1] = {} tt[1].address = address tt[1].flags = flags tt[1].value = value gg.setValues(tt) end function read(address, flags) local tt = {} tt[1] = {} tt[1].address = address tt[1].flags = flags filzer = gg.getValues(tt)[1].value return filzer end function getbase(address) local tt = {} tt[1] = {} tt[1].address = address tt[1].flags = 32 filzer = gg.getValues(tt)[1].value return filzer 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("音乐配置"..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() local Ranges=gg.getRangesList('/') local function Read(module,type) for k,v in pairs(Ranges) do if v['internalName']:match('[^/]*$')==module and v['type']==type then return v['start'] end end end local Table={} local function Modify(address,value,flags) Table[#Table+1]={address=address,value=value,flags=flags} end 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 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 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 = "-- LSQ_ChainG 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 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(0x2C4D6BCE) 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 PS() end function setvalue(address,flags,value) PS('修改地址数值(地址,数值类型,要修改的值)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end ---静态基址写法配置 function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "地址成功,共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "失败") end end end end --仿XS写法配置 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 -- 修改内存地址的函数 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]) gg.toast((name or "") .. "开启成功, 共修改"..#Table.."个值") end local Ranges=gg.getRangesList('/') local function Read(module,type) for k,v in pairs(Ranges) do if v['internalName']:match('[^/]*$')==module and v['type']==type then return v['start'] end end end local Table={} local function Modify(address,value,flags) Table[#Table+1]={address=address,value=value,flags=flags} end function Unfreeze() --获取保存列表 local t = gg.getListItems() for k, v in pairs(t) do t[k]["freeze"] = false end return gg.addListItems(t) 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 XGBase(Address,AFV) local address=0 for index,offset in ipairs(Address)do if index==1 then address=offset else address=gg.getValues({{address=address+offset,flags=4}})[1].value end end local Value,Freeze={},{} for index,value in ipairs(AFV)do local VALUE={address=address+value[3],flags=value[2],value=value[1],freeze=true} if value[4]then Freeze[#Freeze+1]=VALUE else Value[#Value+1]=VALUE end end gg.setValues(Value) gg.addListItems(Freeze) end function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return print(gg.getValues(tab)) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function LSQ_Chain(so, offset, format, value, type, Function)--模块设置, 偏移量, 功能参数, 修改值, 类型, 功能 getRanges = getRanges or (function() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v["type"]:sub(2, 2) == 'w' then--判断so是否可读可写 ranges[#ranges+1] = v end end return ranges end) local rest, ranges, sostart, valtype = {}, getRanges(), nil , gg.TYPE_DWORD if gg.getTargetInfo()["x64"] then--判断应用程序是否为64位 valtype = gg.TYPE_QWORD end for i in pairs(ranges) do local _name = ranges[i]["internalName"]:gsub('^.*/', '') if so[1] == _name and so[2] == ranges[i]["state"] then sostart = ranges[i]["start"] break end end if sostart then if offset[1] then for i = 1, #offset do rest = {{flags = valtype,address = sostart + offset[i]}} rest = gg.getValues(rest) if i == #offset then break end if valtype == gg.TYPE_DWORD then sostart = rest[1].value & 0xFFFFFFFF--对值进行补位操作 else sostart = rest[1].value end end end if #rest == 1 then end return Format(rest, format, value, type, Function) end gg.toast("功能:" .. Function .. "开启失败") print("功能开启失败原因: 未找到基址头") return os.exit() end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function getadd ( ) local t = { } -- 创建一个获取x坐标地址的表 so = gg.getRangesList ( 'libUE4.so' ) [ 1 ].start Uworld = RUI ( RUI ( RUI ( so + 0xCE93A70 ) + 0x30 ) + 0x440 ) -- 0x6C0A70 , 0xc0 , 0x9d0 Uleve = RUI ( Uworld + 0x20 ) Arrayaddr = RUI ( Uleve + 0xA0 ) Count = readD ( Uleve + 0xA8 ) -- 数组数量 Oneself = RUI ( RUI ( RUI ( so + 0xCE93A70 ) + 0x30 ) + 0x440 ) -- self -- gg.copyText(string.format("%X", Oneself)) MyTeam = readD ( Oneself + 0x938 ) -- 自身队伍 t [ # t + 1 ] = { } t [ # t ].x = RUI ( Oneself + 0x1b0 ) + 0x1c0 -- 表内第一个存放自身坐标地址 t [ # t ].y = RUI ( Oneself + 0x1b0 ) + 0x1c4 t [ # t ].z = RUI ( Oneself + 0x1b0 ) + 0x1c8 if Count < 0 or Count > 9999 then gg.toast ( "获取数组数量时出错" ) else for i = 0 , Count do Object = RUI ( Arrayaddr + i * 0x8 ) if ( readF ( Object + 0x2860 ) == 479.5 ) and ( readD ( Object + 0x938 ) ~= MyTeam ) then -- 判断对象是否是人物,且不是队友 t [ # t + 1 ] = { } t [ # t ].x = RUI ( Object + 0x498 ) + 0x1c0 t [ # t ].y = RUI ( Object + 0x498 ) + 0x1c4 t [ # t ].z = RUI ( Object + 0x498 ) + 0x1c8 t [ # t ].x1 = RUI ( Object + 0x1b0 ) + 0x1c0 t [ # t ].y1 = RUI ( Object + 0x1b0 ) + 0x1c4 t [ # t ].z1 = RUI ( Object + 0x1b0 ) + 0x1c8 t [ # t ].hp = Object + 0xdc0 end end end if # t < 2 then gg.toast ( "附近没有人" ) end return t 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 XunK_Chain(so, offset, format, value, type, Function)--模块设置, 偏移量, 功能参数, 8.47963525e-21, 类型, 功能 getRanges = getRanges or (function() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v["type"]:sub(2, 2) == 'w' then--判断so是否可读可写 ranges[#ranges+1] = v end end return ranges end) local rest, ranges, sostart, valtype = {}, getRanges(), nil , gg.TYPE_DWORD if gg.getTargetInfo()["x64"] then--判断应用程序是否为64位 valtype = gg.TYPE_QWORD end for i in pairs(ranges) do local _name = ranges[i]["internalName"]:gsub('^.*/', '') if so[1] == _name and so[2] == ranges[i]["state"] then sostart = ranges[i]["start"] break end end if sostart then if offset[1] then for i = 1, #offset do rest = {{flags = valtype,address = sostart + offset[i]}} rest = gg.getValues(rest) if i == #offset then break end if valtype == gg.TYPE_DWORD then sostart = rest[1].value & 0xFFFFFFFF--对值进行补位操作 else sostart = rest[1].value end end end if #rest == 1 then end return Format(rest, format, value, type, Function) end gg.toast("功能:" .. Function .. "开启失败") gg.alert("选择游戏进程 ") return os.exit() end function PS() end function setvalue(address,flags,value) PS('修改地址数值(地址,数值类型,要修改的值)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end--静态 local Ranges=gg.getRangesList('/') local function Read(module,type) for k,v in pairs(Ranges) do if v['internalName']:match('[^/]*$')==module and v['type']==type then return v['start'] end end end local Table={} local function Modify(address,value,flags) Table[#Table+1]={address=address,value=value,flags=flags} 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 --遍历写法 local function readD ( a ) return gg.getValues ( { { address = a , flags = 4 } } ) [ 1 ].value end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function addListltems(address,flags,value,freeze) t={} t[1]={} t[1].address=address t[1].flags=flags t[1].value=value t[1].freeze=freeze gg.addListItems(t) end function xfnb(add,lx) return gg.getValues({ { address=add,flags = lx } })[1].value end local function X(address) return gg.getValues({{address = address, flags = gg.TYPE_QWORD}})[1].value end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function addListltems(address,flags,value,freeze) t={} t[1]={} t[1].address=address t[1].flags=flags t[1].value=value t[1].freeze=freeze gg.addListItems(t) end local function X(address) return gg.getValues({{address = address, flags = gg.TYPE_QWORD}})[1].value 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]) gg.toast((name or "") .. "开启成功, 共修改" .. #Table .. "个值") end function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return gg.getValues(tab) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function Unfreeze() --获取保存列表 local t = gg.getListItems() for k, v in pairs(t) do t[k]["freeze"] = false end return gg.addListItems(t) 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 XGBase(Address,AFV) local address=0 for index,offset in ipairs(Address)do if index==1 then address=offset else address=gg.getValues({{address=address+offset,flags=4}})[1].value end end local Value,Freeze={},{} for index,value in ipairs(AFV)do local VALUE={address=address+value[3],flags=value[2],value=value[1],freeze=true} if value[4]then Freeze[#Freeze+1]=VALUE else Value[#Value+1]=VALUE end end gg.setValues(Value) gg.addListItems(Freeze) end function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return print(gg.getValues(tab)) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function XunK_Chain(so, offset, format, value, type, Function)--模块设置, 偏移量, 功能参数, 修改值, 类型, 功能 频道:@dzyyds A91 getRanges = getRanges or (function() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v["type"]:sub(2, 2) == 'w' then--判断so是否可读可写 ranges[#ranges+1] = v end end return ranges end) local rest, ranges, sostart, valtype = {}, getRanges(), nil , gg.TYPE_DWORD if gg.getTargetInfo()["x64"] then--判断应用程序是否为64位 valtype = gg.TYPE_QWORD end for i in pairs(ranges) do local _name = ranges[i]["internalName"]:gsub('^.*/', '') if so[1] == _name and so[2] == ranges[i]["state"] then sostart = ranges[i]["start"] break end end if sostart then if offset[1] then for i = 1, #offset do rest = {{flags = valtype,address = sostart + offset[i]}} rest = gg.getValues(rest) if i == #offset then break end if valtype == gg.TYPE_DWORD then sostart = rest[1].value & 0xFFFFFFFF--对值进行补位操作 else sostart = rest[1].value end end end if #rest == 1 then end return Format(rest, format, value, type, Function) end gg.toast("功能:" .. Function .. "开启失败") print("功能开启失败原因: 未找到基址头") return os.exit() end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功,共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "开启失败") end end end end function setvalue(address, flags, value) local tt = {} tt[1] = {} tt[1].address = address tt[1].flags = flags tt[1].value = value gg.setValues(tt) end function read(address, flags) local tt = {} tt[1] = {} tt[1].address = address tt[1].flags = flags filzer = gg.getValues(tt)[1].value return filzer end function getbase(address) local tt = {} tt[1] = {} tt[1].address = address tt[1].flags = 32 filzer = gg.getValues(tt)[1].value return filzer 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("音乐配置"..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() local Ranges=gg.getRangesList('/') local function Read(module,type) for k,v in pairs(Ranges) do if v['internalName']:match('[^/]*$')==module and v['type']==type then return v['start'] end end end local Table={} local function Modify(address,value,flags) Table[#Table+1]={address=address,value=value,flags=flags} end 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 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 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 = "-- LSQ_ChainG 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 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(0x2C4D6BCE) 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 PS() end function setvalue(address,flags,value) PS('修改地址数值(地址,数值类型,要修改的值)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end ---静态基址写法配置 function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "地址成功,共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "失败") end end end end --仿XS写法配置 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 -- 修改内存地址的函数 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]) gg.toast((name or "") .. "开启成功, 共修改"..#Table.."个值") end local Ranges=gg.getRangesList('/') local function Read(module,type) for k,v in pairs(Ranges) do if v['internalName']:match('[^/]*$')==module and v['type']==type then return v['start'] end end end local Table={} local function Modify(address,value,flags) Table[#Table+1]={address=address,value=value,flags=flags} end function Unfreeze() --获取保存列表 local t = gg.getListItems() for k, v in pairs(t) do t[k]["freeze"] = false end return gg.addListItems(t) 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 XGBase(Address,AFV) local address=0 for index,offset in ipairs(Address)do if index==1 then address=offset else address=gg.getValues({{address=address+offset,flags=4}})[1].value end end local Value,Freeze={},{} for index,value in ipairs(AFV)do local VALUE={address=address+value[3],flags=value[2],value=value[1],freeze=true} if value[4]then Freeze[#Freeze+1]=VALUE else Value[#Value+1]=VALUE end end gg.setValues(Value) gg.addListItems(Freeze) end function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return print(gg.getValues(tab)) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function XunK_Chain(so, offset, format, value, type, Function)--模块设置, 偏移量, 功能参数, 修改值, 类型, 功能 getRanges = getRanges or (function() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v["type"]:sub(2, 2) == 'w' then--判断so是否可读可写 ranges[#ranges+1] = v end end return ranges end) local rest, ranges, sostart, valtype = {}, getRanges(), nil , gg.TYPE_DWORD if gg.getTargetInfo()["x64"] then--判断应用程序是否为64位 valtype = gg.TYPE_QWORD end for i in pairs(ranges) do local _name = ranges[i]["internalName"]:gsub('^.*/', '') if so[1] == _name and so[2] == ranges[i]["state"] then sostart = ranges[i]["start"] break end end if sostart then if offset[1] then for i = 1, #offset do rest = {{flags = valtype,address = sostart + offset[i]}} rest = gg.getValues(rest) if i == #offset then break end if valtype == gg.TYPE_DWORD then sostart = rest[1].value & 0xFFFFFFFF--对值进行补位操作 else sostart = rest[1].value end end end if #rest == 1 then end return Format(rest, format, value, type, Function) end gg.toast("功能:" .. Function .. "开启失败") print("功能开启失败原因: 未找到基址头") return os.exit() end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end-- function kk99() string.toMusic('请拉满疾跑再点击趴下') LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"修改","8",16,"重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.0001",16,"流畅爬起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.0001",16,"流畅爬起") --feitian_running = false local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228}--坐标z zbz = S_Pointer(t, tt, true) local tt = {0x558CF0,0x30,0x4B8,0x116c}--趴下判断 pxpd = S_Pointer(t, tt, true) -- while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end feitian_running = true while feitian_running do z=gg.getValues({{address=zbz,flags=16,value=nil}})[1].value px=gg.getValues({{address=pxpd,flags=16,value=nil}})[1].value if px ==120 then gg.addListItems({{address=zbz,flags=16,value=z+50, freeze = true}}) gg.sleep(20) else gg.sleep(800) gg.addListItems({{address=zbz,flags=16,value=nil, freeze = false}}) end end end function kk91() local thread1 = luajava.startThread(kkazhhh) floatingWindow:setCache(cacheName, thread1) string.toMusic('请拉满疾跑再点击趴下') --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x4A0,0x1B4,},"修改","15",16,"1F重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.0001",16,"流畅爬起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.0001",16,"流畅爬起") --feitian_running = false local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228}--坐标z zbz = S_Pointer(t, tt, true) local tt = {0x558CF0,0x30,0x4B8,0x116c}--趴下判断 pxpd = S_Pointer(t, tt, true) -- while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end feitian_running = true while feitian_running do z=gg.getValues({{address=zbz,flags=16,value=nil}})[1].value px=gg.getValues({{address=pxpd,flags=16,value=nil}})[1].value if px ==120 then gg.addListItems({{address=zbz,flags=16,value=z+45, freeze = true}}) gg.sleep(20) else gg.sleep(800) gg.addListItems({{address=zbz,flags=16,value=nil, freeze = false}}) end end end function kk111191() -- 仅保留:右探头上升、左探头下降 自定义数值 local thread1 = luajava.startThread(kkazhhh) floatingWindow:setCache(cacheName, thread1) h = gg.prompt( {"(无用可忽略)", "右探头上升速度", "左探头下降速度"}, {"0", "20", "20"}, {"text", "text", "text"}, {"true", "true", "true"} ) if h then local getZZ = function(address) return gg.getValues({{address = address, flags = 32}})[1].value end local UE4bss = gg.getRangesList("libUE4.so:bss")[1].start local self = getZZ(getZZ(getZZ(UE4bss + 0x558CF0) + 0x30) + 0x4b8) -- 仅保留探头与Z坐标相关地址 local zbz = getZZ(self + 0x208) + 0x228 -- Z坐标 local ttps = self + 0x2b00 -- 左右探头状态 local upcheck = self + 0x2b04 -- 探头生效判断 --0x558CF0,0x30,0x4B8,0x2AF0 --0x558CF0,0x30,0x4B8,0x208,0x228 feitian_running = true while feitian_running do -- 仅读取:Z坐标、探头状态、开关 local vals = gg.getValues({ {address = zbz, flags = 16}, {address = ttps, flags = 4}, {address = upcheck, flags = 4} }) local z = vals[1].value local ttpd = vals[2].value local upstate = vals[3].value -- 核心:仅左右探头修改Z坐标 if upstate == 1 then if ttpd == 16842752 then -- 左探头 ↓ 下降 gg.setValues({{address=zbz, flags=16, value=z - h[3]}}) elseif ttpd == 16777216 then -- 右探头 ↑ 上升 gg.setValues({{address=zbz, flags=16, value=z + h[2]}}) end end gg.sleep(13) end end end function mmlb9999() function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find (szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len (szFullString)) break end nSplitArray[nSplitIndex] = string.sub (szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len (szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功,一共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "未搜索到数据,开启失败") end end 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) gg.toast("开启成功,一共修改"..#t.."条数据") gg.addListItems(t) else gg.toast("未搜索到数据,开启失败", false) return false end else gg.toast("Not Found") return false end end function HaoGe(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) 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 tPUBGMH={} local offset=Search[k][2]-base local num=Search[k][1] for i,v in ipairs(result)do tPUBGMH[#tPUBGMH+1]={} tPUBGMH[#tPUBGMH].address=v.address+offset tPUBGMH[#tPUBGMH].flags=v.flags end tPUBGMH=gg.getValues(tPUBGMH) for i,v in ipairs(tPUBGMH)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) gg.sleep(400) else return false end else return false end end Name = "ʜᴇᴀᴅ ʜɪᴛᴛɪɴɢ ᴡɪᴛʜᴏᴜᴛ ᴡᴀsᴛᴇ ᴏғ ʙᴜʟʟᴇᴛ" local Nc = 16384 local Lx = 16 local Sz1 = {{-1.42781105e28, 0}} local Sz2 = {{0, 0}} HaoGe(Nc, Lx, Sz1, Sz2) qmnb = { {["memory"] = 32}, {["name"] = "ᴍᴀɪɴ ʜɪᴛᴛɪɴɢ ᴄᴏᴍᴘᴏɴᴇɴᴛ ᴀʟʟ ʙᴏᴅʏ"}, {["value"] = 4740038608910024704, ["type"] = 32}, {["lv"] = 4752423507886342144, ["offset"] = 4, ["type"] = 32}, {["lv"] = 1106509824, ["offset"] = 8, ["type"] = 32}, } qmxg = { {["value"] = 700, ["offset"] = 4, ["type"] = 16}, {["value"] = 700, ["offset"] = 8, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "sᴜᴘᴘᴏʀᴛ sᴋʏ sʜᴏᴏᴛ ᴠ1"}, {["value"] = 4719772412750681353, ["type"] = 32}, {["lv"] = 4742290408720039936, ["offset"] = 4, ["type"] = 32}, } qmxg = { {["value"] = -460, ["offset"] = 8, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "sᴜᴘᴘᴏʀᴛ sᴋʏ sʜᴏᴏᴛ ᴠ2"}, {["value"] = -4417614866316724128, ["type"] = 32}, {["lv"] = 4724276012378061487, ["offset"] = 4, ["type"] = 32}, } qmxg = { {["value"] = -560, ["offset"] = 12, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "sᴜᴘᴘᴏʀᴛ sᴋʏ sʜᴏᴏᴛ ᴠ3"}, {["value"] = -4416487068034336677, ["type"] = 32}, {["lv"] = 4724276012378324073, ["offset"] = 4, ["type"] = 32}, } qmxg = { {["value"] = -660, ["offset"] = 8, ["type"] = 16}, {["value"] = -660, ["offset"] = 12, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "xʜɪᴛ"}, {["value"] = 4771563806291656704, ["type"] = 32}, {["lv"] = 1110966272, ["offset"] = 4, ["type"] = 32}, {["lv"] = 4692750811720056832, ["offset"] = -4, ["type"] = 32},} qmxg = { {["value"] = 999, ["offset"] = 0, ["type"] = 16},} xqmnb(qmnb) string.toMusic('开启成功') end function kkaz1111111100000() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-299365883", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) revert = gg.getResults(200, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("10", gg.TYPE_DWORD) gg.processResume() gg["toast"]("") gg.clearResults() gg.setRanges(32) gg.searchNumber("10.0F;10.0F;10.0F;10.0F;45:193", 16, false, 536870912, 0, -1) gg.searchNumber("10", 16, false, 536870912, 0, -1) gg.getResults(100) gg.editAll("-5000", 16) string.toMusic('特效开启成功') end function lllllkkkk() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-299365883", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) revert = gg.getResults(200, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("10", gg.TYPE_DWORD) gg.processResume() gg["toast"]("") gg.clearResults() gg.setRanges(32) gg.searchNumber("10.0F;10.0F;10.0F;10.0F;45:193", 16, false, 536870912, 0, -1) gg.searchNumber("10", 16, false, 536870912, 0, -1) gg.getResults(100) gg.editAll("-700", 16) string.toMusic('特效开启成功') end function mmlbnb() function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end local nFindLastIndex = string.find (szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len (szFullString)) break end nSplitArray[nSplitIndex] = string.sub (szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len (szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "开启成功,一共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "未搜索到数据,开启失败") end end 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) gg.toast("开启成功,一共修改"..#t.."条数据") gg.addListItems(t) else gg.toast("未搜索到数据,开启失败", false) return false end else gg.toast("Not Found") return false end end function HaoGe(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) 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 tPUBGMH={} local offset=Search[k][2]-base local num=Search[k][1] for i,v in ipairs(result)do tPUBGMH[#tPUBGMH+1]={} tPUBGMH[#tPUBGMH].address=v.address+offset tPUBGMH[#tPUBGMH].flags=v.flags end tPUBGMH=gg.getValues(tPUBGMH) for i,v in ipairs(tPUBGMH)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) gg.sleep(400) else return false end else return false end end gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,752,423,507,886,342,144", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(100) gg.editAll("4,752,423,507,916,455,936", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("1,106,509,824", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(100) gg.editAll("1,138,425,856", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("23;25;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.refineNumber("23", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1111) gg.editAll("15", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("25;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("250", gg.TYPE_FLOAT) gg.clearResults() Name = "成功" local Nc = 16384 local Lx = 16 local Sz1 = {{-1.42781105e28, 0}} local Sz2 = {{0, 0}} HaoGe(Nc, Lx, Sz1, Sz2) qmnb = { {["memory"] = 32}, {["name"] = "不减伤头部范围开启成功"}, {["value"] = 4740038608910024704, ["type"] = 32}, {["lv"] = 4752423507886342144, ["offset"] = 4, ["type"] = 32}, {["lv"] = 1106509824, ["offset"] = 8, ["type"] = 32}, } qmxg = { {["value"] = 700, ["offset"] = 4, ["type"] = 16}, {["value"] = 700, ["offset"] = 8, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "不减伤头部范围开启成功"}, {["value"] = 4719772412750681353, ["type"] = 32}, {["lv"] = 4742290408720039936, ["offset"] = 4, ["type"] = 32}, } qmxg = { {["value"] = -460, ["offset"] = 8, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "不减伤头部范围开启成功"}, {["value"] = -4417614866316724128, ["type"] = 32}, {["lv"] = 4724276012378061487, ["offset"] = 4, ["type"] = 32}, } qmxg = { {["value"] = -560, ["offset"] = 12, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "开启成功"}, {["value"] = -4416487068034336677, ["type"] = 32}, {["lv"] = 4724276012378324073, ["offset"] = 4, ["type"] = 32}, } qmxg = { {["value"] = -660, ["offset"] = 8, ["type"] = 16}, {["value"] = -660, ["offset"] = 12, ["type"] = 16}, } xqmnb(qmnb) --gg.toast("已完毕<<") string.toMusic("范围开启成功") end function kk555() string.toMusic("循环已开启,进入到局内,然后关闭") feitian_running = true while feitian_running do --feitian_running = false --so=gg.getRangesList('libUE4.so')[1].start --py=0xCD85898 --setvalue(so+py,4, -721215457) gg.sleep(100) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x1CC} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 4, value = 5126}}) end end function kk50() string.toMusic("循环已开启,进入到局内,然后关闭") feitian_running = true while feitian_running do --feitian_running = false so=gg.getRangesList('libUE4.so')[1].start py=0xCD85898 setvalue(so+py,4, -721215457) gg.sleep(100) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x1CC} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 4, value = 5126}}) end end function hhhhh2222() string.toMusic('一定要开启陀螺仪,摇晃一下再跳') LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1990},"冻结","0.001",16,"晚年名下加速64位国体秒趴") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CF8},"修改","34",16,"50") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE4},"冻结","0.8",16,"慢动作") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.0001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x21C},"冻结","7500",16,"高跳") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"冻结","11.5",16,"重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1168},"冻结","4",16,"空中移速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x758},"冻结","75",16,"全局") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x760},"冻结","1.1",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x770},"冻结","0.0001",16,"减速") local tt = {0x558CF0,0x30,0xE4} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 16, value = 99999}}) local UE4bss = gg.getRangesList("libUE4.so:bss")[1].start local function getZZ(ader) return gg.getValues({{address = ader, flags = gg.TYPE_QWORD}})[1].value end feitian_running = true while feitian_running do local base = getZZ(getZZ(UE4bss + 0x558CF0) + 0x30) local base_4b8 = getZZ(base + 0x4B8) local typd = base_4b8 + 0x2754 local ty = gg.getValues({{address = typd, flags = 4}})[1].value local real_write = {} if ty == 3 then table.insert(real_write, {address = getZZ(base_4b8 + 0x518) + 0x268, flags = 16, value = 999999}) table.insert(real_write, {address = base_4b8 + 0x1110, flags = 16, value = 20}) else table.insert(real_write, {address = getZZ(base_4b8 + 0x518) + 0x268, flags = 16, value = 4000}) table.insert(real_write, {address = base_4b8 + 0x1110, flags = 16, value = 3.5}) end gg.setValues(real_write) if ty ~= 3 then gg.sleep(10) end end end function kkaz220() local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x0} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt+0x258, flags = 4, value = 0}})--13860 gg.setValues({{address = ttt+0x550, flags = 16, value = 0}})--240 gg.setValues({{address = ttt+0x208, flags = 16, value = 0}})--8192 gg.setValues({{address = ttt+0x3E8, flags = 4, value = 54188}})--卡脚 gg.setValues({{address = ttt+0x3C, flags = 4, value = 33000000}})--卡脚 local tt = {0x558CF0,0x30,0x4B8,0x308,0x140,0x360} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 16, value = 0}}) h = gg.prompt( {"自改移速推荐30-45", "右探头上升速度自改25-45", "左探头下降速度自改推荐25-45"}, {"35", "35", "35"}, {"text", "text", "text"}, {"true", "true", "true"} ) if h then local getZZ = function(address) return gg.getValues({{address = address, flags = 32}})[1].value end local PI = math.pi local deg2rad = PI / 180 local sin, cos = math.sin, math.cos -- 缓存函数 local UE4bss = gg.getRangesList("libUE4.so")[1].start local self = getZZ(getZZ(getZZ(UE4bss + 0x12B7D0F0) + 0x30) + 0x450) local fwaddr = getZZ(getZZ(UE4bss + 0x12B7D0F0) + 0x30) + 0x47C--不知锁链 local swaddr = fwaddr - 4 local ydpd = self + 0x2418--变1 local ttps = self + 0x2A40 --变 2 local zbz = getZZ(self + 0x1B0) + 0x1C8--不变 local zbx, zby = zbz - 8, zbz - 4 local upcheck = self + 0x2A44--变3 -- 🚀 查表法:方向逻辑 local moveFuncs = { [5632] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x + speed*cosfw, y + speed*sinfw, z + speed*sinsw end, [5120] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x - speed*cosfw, y - speed*sinfw, z - speed*sinsw end, [4352] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x + speed*sinfw, y - speed*cosfw, z end, [6400] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x - speed*sinfw, y + speed*cosfw, z end, [4608] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x + speed*(cosfw+sinfw), y + speed*(sinfw-cosfw), z + speed*sinsw end, [6656] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x + speed*(cosfw-sinfw), y + speed*(sinfw+cosfw), z + speed*sinsw end, [4096] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x - speed*cosfw + speed*sinfw, y - speed*sinfw - speed*cosfw, z - speed*sinsw end, [6144] = function(x,y,z,cosfw,sinfw,sinsw,speed) return x - speed*(cosfw+sinfw), y - speed*sinfw + speed*cosfw, z - speed*sinsw end } feitian_running = true while feitian_running do -- 批量取值 local vals = gg.getValues({ {address = zbz, flags = 16}, {address = zbx, flags = 16}, {address = zby, flags = 16}, {address = fwaddr, flags = 16},-- fw {address = swaddr, flags = 16},-- sw {address = ydpd, flags = 4}, {address = ttps, flags = 4}, {address = upcheck, flags = 4} }) local z, x, y = vals[1].value, vals[2].value, vals[3].value local fw, sw = vals[4].value, vals[5].value local ydpdValue, ttpd, upstate = vals[6].value, vals[7].value, vals[8].value -- 弧度 + 三角函数 local fwRad, swRad = fw * deg2rad, sw * deg2rad local cosfw, sinfw = cos(fwRad), sin(fwRad) local sinsw = sin(swRad) local speed = h[1] -- 移动逻辑 local setList = {} local f = moveFuncs[ydpdValue] if f then local nx, ny, nz = f(x,y,z,cosfw,sinfw,sinsw,speed) setList[#setList+1] = {address=zbx, flags=16, value=nx} setList[#setList+1] = {address=zby, flags=16, value=ny} if nz then setList[#setList+1] = {address=zbz, flags=16, value=nz} end end if upstate == 1 then if ttpd == 16842752 then setList[#setList+1] = {address=zbz, flags=16, value=z - h[2]} elseif ttpd == 16777216 then setList[#setList+1] = {address=zbz, flags=16, value=z + h[3]} end end if #setList > 0 then gg.setValues(setList) end -- ✅ 限帧 gg.sleep(4) end end end function kkazhhh() feitian_running = false string.toMusic("循环已关闭") end -- pxqy =gg.alert("请选择你喜欢的UI ","少功能多线程UI","多功能单线程UI") --if pxqy == 1 then draw.setSize(50) draw.setStyle('填充') draw3 = require('draw3') text1 = draw3.text('✈️KKAZ110',300,350) draw.setColor('#FF00F0') string.toMusic('欢迎使用晚年名下加速国体64位脚本,趴下可不拉,必须打开陀螺仪提高流畅度') local floatingWindowManager = require('floatingWindowManager') floatingWindowManager:init() floatingWindowManager:newWindow(('晚年名下加速⁶⁴'):format(floatingWindowManager.version), { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_margin = '10dp', layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, --background = "https://tc.24ly.cn/view.php/77b7b1e5a8716a7281388fe0ee99c190.jpg", layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '选择游戏进程', textSize = '16sp', onClick = function() gg.setProcessX() string.toMusic("请选择进程") end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '框架防闪', textSize = '16sp', onClick = function() if gg.getRangesList("libanogs.so:bss")[1] then local t = {} t[1] = gg.getRangesList("libanogs.so:bss")[1]["start"] + 0x300; -- 数值地址:0x7A74D89300 t[2] = gg.getRangesList("libanogs.so:bss")[1]["start"] + 0x3F8; -- 数值地址:0x7A74D893F8 t[3] = gg.getRangesList("libanogs.so:bss")[1]["start"] + 0x430; -- 数值地址:0x7A74D89430 t[4] = gg.getRangesList("libanogs.so:bss")[1]["start"] + 0x550; -- 数值地址:0x7A74D89550 t[5] = gg.getRangesList("libanogs.so:bss")[1]["start"] + 0x5D8; -- 数值地址:0x7A74D895D8 gg.addListItems({ [1] = { address = t[1], flags = 4, value = 64, freeze = true, }, [2] = { address = t[2], flags = 4, value = 64, freeze = true, }, [3] = { address = t[3], flags = 4, value = 64, freeze = true, }, [4] = { address = t[4], flags = 4, value = 64, freeze = true, }, [5] = { address = t[5], flags = 4, value = 64, freeze = true, }, }) end string.toMusic("防闪开启成功") end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '大厅/功能', textSize = '16sp', onClick = function() floatingWindowManager:start('大厅/功能') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '晚年名下加速地铁', textSize = '16sp', onClick = function() floatingWindowManager:start('晚年名下加速加速⁶⁴') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '定点飞天区', textSize = '16sp', onClick = function() floatingWindowManager:start('定点飞天⁶⁴') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '定点控制区', textSize = '16sp', onClick = function() floatingWindowManager:start('定点控制⁶⁴') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '音乐区', textSize = '16sp', onClick = function() floatingWindowManager:start('音乐区') end }, } }) end, onDestroy = function() end }) floatingWindowManager:newWindow('大厅/功能', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="广角", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then GJ=gg.prompt({'1-3'},{[1]='2'},{[1]='number'})---自改 if GJ == nil or GJ[1] == '' or GJ[1] == '0' then gg.toast("取消") else so=gg.getRangesList('libUE4.so')[1].start py=0x37A7548 setvalue(so+py,16,GJ[1]) gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) end end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="一键功能", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then --除雾原值:505872643 so=gg.getRangesList('libUE4.so')[1].start py=0xAF8C8FC setvalue(so+py,4,-721215457) --无后原值16原 8.95340295e-21:506011648 so=gg.getRangesList('libUE4.so')[1].start py=0x67AEA2C setvalue(so+py,16,8.47694692e-21) --瞬击原值16原 8.95857929e-21 :506018056 so=gg.getRangesList('libUE4.so')[1].start py=0x688FF4C setvalue(so+py,16,8.95671814E-21) --聚点原值16原 8.52492339e-21:505481216 so=gg.getRangesList('libUE4.so')[1].start py=0x67A75B0 setvalue(so+py,16,8.47963525E-21) --弹孔大小原值9.21479445e-21 原值D :506335235 so=gg.getRangesList('libUE4.so')[1].start py=0x6B04F10 setvalue(so+py,16,8.57951974e-21) --开镜防抖原值 原值D :-1119030272 so=gg.getRangesList('libUE4.so')[1].start py=0x6F25404 setvalue(so+py,4,-1119390720) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="枪械射速", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then --射速原值:505489408 so=gg.getRangesList('libUE4.so')[1].start py=0x7C55F98 setvalue(so+py,16,8.47963525E-21) else --射速原值:505489408 so=gg.getRangesList('libUE4.so')[1].start py=0x7C55F98 setvalue(so+py,4,505489408) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="红细线条特效①", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then local thread1 = luajava.startThread(lllllkkkk) floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="全屏线条特效②", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then local thread1 = luajava.startThread(kkaz1111111100000) floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="直播字体", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then draw.remove()--隐藏水印 string.toMusic("隐藏水印") else draw.setSize(45) draw.setStyle('填充') draw3 = require('draw3') text1 = draw3.text('高级PS制作',300,350) draw.setColor('#FFFFFFFF') string.toMusic("显示水印") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="真伤范围②", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then local thread1 = luajava.startThread(mmlb9999) floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="免root刷新游客[登录开]", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="210dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then gg.alert('等待1分钟后退出') while true do while card_type ~= '次数卡' and hbZuz5H4cbGUNG7 < os.time() do gg.alert('脚本已过期') os.exit() end while GXMoY4jacNsJf28 ~= '5955cd9a3a757774b4c57c22d8a3a0ce' do os.exit() end while checktrue ~= (imei .. kQqXQkUtk2h5HUd.user_time .. api_time..xxxxxxx_33732..ljgTkw7Og3wIL7D) do os.exit() end --开始循 gg.command('rm -rf /data/data/com.tencent.igce/shared_prefs /storage/emulated/0/Documents/') gg.command('mkdir /data/data/com.tencent.igce/shared_prefs') gg.command('rm-rf/data/data/com.tencent.igce/shared_prefs') gg.command('rm -rf /data/data/com.tencent.igce/files') gg.command('rm -rf $GUEST') gg.command('rm -rf /data/media/0/Android/data/com.tencent.igce/files/login-identifier.txt') gg.command('rm -rf /data/media/0/Android/data/com.tencent.igce/files/UE4Game/ShadowTrackerExtra/ShadowTrackerExtra/Intermediate') gg.command('rm -rf /data/data/com.tencent.igce/databases') gg.command('rm -rf /data/media/0/Android/data/com.tencent.igce/files/UE4Game/ShadowTrackerExtra/ShadowTrackerExtra/Intermediate') gg.command('rm -rf /data/media/0/Android/data/com.tencent.igce/files/TGPA') gg.command('rm -rf /data/media/0/Android/data/com.tencent.igce/files/ProgramBinaryCache') gg.command('iptables -I OUTPUT -d cloud.vmp.onezapp.com -j REJECT') gg.command('iptables -I INPUT -s cloud.vmp.onezapp.com -j REJECT') end end end }, }, } }) end }) floatingWindowManager:newWindow('晚年名下加速加速⁶⁴', { onCreate = function(floatingWindow) --string.toMusic("默认60帧加速,帧率越高请调加速低一点,需要根据自己的设备调加速,不然拉回") floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="过标记[开关]", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then --过标记① 原值:1033081774 so=gg.getRangesList('libgcloud.so')[1].start py=0x487128 setvalue(so+py,4,-698416192) --过标记②原值:16843522 so=gg.getRangesList('libgcloud.so')[1].start py=0x487CC4 setvalue(so+py,4,-698416192) gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("开启成功") else --过标记① 原值:1033081774 so=gg.getRangesList('libgcloud.so')[1].start py=0x487128 setvalue(so+py,4,1033081774) --过标记②原值:16843522 so=gg.getRangesList('libgcloud.so')[1].start py=0x487CC4 setvalue(so+py,4,16843522) string.toMusic("关闭成功,请等待10到15秒恢复结算,然后返回大厅") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="七图趴下加速①", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,506149161) gg.sleep(500) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","0",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x220},"冻结","136525.0",16,"x") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x224},"冻结","163002.0",16,"y") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x228},"冻结","5937.0",16,"z") gg.sleep(1700) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,-721215457) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-721215457) gg.sleep(700) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x220} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x224} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","167838216",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"冻结","150",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","9999",16,"8") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","3900",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"冻结","0.9",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","0",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","-1",16,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","99999",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0.0008",16,"防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","999999",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","0",16,"60000防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x448},"冻结","54148",4,"卡脚16896") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x288},"修改","99999",16,"0防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x270},"修改","99999",16,"落地") OP=gg.prompt({'自改加速60帧0.003-0.0035 90帧0.0025-0.0030 120帧0.0015-0.002'},{[1]='0.0029'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x364} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("加速一定要趴下跑,否则拉回") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="七图趴下加速②", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,506149161) gg.sleep(500) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","0",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x220},"冻结","136525.0",16,"x") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x224},"冻结","163002.0",16,"y") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x228},"冻结","5937.0",16,"z") gg.sleep(1700) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,-721215457) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-721215457) gg.sleep(700) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x220} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x224} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","167838216",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","300",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","9999",16,"8") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","3800",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","999999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","0",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","0",16,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","9999",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0.0008",16,"防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","999999",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","0",16,"60000防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x448},"冻结","54148",4,"卡脚16896") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","999999",16,"1") -- LSQ_chain({'libue4.so:bss','cb'},{0x558CF0,0x30,0x4B8,0x1058},"冻结","8",4,"8 趴下开火") OP=gg.prompt({'自改加速60帧0.003-0.0035 90帧0.0025-0.0030 120帧0.0015-0.002'},{[1]='0.0029'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x364} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("加速一定要趴下跑,否则拉回") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="五图趴下加速①", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,506149161) gg.sleep(500) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","0",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x220},"冻结","154719.0",16,"x") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x224},"冻结","107166.0",16,"y") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x228},"冻结","308.0",16,"z") gg.sleep(1700) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,-721215457) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-721215457) gg.sleep(700) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x220} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x224} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","167838216",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","300",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","9999",16,"8") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","3800",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","999999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","0",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","0",16,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","9999",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0.0008",16,"防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","999999",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","0",16,"60000防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x448},"冻结","54148",4,"卡脚16896") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x288},"修改","99999",16,"0防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x270},"修改","99999",16,"落地") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","999999",16,"1") -- LSQ_chain({'libue4.so:bss','cb'},{0x558CF0,0x30,0x4B8,0x1058},"冻结","8",4,"8 趴下开火") OP=gg.prompt({'自改加速60帧0.003-0.0035 90帧0.0025-0.0030 120帧0.0015-0.002'},{[1]='0.0029'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x364} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("加速一定要趴下跑,否则拉回") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="五图趴下加速②", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,-721215457) gg.sleep(700) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","0",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x220},"冻结","154719.0",16,"x") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x224},"冻结","107166.0",16,"y") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x228},"冻结","308.0",16,"z") gg.sleep(1700) --[1].地址:7A22614E68 数值:506149161 so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,-721215457) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-721215457) gg.sleep(700) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x220} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x224} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","167838216",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","300",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","9999",16,"8") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","3800",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","999999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","0",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","0",16,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","9999",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0.0008",16,"防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","999999",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","0",16,"60000防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x448},"冻结","54148",4,"卡脚16896") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","999999",16,"1") -- LSQ_chain({'libue4.so:bss','cb'},{0x558CF0,0x30,0x4B8,0x1058},"冻结","8",4,"8 趴下开火") OP=gg.prompt({'自改加速60帧0.003-0.004 90帧0.003-0.0033 120帧0.0015-0.002'},{[1]='0.0030'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"li bUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x364} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("加速一定要趴下跑,否则拉回") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="默认趴下高跳", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CB8},"修改","110",16,"88") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","999",16,"0.05") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x758},"冻结","0.1",16,"减速") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x758},"冻结","75",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CF8},"修改","34",16,"50") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE4},"冻结","0.9",16,"慢动作") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.0001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1990},"冻结","0.001",16,"晚年名下加速64位国体秒趴") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x21C},"修改","6500",16,"高跳") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"修改","9",16,"重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1168},"修改","4",16,"空中移速") string.toMusic('一定要开启陀螺仪,摇晃一下再跳') -- local thread1 = luajava.startThread(kk21) -- floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="自改趴下高跳", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then OP=gg.prompt({'高跳自改2500-7000'},{[1]='5000'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x21C} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end OA=gg.prompt({'防摔自改4~8推荐改六'},{[1]='7'},{[1]='number'}) if OA == nil or OA[1] == '' or OA[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x214} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OA[1], freeze = true}}) end OF=gg.prompt({'空中(趴下)移速自改3~5推荐改4'},{[1]='4'},{[1]='number'}) if OF == nil or OF[1] == '' or OF[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x1168} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OF[1], freeze = true}}) end --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2C00},"修改","95",16,"88") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CF8},"修改","34",16,"50") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE4},"冻结","0.9",16,"慢动作") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.0001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1990},"冻结","0.001",16,"晚年名下加速64位国体秒趴") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x21C},"修改","4500",16,"高跳") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"修改","6",16,"重力") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1168},"修改","4",16,"空中移速") string.toMusic('开启成功') -- local thread1 = luajava.startThread(kk21) -- floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="趴下开火开镜🔥", textColor= "#FFFF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1058},"冻结","8",4,"8 趴下开火") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x1058} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="一键关闭所有加速", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","45",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","8",16,"8") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","8192",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","0.05",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","240",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","13860",4,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","1",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0",16,"防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","2048",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","60000",16,"60000防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x448},"冻结","16896",4,"卡脚16896") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.1",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.1",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1990},"冻结","0.1",16,"晚年名下加速64位国体秒趴") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x21C},"修改","443",16,"高跳") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"修改","1",16,"重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1168},"修改","1",16,"空中移速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x364},"修改","0.1",16,"移速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x288},"修改","0",16,"0防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x270},"修改","1",16,"落地") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CF8},"修改","50",16,"50") so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,506149161) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) gg.clearList() Unfreeze() end end }, }, } }) end }) floatingWindowManager:newWindow('定点飞天⁶⁴', { onCreate = function(floatingWindow) --string.toMusic("默认60帧加速,帧率越高请调加速低一点,需要根据自己的设备调加速,不然拉回") floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="过标记[开关]", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="50dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then --过标记① 原值:1033081774 so=gg.getRangesList('libgcloud.so')[1].start py=0x487128 setvalue(so+py,4,-698416192) --过标记②原值:16843522 so=gg.getRangesList('libgcloud.so')[1].start py=0x487CC4 setvalue(so+py,4,-698416192) gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("开启成功") else --过标记① 原值:1033081774 so=gg.getRangesList('libgcloud.so')[1].start py=0x487128 setvalue(so+py,4,1033081774) --过标记②原值:16843522 so=gg.getRangesList('libgcloud.so')[1].start py=0x487CC4 setvalue(so+py,4,16843522) string.toMusic("关闭成功,请等待10到15秒恢复结算,然后返回大厅") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="七图定点飞天", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) gg.sleep(700) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","0",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x220},"冻结","129334.0",16,"x") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x224},"冻结","129469.0",16,"y") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x228},"冻结","7076.0",16,"z") gg.sleep(1700) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-721215457) gg.sleep(700) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x220} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x224} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","167838216",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x758},"冻结","60",16,"减速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x760},"冻结","1.1",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x770},"冻结","0.0001",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","0",16,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","4000",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","9999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","0",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","0",16,"定") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x298},"修改","9999",16,"惯性") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","9999",16,"8") -- LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x75C},"冻结","0.9",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","150",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","99999",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","99999",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","0",16,"60000防拉") -- LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","999999",16,"1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0.0008",16,"防拉") OP=gg.prompt({'自改1-3 根据自己的帧率来调'},{[1]='2.5'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x1168} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end OA=gg.prompt({'0.7--1.6'},{[1]='0.7'},{[1]='number'}) if OA == nil or OA[1] == '' or OA[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x20,0x400,0x75C} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OA[1], freeze = true}}) end gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("开启成功") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="五图定点飞天", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) gg.sleep(700) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","0",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x220},"冻结","125499",16,"x") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x224},"冻结","142748",16,"y") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x208,0x228},"冻结","3739",16,"z") gg.sleep(1700) --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-721215457) gg.sleep(700) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x220} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x224} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x208,0x228} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xE8},"修改","167838216",4,"灵魂") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x758},"冻结","60",16,"减速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x760},"冻结","1.1",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x770},"冻结","0.0001",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","0",16,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","4000",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","9999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","0",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","0",16,"定") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x298},"修改","9999",16,"惯性") --LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x250},"修改","9999",16,"8") -- LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x75C},"冻结","0.9",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","150",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","99999",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0xe4},"修改","99999",16,"防拉原1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x450,0x4C0,0x200},"修改","0",16,"60000防拉") -- LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","999999",16,"1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","0.0008",16,"防拉") OP=gg.prompt({'自改1-3 根据自己的帧率来调'},{[1]='2.5'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x1168} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end OA=gg.prompt({'0.7--1.6'},{[1]='0.7'},{[1]='number'}) if OA == nil or OA[1] == '' or OA[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x20,0x400,0x75C} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OA[1], freeze = true}}) end gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) string.toMusic("开启成功") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="趴下上升", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then local thread1 = luajava.startThread(kk91) floatingWindow:setCache(cacheName, thread1) else local thread1 = luajava.startThread(kkazhhh) floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="左右探头判断循环", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then local thread1 = luajava.startThread(kk111191) floatingWindow:setCache(cacheName, thread1) else local thread1 = luajava.startThread(kkazhhh) floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="关闭循环", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then local thread1 = luajava.startThread(kkazhhh) floatingWindow:setCache(cacheName, thread1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="降落后开启加速", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","1",16,"1定") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","300",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","3800",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","9999",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","1",16,"1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","1",16,"防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CF8},"修改","34",16,"50") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1990},"冻结","0.001",16,"晚年名下加速64位国体秒趴") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","0.0001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","0.001",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x21C},"冻结","15000",16,"高跳") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"冻结","27",16,"重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1168},"冻结","4",16,"空中移速") local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x194} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, freeze = false}}) so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,-721215457) OP=gg.prompt({'自改加速60帧0.003-0.0035 90帧0.002-0.003 120帧0.0015-0.002'},{[1]='0.0035'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x558CF0,0x30,0x4B8,0x518,0x364} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) end string.toMusic("趴着跑") gg.setConfig("冻结间隔", 0) gg.setConfig("快速冻结", 1) end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="一键关闭定点飞天", textColor= "#00FF00",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="220dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x758},"冻结","1",16,"减速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x760},"冻结","1",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x770},"冻结","1",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x2b8},"冻结","13860",4,"13860") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x268},"修改","8192",16,"8192") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x28C},"修改","0.05",16,"0.05") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x610},"修改","240",16,"240") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","1",16,"定") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x298},"修改","1",16,"惯性") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x20,0x400,0x75C},"冻结","1",16,"变速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x218},"修改","45",16,"上下坡防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x27C},"冻结","2048",16,"2048防拉") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x2CF8},"修改","50",16,"50") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1990},"冻结","1",16,"晚年名下加速64位国体秒趴") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x68},"冻结","1",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x64},"冻结","1",16,"趴下快起") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x21C},"冻结","443",16,"高跳") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x214},"冻结","1",16,"重力") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x1168},"冻结","1",16,"空中移速") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0xF0,0xE4},"冻结","1",16,"1") LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x70},"修改","1",16,"防拉") so=gg.getRangesList('libUE4.so')[1].start--冻结加速 py=0x6345808 setvalue(so+py,4,506149161)--506149161 --[2].地址:7A29039AEC 数值:-117270918 so=gg.getRangesList('libUE4.so')[1].start--锁地皮 py=0xCAC92C4 setvalue(so+py,4,-117270918) gg.clearList() Unfreeze() end end }, }, } }) end }) floatingWindowManager:newWindow('定点控制⁶⁴', { --floatingWindowManager:newWindow('定飞', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = '450dp', layout_height = '50dp', background="", { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = '3500dp', layout_height = '50dp', { Button, text = '快上', onClick = E3 }, { Button, text = '上', onClick = E8 }, { Button, text = '定', onClick = E5 }, { Button, text = '下', onClick = E4 }, { Button, text = '快下', onClick = E2 }, } }) end }) function E2() LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","-1500",16,"定") end function E3() LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","1900",16,"定") gg.sleep(1500) LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","-1",16,"定") end function E8() LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","150",16,"定") end function E4() LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","-250",16,"定") end function E5() LSQ_Chain({'libUE4.so:bss','Cb'},{0x558CF0,0x30,0x4B8,0x518,0x194},"冻结","0",16,"定") end -- }, --}, -- } -- }) -- end --}) floatingWindowManager:newWindow('音乐区', { onCreate = function(floatingWindow) --string.toMusic("默认60帧加速,帧率越高请调加速低一点,需要根据自己的设备调加速,不然拉回") floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="暂停音乐", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("stop") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="心做DJ", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("http://music.163.com/song/media/outer/url?id=2005190306.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="海阔天空", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("http://music.163.com/song/media/outer/url?id=1357374736.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="执迷不悟", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/746d85621e7281c17cc7c401f7af3854.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="背上了行囊", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/918c93e4b7edc27016ad1b0eb99703c6.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="曲婉婷进行曲", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/4e44db3a4a29b490548bc5d08ae9873b.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="春娇与志明", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/7c6b9ed6c375081d844da7615de9fc27.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="我们的歌声里", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/6c4967bb2d8c13dc7294ee164fe4b076.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="下坠", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/f8ca9fcc66d29ffaa4cc010c47d2e796.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="红色高跟鞋", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/6b7fd5ae30e4f65712f271179f36ef45.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="最好的安排", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/5bdf94e0e3809a4a234ba56b21a7f0b3.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="把回忆拼好给你", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/fb13294ac039ee8ec1492c0a98415dc3.mp3") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp',--间距 text="武家坡2021", textColor= "#1E90FF",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="200dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.playMusic("https://pan.jl8.top/down.php/e00713a2c228aa7985f4a9f47f8d0cd7.mp3") end end }, }, } }) end }) floatingWindowManager:run() --------------------------------------------- --------------------------------------------- --------------------------------------------- --------------------------------------------- --------------------------------------------- ---------------------------------------------> end end end if km_key == nil then else if km_key ~= "" then if e == true then v7GJ4ScWgBRpU4s(km_key) end end end hak = gg.prompt({"输入卡密\n输入1解绑卡密" .. "\n公告:" .. notice .. "\n脚本启动次数:" .. number_of, "是否自动登入","退出登录"}, {km_key, e,false}, {'text', 'checkbox',"checkbox"}) if hak == nil then elseif hak[3] == true then while (true) do os.exit(print("您取消了输入卡密")) end elseif hak[2] == true then io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'w+'):write("2") elseif hak[2] == false then io.open(AMI_YDO .. '/e'.. xxxxxxx_33732 ..'.log', 'w+'):write("1") end if hak == nil then gg.setVisible(false) xxxxxxxx = nil elseif hak[1] == "1" then G_B = gg.prompt({"输入要解绑的卡密"}, {}, {"text"}) if G_B[1] == "" then gg.alert("空,请填写卡密") else KM_G = PMmMsDqrHUN4n6k(KM_G(G_B[1],imei)) gg.alert(KM_G.msg) end elseif hak[1] == "" then gg.alert("空,请填写卡密") else v7GJ4ScWgBRpU4s(hak[1]) end end K6Zu25j7sxoE2aX() end while (true) do if gg.isVisible(true) then gg.setVisible(false) RcxfZj9wDvTSClB() else if xxxxxxxx == 999 then gg.setVisible(true) else end end end