--[[ -- 需要选择的进程集合 local pkgs = {'com.tencent.igce'} local pkgs2 = table.value_to_key(pkgs) repeat local selPkg = gg.getTargetPackage() -- 当前选择的进程包名 local success = pkgs2[selPkg] if not success then -- 表示当前选择的进程并不是想要指定的进程 success = (function() local runPaks = app.runList() -- 获取当前运行的所有进程包名 local runPaks2 = table.value_to_key(runPaks) -- 遍历需要选择的进程集合,看看其中的进程有没有在运行 for i, pkg in pairs(pkgs) do if runPaks2[pkg] then -- 如果判断成立则说明在运行 gg.setProcess(pkg) -- 设置当前选择的进程 return true end end -- 如果执行到遍历完成,则说明没有运行 local apps = app.getInstalledPackages(0) -- 获取已安装的所有普通app local apps2 = table.value_to_key(apps) -- 遍历需要选择的进程集合,看看其中的进程有没有安装 for i, pkg in pairs(pkgs) do if apps2[pkg] then -- 如果判断成立则说明该进程安装了 local appName = app.getName(pkg) if appName and gg.alert('请先运行>> ' .. appName .. ' <<', '启动', '取消') == 1 then app.start(pkg) -- 启动该进程 gg.sleep(1000) gg.alert('请在选择"' .. appName .. '"进程后重新"开启辅助"') gg.setProcessX() -- 弹出选择进程窗口,会重新收集正在运行的进程 end return os.exit() -- 退出脚本,让用户重新开启辅助,不然没办法自动选择,因为此时修改器还没有收集新的的进程 end end -- 如果执行到遍历完成,则说明没有运行 gg.alert('请先安装并且运行游戏再执行脚本!') return os.exit() end)() end until success --]] -- 中断线程 local function interruptThread(thread) if thread then pcall(function() thread:interrupt() end) end end -- 获取异步线程回调 local function getASyncThreadCallbak(func) return function() luajava.startThread(function() return pcall(func) end) end end -- 工厂方式创建复用 GradientDrawable layout local function newGradientDrawableLayout(layout) local baseLayout = { GradientDrawable, cornerRadius = '15dp', color = 0x20000000 } return table.copy(baseLayout, layout) end -- 获取同步线程回调, 涉及gg类库的回调只能使用这种,否则可能不稳定 local task local function getSyncThreadCallbak(func) return function() if task then gg.toast('正在运行其它任务,再稍后!') return end luajava.startThread(function() task = true pcall(func) task = nil end) end end -- 获取同步线程回调并执行 local function callSyncThreadCallbak(func) return getSyncThreadCallbak(func)() end -- 通过功能名称找 function 并获取同步线程回调 local function findFunctionByName(name) local func = _ENV[name] if not isFunction(func) then gg.alert(string.format('不存在 %q 功能', name)) return nil end return getSyncThreadCallbak(func) end -- 按钮布局 local function newButtonLayout(name) if not isString(name) then return end local layout = { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '2dp', text = name, textSize = '16sp', onClick = findFunctionByName(name) } return layout end -- 开关布局 local function newSwitchLayout(openName, closeName) if not isString(openName) then return end local layout = { Switch, layout_width = 'match_parent', text = openName, onCheckedChange = function(CompoundButton, state) local func local cacheName = '多线程' if state then -- 设置开关文本为“关闭”的文本 if isString(closeName) then CompoundButton:setText(closeName) end -- 找“打开”的功能函数 func = findFunctionByName(openName) else -- 设置开关文本为“打开”的文本 CompoundButton:setText(openName) if isString(closeName) then -- 找“关闭”的功能函数 func = findFunctionByName(closeName) end end if isFunction(func) then -- 通过 findFunctionByName 获取的函数已经是被多线程包裹的,所以直接执行就可以了 func() end end } return layout end --多选布局 local function newCheckBoxLayout(openName, closeName) if not isString(openName) then return end local layout = { CheckBox, layout_width = 'match_parent', text = openName, onCheckedChange = function(CompoundButton, state) local func local cacheName = '多线程' if state then -- 设置开关文本为“关闭”的文本 if isString(closeName) then CompoundButton:setText(closeName) end -- 找“打开”的功能函数 func = findFunctionByName(openName) else -- 设置开关文本为“打开”的文本 CompoundButton:setText(openName) if isString(closeName) then -- 找“关闭”的功能函数 func = findFunctionByName(closeName) end end if isFunction(func) then -- 通过 findFunctionByName 获取的函数已经是被多线程包裹的,所以直接执行就可以了 func() end end } return layout end function newcheck(radio) firadio={LinearLayout,layout_width = 'match_parent',layout_height = "match_parent",orientation="vertical"} if type(radio[1])=="string" or type(radio[1])=="number" then firadio[#firadio+1]={TextView,text=radio[1],textColor="#ffffff",} end radios={LinearLayout,orientation="horizontal",gravity="center",background="#00C92E37",layout_width = 'match_parent',} for i=2,#radio do local name = radio[i][1] local func1 = radio[i][2] local func2 = radio[i][3] local nid = radio[i][4] if not name then name = "未设置" end nid = name..guid() local func = 开关(nid,func1,func2) radios[#radios+1]={CheckBox, text=radio[i][1], textSize="9sp", textColor="#ffffff", onClick=function() luajava.newThread(function() pcall(func) end):start() end, } end firadio[#firadio+1]=radios return luajava.loadlayout(firadio) end function newradio(radio) firadio={LinearLayout, layout_width = 'match_parent', layout_height = "match_parent", orientation="horizontal" } if type(radio[1])=="string" or type(radio[1])=="number" then --firadio[#firadio+1]={TextView,text=radio[1],textColor="#ffffff",} end radios={RadioGroup,orientation="horizontal",gravity="center",background="#00C92E37",layout_width = 'match_parent',} for i=2,#radio do radios[#radios+1]={ RadioButton, text=radio[i][1], textColor="#ffffff", textSize="11sp", onClick=function() luajava.newThread(function() pcall(radio[i][2]) end):start() end, } end firadio[#firadio+1]=radios return luajava.loadlayout(firadio) end function 开关(name,func1,func2) if func1 == nil then func1 = "" end if func2 == nil then func2 = "" end if type(func1) == "function" then return function() namers = _ENV[name] if namers ~= "开" then _ENV[name] = "开" func1() else _ENV[name] = "关" func2() end end end end function guid() seed = { 'e','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f' } tb = {} for i = 1,32 do table.insert(tb,seed[math.random(1,16)]) end sid = table.concat(tb) return string.format('%s%s%s%s%s', string.sub(sid,1,8), string.sub(sid,10,12), string.sub(sid,21,22)) ..string.format('%s%s%s%s%s', string.sub(sid,1,6), string.sub(sid,21,25) ) end local function getASyncThreadCallbak(func) return function() luajava.startThread(function() return pcall(func) end) end end -- 应用在101行 local task local function getSyncThreadCallbak(func) return function() if task then gg.toast('正在运行其它任务,再稍后!') return end luajava.startThread(function() task=true pcall(func) task=nil end) end 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 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 local Offset_Yx = function(Tab,KT) gg.setVisible(false) gg.clearResults() gg.setRanges(Tab["内存"]) gg.searchNumber(Tab["主特征码"][1], Tab["主特征码"][2], false, gg.SIGN_EQUAL, 0, -1, 0) local results = gg.getResults(gg.getResultsCount()) if not results then return gg.toast("未搜到结果") end gg.clearResults() local Ton = tonumber local Tsr = tonumber if KT then Tsr = tostring end for index, value in pairs(Tab["副特征码"]) do for i = 1, #results do results[i].address = results[i].address + value[3] results[i].flags = value[2] end local _ofResults, Final = gg.getValues(results), {} for i = 1, #_ofResults do if type(value[1]) == "table" then for ind, key in pairs(value[1]) do local __npt = string.find(key, "~") local Min, Max, Length if __npt then Min = Ton(string.sub(key, 0, (__npt-1))) Max = Ton(string.sub(key, (__npt+1), -1)) if _ofResults[i].value >= Min and _ofResults[i].value <= Max then Length = #Final + 1 Final[Length] = {} Final[Length].address = _ofResults[i].address - value[3] Final[Length].flags = value[2] end elseif Tsr(_ofResults[i].value) == Tsr(key) then Length = #Final + 1 Final[Length] = {} Final[Length].address = _ofResults[i].address - value[3] Final[Length].flags = value[2] end end else local __npt = string.find(value[1], "~") local Min, Max, Length if __npt then Min = Ton(string.sub(value[1], 0, (__npt-1))) Max = Ton(string.sub(value[1], (__npt+1), -1)) if _ofResults[i].value >= Min and _ofResults[i].value <= Max then Length = #Final + 1 Final[Length] = {} Final[Length].address = _ofResults[i].address - value[3] Final[Length].flags = value[2] end elseif Tsr(_ofResults[i].value) == Tsr(value[1]) then Length = #Final + 1 Final[Length] = {} Final[Length].address = _ofResults[i].address - value[3] Final[Length].flags = value[2] end end end if #Final == 0 then return gg.toast("未偏移到结果") end results = gg.getValues(Final) end for index, value in pairs(Tab["修改"]) do local EditAll = {} for i = 1, #results do EditAll[i] = {} EditAll[i].address = results[i].address + value[3] EditAll[i].flags = value[2] EditAll[i].value = value[1] if value[4] or Tab["是否全部冻结"] then EditAll[i].freeze = true end end if value[4] or Tab["是否全部冻结"] then gg.addListItems(EditAll) else gg.setValues(EditAll) end end return gg.toast(Tab["功能名字"] .. "开启成功 共修改" .. (#results * #Tab["修改"]) .."条数据") 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(123456) 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--动态 --string.toMusic("欢迎使用妍国体一体脚本") gg.setConfig("隐藏辅助", 23) gg.setConfig("运行守护", 3) gg.setConfig("冻结间隔", 0) gg.setConfig("旁路模式", 1) local floatingWindowManager = require('floatingWindowManager') floatingWindowManager:init() floatingWindowManager:newWindow(('QC国体'):format(floatingWindowManager.version), { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_margin = '10dp', layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '2dp', text = '[选进程]', textSize = '16sp', onClick = function() string.toMusic('选进程') gg.setProcessX() end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '2dp', text = '[体验服]', textSize = '16sp', onClick = function() string.toMusic('体验服') floatingWindowManager:start('QC[体验服]') end }, } }) end, onDestroy = function() end }) floatingWindowManager:newWindow('QC[体验服]', { 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', { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '[静态区]', textSize = '16sp', onClick = function() string.toMusic('静态区') floatingWindowManager:start('QC[静态]') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '[动态区]', textSize = '16sp', onClick = function() string.toMusic('动态区') floatingWindowManager:start('QC[动态]') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '[加速区]', textSize = '16sp', onClick = function() string.toMusic('加速区') floatingWindowManager:start('QC[加速]') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '[飞天区]', textSize = '16sp', onClick = function() string.toMusic('飞天区') floatingWindowManager:start('QC[飞天]') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '[路飞区]', textSize = '16sp', onClick = function() string.toMusic('路飞区') floatingWindowManager:start('QC[路飞]') end }, { Button, background = { GradientDrawable, cornerRadius='10dp', color='0x80b5dbff', }, layout_width = 'match_parent', layout_margin = '2dp', text = '[美化区]', textSize = '16sp', onClick = function() string.toMusic('美化区') floatingWindowManager:start('QC[美化]') end }, } }) end }) floatingWindowManager:newWindow('QC[静态]', { 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= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("88.50576019287F;87.27782440186F;-100.91194152832F;1F::13", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("88.50576019287F;87.27782440186F;1F", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(6) gg.editAll("1;1;5000;1;1;5000", gg.TYPE_FLOAT) gg.clearResults() gg.toast("人物天线开启成功") string.toMusic("人物天线开启成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="盒子天线", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then gg.clearResults() gg.setRanges(gg.REGION_VIDEO) gg.searchNumber("14.79005432129",gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.searchNumber("14.79005432129",gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0,-1) gg.getResults(30) gg.editAll("99999",gg.TYPE_FLOAT) gg.toast("盒子天线开启成功") string.toMusic("盒子天线开启成功") else gg.toast("不可关闭") 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then qmnb = { {["memory"] = 32}, {["name"] = "头部范围"}, {["value"] = 9.201618194580078, ["type"] = 16}, {["lv"] = 25.0, ["offset"] = 28, ["type"] = 16}, {["lv"] = 30.5, ["offset"] = 32, ["type"] = 16}, } qmxg = { {["value"] = 280, ["offset"] = 28, ["type"] = 16}, {["value"] = 280, ["offset"] = 32, ["type"] = 16}, } xqmnb(qmnb) gg.toast("头部范围开启成功") string.toMusic("头部范围开启成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="加速范围", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程4' if state then gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('403003',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('403003',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('1405623',gg.TYPE_DWORD)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.toast("加速范围开启成功") string.toMusic("加速范围开启成功") else gg.toast("不可关闭") 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程5' if state then gg.setRanges(16384) gg.searchNumber('-5.92766612e27F;-1.1250887e28F;-1.23939076e21F;-1.38573889e28F;-1.24646674e28F;-1.2464632e28F', 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(500) gg.editAll("0", gg.TYPE_FLOAT) gg.toast("蓝色血雾开启成功") string.toMusic("蓝色血雾开启成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="开枪地震", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程6' if state then gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('0.20000000298~0.30000001192F; 53.0F; 30.0F; 1.0F::512',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('0.20000000298~0.30000001192F;53.0F; 30.0F; 1.0F',gg.TYPE_FLOAT,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('25',gg.TYPE_FLOAT) gg.toast("开枪地震开启成功") string.toMusic("开枪地震开启成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, }, } }) end }) floatingWindowManager:newWindow('QC[动态]', { 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= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 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=0x9A3A934 setvalue(so+py,16,0) gg.toast("防闪开启成功") string.toMusic("防闪开启成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="基础一套", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then Name = "无后" gg.setRanges(16384) local dataType = 16 local search = {{-1.1368873507541788E-13, 0},{-2.78698202667584E28, -8},} local modify = {{0, -8},} SearchWrite(search,modify,dataType,Name) gg.toast("午后已开启") Name = "防抖" gg.setRanges(16384) local dataType = 4 local tb1 = {{-405405696, 0},{-499122175, 4},{-481296380, 8},} local tb2 = {{0, 0},} SearchWrite(tb1, tb2, dataType) gg.setRanges(16384) local dataType = 16 local tb1 = {{-1.114450155758339E28, 0},{-2.8111605430681328E28, -12},{-1476732160.0, -8},{-3.7444097189855772E28, -4},{128.0, 4},} local tb2 = {{0, 0},} SearchWrite(tb1, tb2, dataType) gg.toast("防抖已开启") Name = "聚点" gg.setRanges(16384) local dataType = 16 local tb1 = {{-1.114450155758339E28, 0},{-1.238242388799446E28, -8},{-1.423933276633091E28, -4},{-1.8331474059341755E27, 4},{-7.160887698833495E24, 8},} local tb2 = {{90, 0},} SearchWrite(tb1, tb2, dataType) gg.toast("聚点已开启") gg.toast("基础一套开启成功") string.toMusic("基础一套开启成功") else gg.toast("不可关闭") 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x41528E8 setvalue(so+py,16,0)--除草 so=gg.getRangesList('libUE4.so')[1].start py=0x4954AF8 setvalue(so+py,16,0)--除雾 gg.toast("子弹射速开启成功") string.toMusic("子弹射速开启成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="击杀特效", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程4' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x2F009EC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x2F009DC setvalue(so+py,16,0) gg.toast("击杀特效开启成功") string.toMusic("击杀特效开启成功") else gg.toast("不可关闭") 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程5' if state then local r = gg.prompt({'90\n120\n144'}, {''}, {'text'}) if r then local t = {"libUE4.so:bss", "Cb"} local tt = {0x344AF0, 0x10} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 16, value = r[1], freeze = true}}) gg.toast("自改锁帧修改成功") string.toMusic("自改锁帧修改成功") else gg.toast("不可关闭") string.toMusic("不可关闭") end end end }, { Switch, layout_marginLeft = '5dp',--间距 text="优化延迟", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程6' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x5CB8D2C setvalue(so+py,16,0) gg.toast("优化延迟开启成功") string.toMusic("优化延迟开启成功") else gg.toast("不可关闭") 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程7' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x57C4EF4 setvalue(so+py,16,240) gg.toast("平板视角开启成功") string.toMusic("平板视角开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x57C4EF4 setvalue(so+py,16,360) gg.toast("平板视角关闭成功") string.toMusic("平板视角关闭成功") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="自改视角", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程8' if state then OP=gg.prompt({'建议改[400]\n恢复改[220]'},{[1]='220'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x3126C4,0x2F0,0x1324,0x260} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = OP[1]}}) gg.toast("自改视角修改成功") string.toMusic("自改视角修改成功") end 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程9' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x3298050 setvalue(so+py,16,0) gg.toast("子弹射速开启成功") string.toMusic("子弹射速开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x3298050 setvalue(so+py,16,-5.57224133e27) gg.toast("子弹射速关闭成功") string.toMusic("子弹射速开启成功") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="杀猪子弹", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程10' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x289AE54 setvalue(so+py,16,-1.9813085e28) gg.toast("杀猪子弹开启成功") string.toMusic("杀猪子弹开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x289AE54 setvalue(so+py,16,-1.98130876e28) gg.toast("杀猪子弹关闭成功") 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="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程11' if state then gg.toast("暗色地图开启成功") string.toMusic("暗色地图开启成功") else gg.toast("暗色地图关闭成功") string.toMusic("暗色地图关闭成功") end end }, { Switch, layout_marginLeft = '5dp',--间距 text="沙漠地图", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程12' if state then gg.toast("沙漠地图开启成功") string.toMusic("沙漠地图开启成功") else gg.toast("沙漠地图关闭成功") string.toMusic("沙漠地图关闭成功") end end }, }, } }) end }) floatingWindowManager:newWindow('QC[加速]', { 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'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp', text="坡度防拉", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程13' if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 150}})--爬墙 else gg.toast("不可关闭") string.toMusic("不可关闭") end end }, { Switch, layout_marginLeft = '5dp', text="开枪防拉", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程14' if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x31F3AC, 0x480, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 4, value = 100000}}) gg.toast("开枪防拉开启成功") string.toMusic("开枪防拉开启成功") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x31F3AC, 0x480, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 4, value = 100000}}) gg.toast("开枪防拉关闭成功") string.toMusic("开枪防拉关闭成功") end end }, }, {LinearLayout,--同排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp', text="加速V1", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程1' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10802267e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.25999999046) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,22) gg.toast("加速V1开启成功") string.toMusic("加速V1开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10801854e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V1关闭成功") string.toMusic("加速V1关闭成功") end end }, { Switch, layout_marginLeft = '5dp', text="加速V2", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程2' if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x31F3AC, 0x18, 0x308, 0x544} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.0700000003}}) so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,5.10802267e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.27000001073) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,24) gg.toast("加速V2开启成功") string.toMusic("加速V2开启成功") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x31F3AC, 0x18, 0x308, 0x544} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.00050000002}}) so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10801854e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V2关闭成功") string.toMusic("加速V2关闭成功") end end }, }, {LinearLayout,--同排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp', text="加速V3", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程3' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,8.67744107e-28) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,5.88545355e-44) local t = {"libUE4.so:bss", "Cb"} local tt = {0x31F3AC, 0x18, 0x308, 0x544} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.05}}) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.30000001192) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,22.0) gg.toast("加速V3开启成功") string.toMusic("加速V3开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,-5.84305429e27) local t = {"libUE4.so:bss", "Cb"} local tt = {0x31F3AC, 0x18, 0x308, 0x544} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.00050000002}}) so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V3关闭成功") string.toMusic("加速V3关闭成功") end end }, { Switch, layout_marginLeft = '5dp', text="加速V4", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程4' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,8.67744107e-28) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,5.88545355e-44) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.30000001192) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,22) gg.toast("加速V4开启成功") string.toMusic("加速V4开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,-5.84305429e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V4关闭成功") string.toMusic("加速V4关闭成功") end end }, }, {LinearLayout,--同排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp', text="加速V5", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程5' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,8.67744107e-28) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,5.88545355e-44) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.30000001192) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,22) gg.toast("加速V5开启成功") string.toMusic("加速V5开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,-5.84305429e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V5关闭成功") string.toMusic("加速V5关闭成功") end end }, { Switch, layout_marginLeft = '5dp', text="加速V6", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程6' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.30000001192) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,21.5) gg.toast("加速V6开启成功") string.toMusic("加速V6开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10801854e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V6关闭成功") string.toMusic("加速V6关闭成功") end end }, }, {LinearLayout,--同排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '0dp', text="加速V7", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 25 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程7' if state then so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.30000001192) qmnb = { {["memory"] = 32}, {["name"] = "Fxs"}, {["value"] = 750.0, ["type"] = 16}, {["lv"] = 9.999999747378752E-5, ["offset"] = 56, ["type"] = 16}, {["lv"] = 20.0, ["offset"] = 60, ["type"] = 16}, {["lv"] = 5.000000237487257E-4, ["offset"] = 64, ["type"] = 16}, {["lv"] = 0.4000000059604645, ["offset"] = 68, ["type"] = 16}, } qmxg = { {["value"] = 0.05, ["offset"] = 64, ["type"] = 16}, } xqmnb(qmnb) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,21.5) gg.toast("加速V7开启成功") string.toMusic("加速V7开启成功") else so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,-5.84305429e27) qmnb = { {["memory"] = 32}, {["name"] = "Fxs"}, {["value"] = 750.0, ["type"] = 16}, {["lv"] = 9.999999747378752E-5, ["offset"] = 56, ["type"] = 16}, {["lv"] = 20.0, ["offset"] = 60, ["type"] = 16}, {["lv"] = 0.4000000059604645, ["offset"] = 68, ["type"] = 16}, } qmxg = { {["value"] = 0.0005, ["offset"] = 64, ["type"] = 16}, } xqmnb(qmnb) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("加速V7关闭成功") string.toMusic("加速V7关闭成功") end end }, }, } }) end }) floatingWindowManager:newWindow('QC[飞天]', { 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', { TextView, layout_marginLeft = '0dp',--间距 text="飞天", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="25dp",--长度 layout_width="match_parent",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, }, newradio({nil, {"上", function() gg.toast("飞天上开启成功") string.toMusic("飞天上开启成功") end, },{"[定]", function() gg.toast("飞天[定]开启成功") string.toMusic("飞天[定]开启成功") end },{"下", function() gg.toast("飞天下开启成功") string.toMusic("飞天下开启成功") end }}), {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '5dp',--间距 text="飞速", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="35dp",--长度 layout_width="80dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程13' if state then gg.toast("飞速开启成功") string.toMusic("飞速开启成功") else gg.toast("飞速关闭成功") string.toMusic("飞速关闭成功") end end }, { Switch, layout_marginLeft = '5dp', text="定点", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 38 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程14' if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10802267e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,0.28000000119) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,22) gg.toast("定点飞天开启成功") string.toMusic("定点飞天开启成功") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 443}}) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10801854e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5816318 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("定点飞天关闭成功") string.toMusic("定点飞天关闭成功") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '5dp',--间距 text="高跳", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="35dp",--长度 layout_width="80dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程15' if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x348328, 0xA8, 0x1B0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -100}}) gg.clearResults() gg.setRanges(32) gg.searchNumber("4,525,216,907,414,147,695", 32, false, 536870912, 0, -1) gg.getResults(9999) gg.editAll("4,525,216,907,473,673,257", 32) so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10802267e27) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,5.88545355e-44) so=gg.getRangesList('libUE4.so')[1].start py=0x58243E4 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,22) gg.toast("高跳飞天开启成功") string.toMusic("高跳飞天开启成功") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x348328, 0xA8, 0x1B0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -980}}) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,473,673,257", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(9999) gg.editAll("4,525,216,907,414,147,695", gg.TYPE_QWORD) so=gg.getRangesList('libUE4.so')[1].start py=0x25E757C setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0x5723688 setvalue(so+py,16,-5.10801854e27) so=gg.getRangesList('libUE4.so')[1].start py=0x57F4CE4 setvalue(so+py,16,-5.84305429e27) so=gg.getRangesList('libUE4.so')[1].start py=0x58243E4 setvalue(so+py,16,-1.86389771e-20) so=gg.getRangesList('libUE4.so')[1].start py=0x5EBE37C setvalue(so+py,16,25.72529029846) gg.toast("高跳飞天关闭成功") string.toMusic("高跳飞天关闭成功") end end }, { Switch, layout_marginLeft = '5dp', text="自改", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 38 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程16' if state then local r = gg.prompt({'建议改-20到-100'}, {'-100'}, {'text'}) if r then local t = {"libUE4.so:bss", "Cb"} local tt = {0x348328, 0xA8, 0x1B0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = r[1]}}) gg.toast("自改高跳修改成功") string.toMusic("自改高跳修改成功") end else local t = {"libUE4.so:bss", "Cb"} local tt = {0x348328, 0xA8, 0x1B0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -980}}) gg.toast("自改高跳恢复成功") string.toMusic("自改高跳恢复成功") end end }, }, {LinearLayout,--同一排代码 padding = {'0dp', '0dp', '0dp', '0dp'}, gravity="center_vertical", layout_marginTop = '5dp',--间距 { Switch, layout_marginLeft = '5dp',--间距 text="出圈", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="35dp",--长度 layout_width="80dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程17' if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 3100}}) gg.toast("高跳出圈开启成功") string.toMusic("高跳出圈开启成功") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 443}}) gg.toast("高跳出圈关闭成功") string.toMusic("高跳出圈关闭成功") end end }, { Switch, layout_marginLeft = '5dp', text="自改", textColor= "#ddffffff", gravity="center", layout_height="35dp", layout_width="80dp", background= luajava.loadlayout { GradientDrawable, color = "#80000000", cornerRadius = 38 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程18' if state then local r = gg.prompt({'建议3100以内'}, {'3100'}, {'text'}) if r then local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = r[1]}}) gg.toast("自改出圈修改成功") string.toMusic("自改出圈修改成功") end else local t = {"libUE4.so:bss", "Cb"} local tt = {0x2C5F4, 0x0, 0x350, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 443}}) gg.toast("自改出圈恢复成功") string.toMusic("自改出圈恢复成功") end end }, } } }) end }) floatingWindowManager:newWindow('QC[路飞]', { 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', { TextView, layout_marginLeft = '0dp',--间距 text="探头路飞", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="25dp",--长度 layout_width="match_parent",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, }, newradio({nil, {"探头路飞[以后开发]", function() end }}), { TextView, layout_marginLeft = '0dp',--间距 text="站立路飞", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="25dp",--长度 layout_width="match_parent",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, }, newradio({nil, {"上", function() qmnb = { {["memory"] = 32}, {["name"] = "站立向上"}, {["value"] = 0.19047555327415466, ["type"] = 16}, {["lv"] = 25.46935272216797, ["offset"] = 20, ["type"] = 16}, } qmxg = { {["value"] = 120, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("站立路飞上开启成功") string.toMusic("站立路飞上开启成功") end, },{"前", function() qmnb = { {["memory"] = 32}, {["name"] = "站立向前"}, {["value"] = 5.821421146392822, ["type"] = 16}, {["lv"] = 25.46935272216797, ["offset"] = 28, ["type"] = 16}, } qmxg = { {["value"] = 150, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("站立路飞前开启成功") string.toMusic("站立路飞前开启成功") end },{"左", function() qmnb = { {["memory"] = 32}, {["name"] = "站立向左"}, {["value"] = -2.8338451385498047, ["type"] = 16}, {["lv"] = 25.46935272216797, ["offset"] = 24, ["type"] = 16}, } qmxg = { {["value"] = 150, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("站立路飞左开启成功") string.toMusic("站立路飞左开启成功") end },{"右", function() qmnb = { {["memory"] = 32}, {["name"] = "站立向右"}, {["value"] = -2.8338451385498047, ["type"] = 16}, {["lv"] = 25.46935272216797, ["offset"] = 24, ["type"] = 16}, } qmxg = { {["value"] = -130, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("站立路飞右开启成功") string.toMusic("站立路飞右开启成功") end }}), { TextView, layout_marginLeft = '0dp',--间距 text="蹲下路飞", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="25dp",--长度 layout_width="match_parent",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, }, newradio({nil, {"上", function() qmnb = { {["memory"] = 32}, {["name"] = "蹲下向上"}, {["value"] = 18.38787841796875, ["type"] = 16}, {["lv"] = 4.135903555803204E-25, ["offset"] = 24, ["type"] = 16}, } qmxg = { {["value"] = 150, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("蹲下路飞上开启成功") string.toMusic("蹲下路飞上开启成功") end, },{"左", function() qmnb = { {["memory"] = 32}, {["name"] = "蹲下向左"}, {["value"] = -3.4223251342773438, ["type"] = 16}, {["lv"] = 4.135903555803204E-25, ["offset"] = 16, ["type"] = 16}, } qmxg = { {["value"] = 250, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("蹲下路飞左开启成功") string.toMusic("蹲下路飞左开启成功") end },{"右", function() qmnb = { {["memory"] = 32}, {["name"] = "蹲下向右"}, C{["value"] = 13.27983283996582, ["type"] = 16}, {["lv"] = 0.007738590240478516, ["offset"] = 40, ["type"] = 16}, } qmxg = { {["value"] = 150, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) gg.toast("蹲下路飞右开启成功") string.toMusic("蹲下路飞右开启成功") end }}), } }) end }) floatingWindowManager:newWindow('QC[美化]', { 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', { TextView, layout_marginLeft = '0dp',--间距 text="人物美化", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="25dp",--长度 layout_width="match_parent",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, }, newradio({nil, {"白体", function() editData( { {["memory"] = gg.REGION_ANONYMOUS}, {["name"] = "颜色"}, {["value"] = 50331648, ["type"] = Q}, {["lv"] = 4688247212092686336,["offset"] =12, ["type"] = Q}, }, { {["value"] = 90,["offset"] =20, ["type"] = F,["freeze"] = true}, } ) gg.clearResults() editData( { {["memory"] = gg.REGION_ANONYMOUS}, {["name"] = "去阴影"}, {["value"] = 50331648, ["type"] = Q}, {["lv"] = 4620693217682128896,["offset"] =12, ["type"] = Q}, }, { {["value"] = 0,["offset"] =20, ["type"] = F,["freeze"] = true}, } ) gg.clearResults() end, },{"黄金风衣", function() gg.clearResults() gg.setRanges(32) gg.searchNumber("401993", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("401993", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(999) gg.editAll("1400779", gg.TYPE_DWORD) end }}), { TextView, layout_marginLeft = '0dp',--间距 text="吉利服", textColor= "#ddffffff",--文字颜色代码 gravity="center", layout_height="25dp",--长度 layout_width="match_parent",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#80000000",--背景颜色代码 cornerRadius = 38--背景圆角 }, }, newradio({nil, {"海岛", function() gg.clearResults() gg.setRanges(32) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("403989", gg.TYPE_DWORD) gg.clearResults() gg.toast("吉利服美化成功") string.toMusic("吉利服美化成功") end, },{"枯草", function() gg.clearResults() gg.setRanges(32) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("403990", gg.TYPE_DWORD) gg.clearResults() gg.toast("枯草吉利服美化成功") string.toMusic("枯草吉利服美化成功") end },{"沙漠", function() gg.clearResults() gg.setRanges(32) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("403187", gg.TYPE_DWORD) gg.clearResults() gg.toast("沙漠吉利服美化成功") string.toMusic("沙漠吉利服美化成功") end },{"雪地", function() gg.clearResults() gg.setRanges(32) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("403003", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("403989", gg.TYPE_DWORD) gg.clearResults() gg.toast("雪地吉利服美化成功") string.toMusic("雪地吉利服美化成功") end }}), } }) end }) floatingWindowManager:run()