--[[ 【开关】开【开关】 【公告】这里填你的公告【公告】 ]] gg.playVideo("https://cccimg.com/view.php/ac1c79a9fce261bf18c33e7b0ffd1508.mp4") toMusic("欢迎使用一心内置,目前测试版本暂时免费") function interruptThread(thread) if thread then pcall(function() thread:interrupt() end) end end draw.text('🇲一心稳定内置🇭', 26,650) draw.setColor('#FFEA2D1F') local floatingWindowManager = require('floatingWindowManager') floatingWindowManager:init() function interruptThread(thread) if thread then pcall(function() thread:interrupt() end) end end draw.text('🏀合作人浩哥,哭泣🏀一心qq2151407573', 26,600) draw.setColor('#FFEA2D1F') local floatingWindowManager = require('floatingWindowManager') floatingWindowManager:init() 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 -- 获取同步线程回调, 涉及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 = '5dp', 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 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 SignatureSearch(FirstCode,SecondCode,Get) gg.clearResults() gg.setRanges(FirstCode[6]) gg.setVisible(false) if FirstCode[1] then gg.searchNumber(FirstCode[1],FirstCode[5],false,gg.SIGN_EQUAL,FirstCode[3] or 0,FirstCode[4] or -1) end if FirstCode[2] then gg.searchAddress(FirstCode[2],-1,FirstCode[5],gg.SIGN_EQUAL,0,-1) end if gg.getResultsCount()>0 then local results1,results2,NewResults=gg.getResults(gg.getResultsCount()),gg.getResults(gg.getResultsCount()),{} gg.clearResults() if #SecondCode>0 then for i=1,#SecondCode do local Results={} if i%2==1 then for j,result in ipairs(results1) do Results[#Results+1]={} Results[#Results].address=result.address+SecondCode[i][2] Results[#Results].flags=SecondCode[i][3] end results2={} else for j,result in ipairs(results2) do Results[#Results+1]={} Results[#Results].address=result.address+SecondCode[i][2] Results[#Results].flags=SecondCode[i][3] end results1={} end Results=gg.getValues(Results) local value,code=nil,nil for k,result2 in ipairs(Results) do if result2.flags==16 or result2.flags==64 then value=tostring(result2.value):sub(1,6) code=tostring(SecondCode[i][1]):sub(1,6) else value=result2.value code=SecondCode[i][1] end if i%2==1 then if value==code then results2[#results2+1]=results1[k] end else if value==code then results1[#results1+1]=results2[k] end end end end end if #SecondCode%2==1 then NewResults=results2 else NewResults=results1 end local changeresults,keepresults,loadresults={},{},{} if #NewResults>0 then for i,result in ipairs(NewResults) do for j,conduct in ipairs(Get) do if conduct[1] then changeresults[#changeresults+1]={} changeresults[#changeresults].value=conduct[1] changeresults[#changeresults].address=result.address+conduct[2] changeresults[#changeresults].flags=conduct[3] else loadresults[#loadresults+1]={} loadresults[#loadresults].address=result.address+conduct[2] loadresults[#loadresults].flags=conduct[3] end if conduct[4] or conduct[5] then keepresults[#keepresults+1]={} if conduct[1] then keepresults[#keepresults].value=conduct[1] else keepresults[#keepresults].value=gg.getValues({[1]={address=result.address+conduct[2],flags=conduct[3]}})[1].value end keepresults[#keepresults].address=result.address+conduct[2] keepresults[#keepresults].flags=conduct[3] keepresults[#keepresults].freeze=conduct[5] keepresults[#keepresults].name=conduct[6] end end end gg.setValues(changeresults) gg.loadResults(loadresults) gg.addListItems(keepresults) else gg.toast("请勿在加载进度开启") end else gg.toast("请勿在加载进度开启") end end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber("747135368") 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 readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end function 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 DWORD=gg.TYPE_DWORD DOUBLE=gg.TYPE_DOUBLE FLOAT=gg.TYPE_FLOAT WORD=gg.TYPE_WORD BYTE=gg.TYPE_BYTE XOR=gg.TYPE_XOR QWORD=gg.TYPE_QWORD function nc_offset(addr,tablex,tt) for i,v in ipairs(tablex) do if v[4]==true then gg.addListItems({{address=addr+v[3],flags=v[2],value=v[1],freeze=v[4]}})else gg.setValues({{address=addr+v[3],flags=v[2],value=v[1]}}) end end gg.toast((tt or "").."开启成功") end function getso(So_name) return gg.getRangesList(So_name)[1].start end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function readPointer(Add,Item) for i=1,(#Item-1) do Add=BaAdd(Add+Item[i]) end return Add+Item[#Item] end function setvalue(add,value,falgs,dj) local WY={} WY[1]={} WY[1].address=add WY[1].value=value WY[1].flags=falgs if dj==true then WY[1].freeze=true gg.addListItems(WY) else gg.setValues(WY) end end function getnc(Name,nc) local t=gg.getRangesList(Name) for i, v in ipairs(t) do if v.state==nc then return v.start 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 gg.toast("\n共修改"..#data.."条数据") local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else gg.toast("\n开启失败", false) return false end else gg.toast("\n开启失败") return false end end --仿xs写法配置 DWORD = gg.TYPE_DWORD DOUBLE = gg.TYPE_DOUBLE FLOAT = gg.TYPE_FLOAT WORD = gg.TYPE_WORD BYTE = gg.TYPE_BYTE XOR = gg.TYPE_XOR QWORD = gg.TYPE_QWORD -- 【【 核心代码,不懂勿动 】】 -- JF Script编辑器 ------------------------------------------------------------------------------------------------------------- function nc_offset(addr, tablex, tt) for i, v in ipairs(tablex) do if v[4] == true then gg.addListItems({{address = addr + v[3], flags = v[2], value = v[1], freeze = v[4]}}) else gg.setValues({{address = addr + v[3], flags = v[2], value = v[1]}}) end end gg.toast((tt or "") .. "开启成功") end function getso(So_name) return gg.getRangesList(So_name)[1].start end function BaAdd(add) t = gg.getValues({[1] = {address = add, flags = 4}}) return t[1].value & 0xFFFFFFFF end function readPointer(Add, Item) for i = 1, (#Item - 1) do Add = BaAdd(Add + Item[i]) end return Add + Item[#Item] end function setvalue(add, value, falgs, dj) local WY = {} WY[1] = {} WY[1].address = add WY[1].value = value WY[1].flags = falgs if dj == true then WY[1].freeze = true gg.addListItems(WY) else gg.setValues(WY) end end function getnc(Name, nc) local t = gg.getRangesList(Name) for i, v in ipairs(t) do if v.state == nc then return v.start 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 gg.toast("\n共修改" .. #data .. "条数据") local t = {} local base = Search[1][2] for i = 1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t + 1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item + 1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else gg.toast("\n开启失败", false) return false end else gg.toast("\n开启失败") return false end 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 function SearchWrite(tb1, tb2, dataType, Name) local lt1={} local lt2={} local mm1={["主特征码"] = tb1[1][1],["类型"] = dataType } table.insert(lt1,1,mm1) for i=2 , #tb1 do local mm2={["副特征码"] = tb1[i][1],["偏移"] = tb1[i][2]} table.insert(lt1,i,mm2) end for i=1 , #tb2 do if tb2[i][2]~=nil then local mm3={["修改"] = tb2[i][1],["偏移"] = tb2[i][2]} table.insert(lt2,i,mm3) else local mm3={["修改"] = false,["偏移"] = tb2[i][1]} table.insert(lt2,i,mm3) end end LongTao(lt1, lt2 ) end function LongTao(Search, Write) gg.clearResults() gg.setVisible(false) lx=Search[1]["类型"] gg.searchNumber(Search[1]["主特征码"], lx) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} if (count > 0) then gg.toast("共搜索 "..count.." 条数据") for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local num = Search[k]["副特征码"] if Search[k]["类型"]~= nil then lx =Search[k]["类型"] else lx = Search[1]["类型"] end for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + Search[k]["偏移"] tmp[#tmp].flags = lx 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 = {} for i=1, #data do for k, w in ipairs(Write) do if w["类型"] ~= nil then lx = w["类型"] else lx = Search[1]["类型"] end t[#t+1] = {} t[#t].address = data[i] + w["偏移"] t[#t].flags = lx if (w["修改"]~=nil) and (w["修改"]~=false) then t[#t].value = w["修改"] gg.setValues(t) if (w["冻结"] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = w["冻结"] gg.addListItems(item) end end end end gg.loadResults(t) gg.toast("共偏移η"..#t.." 条数据ΔΘ") else gg.toast("未定位到数据!") return false end else gg.toast("未定位到数据!") return false end end local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local isok = mearrass(memory, array) if isok then local isok, datatype = typetab(array, type) if isok then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) else gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].isok = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].isok = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].isok = false end end end end for i = 1, #data do if data[i].isok then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type参数错误") gg.toast("type参数错误") os.exit() end else print("memory or array参数错误") gg.toast("memory or array参数错误") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze return gg.addListItems(t) else return gg.setValues(t) end else return false end 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 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 lde,mnsj={},{Dj="0.01",dv={},lz="/sdcard/.zbb",r={}} lde.gre,lde.sbr,lde.srg,lde.crs=gg.getResults,gg.searchNumber,gg.setRanges,gg.clearResults function lde.qb()table.remove(bc,#bc)table.remove(bc,#bc)end function bv(a,b) if not b then b=","end if not tostring(a):find(b)then return{a}end local tab={}local i=0 while true do j=string.find(a,b,i+1) if not j then table.insert(tab,a:sub(i+1,#a)) break end table.insert(tab,a:sub(i+1,j-1)) i=j end return tab end function so(a,b,c) local csn=gg.getRanges() gg.setVisible(false) lde.srg(a[3]) lde.crs() lde.sbr(a[2],a[4]) local js=gg.getResultCount() local count=lde.gre(js) lde.crs() if #count~=0 then local lode,lope,lobe={},{},{} for p=1,#b do lode[p]={} for i=1,#count do lode[p][i]={} lode[p][i].address=count[i].address+b[p][2] if not b[p][3]then b[p][3]=a[4]end lode[p][i].flags=b[p][3]end lode[p]=gg.getValues(lode[p]) db=bv(b[p][1],"~") if not db[2]then db[2]=db[1]end for i=1,#lode[p] do if tonumber(lode[p][i].value)>=tonumber(db[1]) and tonumber(lode[p][i].value)<=tonumber(db[2]) then lope[#lope+1]={} lope[#lope]=count[i] end end if #lope==0 then lde.srg(csn)if p>11 then p=11 end return "开启失败" end count=lope lope={}end for i=1,#c do for n=1,#count do lope[#lope+1]={} lope[#lope].address=count[n].address+c[i][2] if not c[i][3]then c[i][3]=a[4]end lope[#lope].flags=c[i][3] if c[i][1] then lope[#lope].value=c[i][1] else lope[#lope].value=gg.getValues(lope)[#lope].value end if c[i][4] then lobe[#lobe+1]={} lobe[#lobe]=lope[#lope] table.remove(lope,#lope) end if c[i][4]==1 then lobe[#lobe].freeze=true elseif c[i][4]==2 then lobe[#lobe].freeze=false end if c[i][5] then lobe[#lobe].name=c[i][5] end end end gg.setValues(lope) gg.addListItems(lobe) lde.srg(csn) return a[1].."开启成功" else lde.srg(csn) return a[1].."开启失败!!!" end end function Mswrite(read,write) gg.clearResults() gg.setRanges(read["内存"]) gg.setVisible(false) gg.searchNumber(read["主特征码"],read["类型"]) if gg.getResultCount()>0 then local Result=gg.getResults(gg.getResultCount()) gg.clearResults() for i=1,#read do local t={} for e,v in ipairs(Result) do t[#t+1]={address=v.address+read[i]["偏移"],flags=read[i]["类型"]} end t=gg.getValues(t) for _a,x in ipairs(t) do if x.value~=read[i]["值"] then Result[_a]=nil end end local MS={} for i,v in pairs(Result) do MS[#MS+1]=Result[i] end Result=MS end if(#Result>0)then local data={{},{}} for i,v in ipairs(Result) do for a,x in ipairs(write) do if x["冻结"]==true then data[2][#data[2]+1]={address=v.address+x["偏移"],flags=x["类型"],value=x["值"],freeze=true} else data[1][#data[1]+1]={address=v.address+x["偏移"],flags=x["类型"],value=x["值"]} end end end gg.setValues(data[1]) gg.addListItems(data[2]) gg.toast((read["功能名称"] or read["名称"] or read["name"] or "").."开启成功,共搜索"..#Result.."条地址已修改"..(#data[1]+#data[2]).."条数据") else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "").."修改失败") end else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "").."开启失败,未搜索到数据") end end function readPointer(name,offset,i) local re=gg.getRangesList(name) local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4} if re[i or 1] then local addr=re[i or 1].start+offset[1] for i=2,#offset do addr=gg.getValues({{address=addr,flags=va[x64]}}) if not x64 then addr[1].value=addr[1].value&0xFFFFFFFF end addr=addr[1].value+offset[i] end return addr end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end ------------------------------------------------------------------------------------------------------------- DWORD = gg.TYPE_DWORD DOUBLE = gg.TYPE_DOUBLE FLOAT = gg.TYPE_FLOAT WORD = gg.TYPE_WORD BYTE = gg.TYPE_BYTE XOR = gg.TYPE_XOR QWORD = gg.TYPE_QWORD -- 【【 核心代码,不懂勿动 】】 -- JF Script编辑器 ------------------------------------------------------------------------------------------------------------- function readWrite(Search, Get, Type, Range, Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1] ~= false then gg.searchAddress(Search[1][1], 0xFFFFFFFF, Search[1][4] or Type, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) end gg.searchNumber(Search[1][2], Search[1][4] or Type, false, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][3] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k = 2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp + 1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Search[k][3] or Type end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if v.flags == 16 or v.flags == 64 then values = tostring(v.value):sub(1, 6) num = tostring(num):sub(1, 6) else values = v.value end if tostring(values) ~= tostring(num) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data + 1] = v.address end end if (#data > 0) then local t, t_ = {}, {} local base = Search[1][3] for i = 1, #data do for k, w in ipairs(Get) do offset = w[2] - base if w[1] == false then t_[#t_ + 1] = {} t_[#t_].address = data[i] + offset t_[#t_].flags = Type th_ = (th_) and th_ + 1 or 1 else t[#t + 1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] or Type t[#t].value = w[1] tg_ = (tg_) and tg_ + 1 or 1 if (w[4] == true) then local item = {} item[#item + 1] = t[#t] item[#item].freeze = w[4] gg.addListItems(item) end end end end tg = (tg_) and "\n已修改" .. tg_ .. "条数据" or "" th = (th_) and "\n已获取" .. th_ .. "条数据" or "" gg.setValues(t) t_ = gg.getValues(t_) gg.loadResults(t_) gg.toast("\n" .. Name .. "搜索成功!\n偏移到" .. #data .. "条数据" .. tg .. th) tg_, th_ = nil, nil else gg.toast("\n" .. Name .. "开启失败", false) return false end else gg.toast(Name .. "开启失败") return false end end ------------------------------------------------------------------------------------------------------------- function 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 readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end gg.edits = function(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改" .. #Table .. "个值") end function Mswrite(search) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) if type(search[1][4]) == "string" then gg.searchAddress(search[1][4]) end gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then return gg.toast("搜索失败") else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = {address = r.address + search[i][2], flags = search[i][3]} end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end gg.toast("共搜索到" .. #result .. "条数据") return result end end function SearchWrite(read, write) gg.clearResults() gg.setRanges(read["内存"]) gg.setVisible(false) gg.searchNumber(read["主特征码"], read["类型"]) if gg.getResultCount() > 0 then local Result = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #read do local t = {} for e, v in ipairs(Result) do t[#t + 1] = {address = v.address + read[i]["偏移"], flags = read[i]["类型"]} end t = gg.getValues(t) for _a, x in ipairs(t) do if x.value ~= read[i]["值"] then Result[_a] = nil end end local MS = {} for i, v in pairs(Result) do MS[#MS + 1] = Result[i] end Result = MS end if (#Result > 0) then local data = {{}, {}} for i, v in ipairs(Result) do for a, x in ipairs(write) do if x["冻结"] == true then data[2][#data[2] + 1] = {address = v.address + x["偏移"], flags = x["类型"], value = x["值"], freeze = true} else data[1][#data[1] + 1] = {address = v.address + x["偏移"], flags = x["类型"], value = x["值"]} end end end gg.setValues(data[1]) gg.addListItems(data[2]) gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "开启成功,共搜索" .. #Result .. "条地址\n已修改" .. (#data[1] + #data[2]) .. "条数据") else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "修改失败") end else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "开启失败,未搜索到数据") end end function xqmnb(x) local tp1 = {["内存"] = x[1]["memory"], ["主特征码"] = x[3]["value"], ["类型"] = x[3]["type"], ["name"] = x[2]["name"]} for i = 4, #x do tp1[#tp1 + 1] = {["值"] = x[i]["lv"], ["偏移"] = x[i].offset, ["类型"] = x[i].type} end local tp2 = {} for i, v in ipairs(qmxg) do tp2[#tp2 + 1] = {["值"] = v.value, ["类型"] = v.type, ["偏移"] = v.offset, ["冻结"] = (v.freeze or nil)} end SearchWrite(tp1, tp2) end function readValue(add, flags) local t = gg.getValues({[1] = {address = add, flags = flags}}) return t[1].value end function readAdd(add) local t = gg.getValues({[1] = {address = add, flags = 4}}) return t[1].value & 0xFFFFFFFF 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 end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function xtnb(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end function editData(qmnb,qmxg)gg.setVisible(false)gg.clearResults()qmnbv=qmnb[3]["value"]or qmnb[3][1]qmnbt=qmnb[3]["type"]or qmnb[3][2]qmnbn=qmnb[2]["name"]or qmnb[2][1]gg.setRanges(qmnb[1]["memory"]or qmnb[1][1])gg.searchNumber(qmnbv,qmnbt)gg.refineNumber(qmnbv,qmnbt)sz=gg.getResultCount()if sz==0 then gg.toast(qmnbn.."开启失败")else sl=gg.getResults(999999)for i=1,sz do pdsz=true for v=4,#qmnb do if pdsz==true then pysz={{}}pysz[1].address=sl[i].address+(qmnb[v]["offset"]or qmnb[v][2])pysz[1].flags=qmnb[v]["type"]or qmnb[v][3]szpy=gg.getValues(pysz)tzszpd=tostring(qmnb[v]["lv"]or qmnb[v][1]):gsub(",","")pyszpd=tostring(szpy[1].value):gsub(",","")if tzszpd==pyszpd then pdjg=true pdsz=true else pdjg=false pdsz=false end end end if pdjg==true then szpy=sl[i].address for x=1,#qmxg do xgsz=qmxg[x]["value"]or qmxg[x][1]xgpy=szpy+(qmxg[x]["offset"]or qmxg[x][2])xglx=qmxg[x]["type"]or qmxg[x][3]xgdj=qmxg[x]["freeze"]or qmxg[x][4]xg={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xg[1].freeze=xgdj gg.addListItems(xg)else gg.setValues(xg)end end xgjg=true end end if xgjg==true then gg.toast(qmnbn.."开启成功")else gg.toast(qmnbn.."开启失败")end end end -- 【【 核心代码,不懂勿动 】】 -- JF Script编辑器 D=gg.TYPE_DWORD E=gg.TYPE_DOUBLE F=gg.TYPE_FLOAT W=gg.TYPE_WORD B=gg.TYPE_BYTE X=gg.TYPE_XOR Q=gg.TYPE_QWORD function nc_offset(addr,tablex,tt) for i,v in ipairs(tablex) do if v[4]==true then gg.addListItems({{address=addr+v[3],flags=v[2],value=v[1],freeze=v[4]}})else gg.setValues({{address=addr+v[3],flags=v[2],value=v[1]}}) end end gg.toast((tt or "").."开启成功") end function getso(So_name) return gg.getRangesList(So_name)[1].start 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 end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function fastsearch(search, write) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then gg.toast("Not Found") return false else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = { address = r.address + search[i][2], flags = search[i][3] } end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end if #result > 0 then local tb = {{}, {}} for i, v in ipairs(result) do --- 遍历每个结果 for _, vv in ipairs(write) do local p = {address = v.address + vv[2], flags = vv[3], value = vv[1], freeze = vv[4]} if vv[4] then --- true 就是冻结 table.insert(tb[2], p) else table.insert(tb[1], p) end end end gg.addListItems(tb[2]) gg.setValues(tb[1]) gg.toast("修改成功, 共修改" .. (#tb[1] + #tb[2]) .. "条结果") else gg.toast("Not Found") end end 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 function SearchWrite(tb1, tb2, dataType, Name) local lt1={} local lt2={} local mm1={["主特征码"] = tb1[1][1],["类型"] = dataType } table.insert(lt1,1,mm1) for i=2 , #tb1 do local mm2={["副特征码"] = tb1[i][1],["偏移"] = tb1[i][2]} table.insert(lt1,i,mm2) end for i=1 , #tb2 do if tb2[i][2]~=nil then local mm3={["修改"] = tb2[i][1],["偏移"] = tb2[i][2]} table.insert(lt2,i,mm3) else local mm3={["修改"] = false,["偏移"] = tb2[i][1]} table.insert(lt2,i,mm3) end end LongTao(lt1, lt2 ) end function LongTao(Search, Write) gg.clearResults() gg.setVisible(false) lx=Search[1]["类型"] gg.searchNumber(Search[1]["主特征码"], lx) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} if (count > 0) then gg.toast("共搜索 "..count.." 条数据") for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local num = Search[k]["副特征码"] if Search[k]["类型"]~= nil then lx =Search[k]["类型"] else lx = Search[1]["类型"] end for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + Search[k]["偏移"] tmp[#tmp].flags = lx 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 = {} for i=1, #data do for k, w in ipairs(Write) do if w["类型"] ~= nil then lx = w["类型"] else lx = Search[1]["类型"] end t[#t+1] = {} t[#t].address = data[i] + w["偏移"] t[#t].flags = lx if (w["修改"]~=nil) and (w["修改"]~=false) then t[#t].value = w["修改"] gg.setValues(t) if (w["冻结"] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = w["冻结"] gg.addListItems(item) end end end end gg.loadResults(t) gg.toast("共偏移η"..#t.." 条数据ΔΘ") else gg.toast("未定位到数据!") return false end else gg.toast("未定位到数据!") return false end end local app = {} function Assert(data) if data == nil or data == "" or data == "nil" then return false else return true end end function mearrass(memory, array) if Assert(memory) and Assert(array) then return true else return false end end function typetab(array, type) local datatype = {} for i = 1, #array do if Assert(array[i].type) then table.insert(datatype, i, array[i].type) else if Assert(type) then table.insert(datatype, i, type) else return false end end end return true, datatype end function app.memorysearch(memory, array, type) gg.setVisible(false) local isok = mearrass(memory, array) if isok then local isok, datatype = typetab(array, type) if isok then if Assert(array[1].hv) then gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv .. "~" .. array[1].hv, datatype[1]) else gg.clearResults() gg.setRanges(memory) gg.searchNumber(array[1].lv, datatype[1]) end if gg.getResultCount() == 0 then return false else local tab = {} local data = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #data do data[i].isok = true end for i = 2, #array do local t = {} local offset = array[i].offset for x = 1, #data do t[#t + 1] = {} t[#t].address = data[x].address + offset t[#t].flags = datatype[i] end local t = gg.getValues(t) for z = 1, #t do if Assert(array[i].hv) then if tonumber(t[z].value) < tonumber(array[i].lv) or tonumber(t[z].value) > tonumber(array[i].hv) then data[z].isok = false end else if tostring(t[z].value) ~= tostring(array[i].lv) then data[z].isok = false end end end end for i = 1, #data do if data[i].isok then tab[#tab + 1] = data[i].address end end if #tab > 0 then return true, tab else return false end end else print("type参数错误") gg.toast("type参数错误") os.exit() end else print("memory or array参数错误") gg.toast("memory or array参数错误") os.exit() end end function app.memoryread(addr, type) local t = {} t[1] = {} t[1].address = addr t[1].flags = type if #t > 0 then return true, gg.getValues(t)[1].value else return false end end function app.memorywrite(addr, type, value, freeze) local t = {} t[1] = {} t[1].address = addr t[1].flags = type t[1].value = value if #t > 0 then if Assert(freeze) then t[1].freeze = freeze return gg.addListItems(t) else return gg.setValues(t) end else return false end 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 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 lde,mnsj={},{Dj="0.01",dv={},lz="/sdcard/.zbb",r={}} lde.gre,lde.sbr,lde.srg,lde.crs=gg.getResults,gg.searchNumber,gg.setRanges,gg.clearResults function lde.qb()table.remove(bc,#bc)table.remove(bc,#bc)end function bv(a,b) if not b then b=","end if not tostring(a):find(b)then return{a}end local tab={}local i=0 while true do j=string.find(a,b,i+1) if not j then table.insert(tab,a:sub(i+1,#a)) break end table.insert(tab,a:sub(i+1,j-1)) i=j end return tab end function so(a,b,c) local csn=gg.getRanges() gg.setVisible(false) lde.srg(a[3]) lde.crs() lde.sbr(a[2],a[4]) local js=gg.getResultCount() local count=lde.gre(js) lde.crs() if #count~=0 then local lode,lope,lobe={},{},{} for p=1,#b do lode[p]={} for i=1,#count do lode[p][i]={} lode[p][i].address=count[i].address+b[p][2] if not b[p][3]then b[p][3]=a[4]end lode[p][i].flags=b[p][3]end lode[p]=gg.getValues(lode[p]) db=bv(b[p][1],"~") if not db[2]then db[2]=db[1]end for i=1,#lode[p] do if tonumber(lode[p][i].value)>=tonumber(db[1]) and tonumber(lode[p][i].value)<=tonumber(db[2]) then lope[#lope+1]={} lope[#lope]=count[i] end end if #lope==0 then lde.srg(csn)if p>11 then p=11 end return "开启失败" end count=lope lope={}end for i=1,#c do for n=1,#count do lope[#lope+1]={} lope[#lope].address=count[n].address+c[i][2] if not c[i][3]then c[i][3]=a[4]end lope[#lope].flags=c[i][3] if c[i][1] then lope[#lope].value=c[i][1] else lope[#lope].value=gg.getValues(lope)[#lope].value end if c[i][4] then lobe[#lobe+1]={} lobe[#lobe]=lope[#lope] table.remove(lope,#lope) end if c[i][4]==1 then lobe[#lobe].freeze=true elseif c[i][4]==2 then lobe[#lobe].freeze=false end if c[i][5] then lobe[#lobe].name=c[i][5] end end end gg.setValues(lope) gg.addListItems(lobe) lde.srg(csn) return a[1].."开启成功" else lde.srg(csn) return a[1].."开启失败!!!" end end function Mswrite(read,write) gg.clearResults() gg.setRanges(read["内存"]) gg.setVisible(false) gg.searchNumber(read["主特征码"],read["类型"]) if gg.getResultCount()>0 then local Result=gg.getResults(gg.getResultCount()) gg.clearResults() for i=1,#read do local t={} for e,v in ipairs(Result) do t[#t+1]={address=v.address+read[i]["偏移"],flags=read[i]["类型"]} end t=gg.getValues(t) for _a,x in ipairs(t) do if x.value~=read[i]["值"] then Result[_a]=nil end end local MS={} for i,v in pairs(Result) do MS[#MS+1]=Result[i] end Result=MS end if(#Result>0)then local data={{},{}} for i,v in ipairs(Result) do for a,x in ipairs(write) do if x["冻结"]==true then data[2][#data[2]+1]={address=v.address+x["偏移"],flags=x["类型"],value=x["值"],freeze=true} else data[1][#data[1]+1]={address=v.address+x["偏移"],flags=x["类型"],value=x["值"]} end end end gg.setValues(data[1]) gg.addListItems(data[2]) gg.toast((read["功能名称"] or read["名称"] or read["name"] or "").."开启成功,共搜索"..#Result.."条地址已修改"..(#data[1]+#data[2]).."条数据") else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "").."修改失败") end else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "").."开启失败,未搜索到数据") end end function readPointer(name,offset,i) local re=gg.getRangesList(name) local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4} if re[i or 1] then local addr=re[i or 1].start+offset[1] for i=2,#offset do addr=gg.getValues({{address=addr,flags=va[x64]}}) if not x64 then addr[1].value=addr[1].value&0xFFFFFFFF end addr=addr[1].value+offset[i] end return addr end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end ------------------------------------------------------------------------------------------------------------- function nc_offset(addr,tablex,tt) for i,v in ipairs(tablex) do if v[4]==true then gg.addListItems({{address=addr+v[3],flags=v[2],value=v[1],freeze=v[4]}})else gg.setValues({{address=addr+v[3],flags=v[2],value=v[1]}}) end end gg.toast((tt or "").."开启成功") end function getso(So_name) return gg.getRangesList(So_name)[1].start end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function readPointer(Add,Item) for i=1,(#Item-1) do Add=BaAdd(Add+Item[i]) end return Add+Item[#Item] end function setvalue(add,value,falgs,dj) local WY={} WY[1]={} WY[1].address=add WY[1].value=value WY[1].flags=falgs if dj==true then WY[1].freeze=true gg.addListItems(WY) else gg.setValues(WY) end end function getnc(Name,nc) local t=gg.getRangesList(Name) for i, v in ipairs(t) do if v.state==nc then return v.start 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 gg.toast("\n共修改"..#data.."条数据") local t = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else gg.toast("\n开启失败", false) return false end else gg.toast("\n开启失败") return false end 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"] 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"] .. "\n开启失败") 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"] .. "\n开启失败") 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"] .. "\n开启成功\n共修改" .. xgsl .. "\n条数据") else gg.toast(qmnb[2]["name"] .. "\n开启失败") end end end end ------------------------------------------------------------------------------------------------------------- local function LongTao(Search, Write) gg.clearResults() gg.setVisible(false) lx=Search[1]["类型"] gg.searchNumber(Search[1]["主特征码"], lx) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} if (count > 0) then gg.toast("共搜索 "..count.." 条数据") for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local num = Search[k]["副特征码"] if Search[k]["类型"]~= nil then lx =Search[k]["类型"] else lx = Search[1]["类型"] end for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + Search[k]["偏移"] tmp[#tmp].flags = lx 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 = {} for i=1, #data do for k, w in ipairs(Write) do if w["类型"] ~= nil then lx = w["类型"] else lx = Search[1]["类型"] end t[#t+1] = {} t[#t].address = data[i] + w["偏移"] t[#t].flags = lx if (w["修改"]~=nil) and (w["修改"]~=false) then t[#t].value = w["修改"] gg.setValues(t) if (w["冻结"] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = w["冻结"] gg.addListItems(item) end end end end gg.loadResults(t) gg.toast("共偏移 "..#t.." 条数据") else gg.toast("未搜到数据!") return false end else gg.toast("未搜到数据!") return false end end function nc_offset(addr,tablex,tt) for i,v in ipairs(tablex) do if v[4]==true then gg.addListItems({{address=addr+v[3],flags=v[2],value=v[1],freeze=v[4]}})else gg.setValues({{address=addr+v[3],flags=v[2],value=v[1]}}) end end gg.toast((tt or "").."开启成功") end function getso(So_name) return gg.getRangesList(So_name)[1].start 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 end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function fastsearch(search, write) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then gg.toast("Not Found") return false else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = { address = r.address + search[i][2], flags = search[i][3] } end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end if #result > 0 then local tb = {{}, {}} for i, v in ipairs(result) do --- 遍历每个结果 for _, vv in ipairs(write) do local p = {address = v.address + vv[2], flags = vv[3], value = vv[1], freeze = vv[4]} if vv[4] then --- true 就是冻结 table.insert(tb[2], p) else table.insert(tb[1], p) end end end gg.addListItems(tb[2]) gg.setValues(tb[1]) gg.toast("修改成功, 共修改" .. (#tb[1] + #tb[2]) .. "条结果") else gg.toast("Not Found") end end end function readWrite(Search, Get, Type, Range, Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1] ~= false then gg.searchAddress(Search[1][1], 0xFFFFFFFF, Search[1][4] or Type, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) end gg.searchNumber(Search[1][2], Search[1][4] or Type, false, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][3] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k = 2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp + 1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Search[k][3] or Type end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if v.flags == 16 or v.flags == 64 then values = tostring(v.value):sub(1, 6) num = tostring(num):sub(1, 6) else values = v.value end if tostring(values) ~= tostring(num) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data + 1] = v.address end end if (#data > 0) then local t, t_ = {}, {} local base = Search[1][3] for i = 1, #data do for k, w in ipairs(Get) do offset = w[2] - base if w[1] == false then t_[#t_ + 1] = {} t_[#t_].address = data[i] + offset t_[#t_].flags = Type th_ = (th_) and th_ + 1 or 1 else t[#t + 1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] or Type t[#t].value = w[1] tg_ = (tg_) and tg_ + 1 or 1 if (w[4] == true) then local item = {} item[#item + 1] = t[#t] item[#item].freeze = w[4] gg.addListItems(item) end end end end tg = (tg_) and "\n已修改" .. tg_ .. "条数据" or "" th = (th_) and "\n已获取" .. th_ .. "条数据" or "" gg.setValues(t) t_ = gg.getValues(t_) gg.loadResults(t_) gg.toast("\n" .. Name .. "搜索成功!\n偏移到" .. #data .. "条数据" .. tg .. th) tg_, th_ = nil, nil else gg.toast("\n" .. Name .. "开启失败", false) return false end else gg.toast(Name .. "开启失败") return false end end ------------------------------------------------------------------------------------------------------------- function 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 readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end gg.edits = function(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改" .. #Table .. "个值") end function Mswrite(search) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) if type(search[1][4]) == "string" then gg.searchAddress(search[1][4]) end gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then return gg.toast("搜索失败") else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = {address = r.address + search[i][2], flags = search[i][3]} end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end gg.toast("共搜索到" .. #result .. "条数据") return result end end function SearchWrite(read, write) gg.clearResults() gg.setRanges(read["内存"]) gg.setVisible(false) gg.searchNumber(read["主特征码"], read["类型"]) if gg.getResultCount() > 0 then local Result = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #read do local t = {} for e, v in ipairs(Result) do t[#t + 1] = {address = v.address + read[i]["偏移"], flags = read[i]["类型"]} end t = gg.getValues(t) for _a, x in ipairs(t) do if x.value ~= read[i]["值"] then Result[_a] = nil end end local MS = {} for i, v in pairs(Result) do MS[#MS + 1] = Result[i] end Result = MS end if (#Result > 0) then local data = {{}, {}} for i, v in ipairs(Result) do for a, x in ipairs(write) do if x["冻结"] == true then data[2][#data[2] + 1] = {address = v.address + x["偏移"], flags = x["类型"], value = x["值"], freeze = true} else data[1][#data[1] + 1] = {address = v.address + x["偏移"], flags = x["类型"], value = x["值"]} end end end gg.setValues(data[1]) gg.addListItems(data[2]) gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "开启成功,共搜索" .. #Result .. "条地址\n已修改" .. (#data[1] + #data[2]) .. "条数据") else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "修改失败") end else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "开启失败,未搜索到数据") end end function xqmnb(x) local tp1 = {["内存"] = x[1]["memory"], ["主特征码"] = x[3]["value"], ["类型"] = x[3]["type"], ["name"] = x[2]["name"]} for i = 4, #x do tp1[#tp1 + 1] = {["值"] = x[i]["lv"], ["偏移"] = x[i].offset, ["类型"] = x[i].type} end local tp2 = {} for i, v in ipairs(qmxg) do tp2[#tp2 + 1] = {["值"] = v.value, ["类型"] = v.type, ["偏移"] = v.offset, ["冻结"] = (v.freeze or nil)} end SearchWrite(tp1, tp2) end function readValue(add, flags) local t = gg.getValues({[1] = {address = add, flags = flags}}) return t[1].value end function readAdd(add) local t = gg.getValues({[1] = {address = add, flags = 4}}) return t[1].value & 0xFFFFFFFF 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 end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."个值" or "" th=(th_) and "\n已获取"..th_.."个值" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast("\n"..Name.."搜索成功!\n偏移到"..#data.."个值"..tg..th) tg_,th_=nil,nil else gg.toast(Name.."警告⚠️:没有值可修改",false) return false end else gg.toast(Name.."警告⚠️:没有值可修改") return false end end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end ------------------------------------------------------------------------------------------------------------- function readWrite(Search, Get, Type, Range, Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1] ~= false then gg.searchAddress(Search[1][1], 0xFFFFFFFF, Search[1][4] or Type, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) end gg.searchNumber(Search[1][2], Search[1][4] or Type, false, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][3] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k = 2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp + 1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Search[k][3] or Type end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if v.flags == 16 or v.flags == 64 then values = tostring(v.value):sub(1, 6) num = tostring(num):sub(1, 6) else values = v.value end if tostring(values) ~= tostring(num) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data + 1] = v.address end end if (#data > 0) then local t, t_ = {}, {} local base = Search[1][3] for i = 1, #data do for k, w in ipairs(Get) do offset = w[2] - base if w[1] == false then t_[#t_ + 1] = {} t_[#t_].address = data[i] + offset t_[#t_].flags = Type th_ = (th_) and th_ + 1 or 1 else t[#t + 1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] or Type t[#t].value = w[1] tg_ = (tg_) and tg_ + 1 or 1 if (w[4] == true) then local item = {} item[#item + 1] = t[#t] item[#item].freeze = w[4] gg.addListItems(item) end end end end tg = (tg_) and "\n已修改" .. tg_ .. "条数据" or "" th = (th_) and "\n已获取" .. th_ .. "条数据" or "" gg.setValues(t) t_ = gg.getValues(t_) gg.loadResults(t_) gg.toast("\n" .. Name .. "搜索成功!\n偏移到" .. #data .. "条数据" .. tg .. th) tg_, th_ = nil, nil else gg.toast(Name .. "警告⚠️:没有值可修改", false) return false end else gg.toast(Name .. "警告⚠️:没有值可修改") return false end end ------------------------------------------------------------------------------------------------------------- readPointer = function(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 il2cppStart = 0 for k, v in pairs(gg.getRangesList('libil2cpp.so$')) do if (v.state == 'Xa') then il2cppStart = v['start'] break end end ------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------- function nc_offset(addr, tablex, tt) for i, v in ipairs(tablex) do if v[4] == true then gg.addListItems({{address = addr + v[3], flags = v[2], value = v[1], freeze = v[4]}}) else gg.setValues({{address = addr + v[3], flags = v[2], value = v[1]}}) end end gg.toast((tt or "") .. "修改成功,修改1个值") end function getso(So_name) return gg.getRangesList(So_name)[1].start end function BaAdd(add) t = gg.getValues({[1] = {address = add, flags = 4}}) return t[1].value & 0xFFFFFFFF end function readPointer(Add, Item) for i = 1, (#Item - 1) do Add = BaAdd(Add + Item[i]) end return Add + Item[#Item] end function setvalue(add, value, falgs, dj) local WY = {} WY[1] = {} WY[1].address = add WY[1].value = value WY[1].flags = falgs if dj == true then WY[1].freeze = true gg.addListItems(WY) else gg.setValues(WY) end end function getnc(Name, nc) local t = gg.getRangesList(Name) for i, v in ipairs(t) do if v.state == nc then return v.start end end end function SearchWrite_1(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 gg.toast("\n共修改" .. #data .. "条数据") local t = {} local base = Search[1][2] for i = 1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t + 1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item + 1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) else gg.toast("警告⚠️:没有值可修改", false) return false end else gg.toast("警告⚠️:没有值可修改") return false end end ------------------------------------------------------------------------------------------------------------- function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do while avaIxGahNmS9IAQk < os.time() do gg.alert('脚本已过期') os.exit() end while aKC7r7myeA6EsWyf ~= 'e8c535c01c6ce3fe3f66f35409dedef2' 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"] .. "\n修改成功\n共修改" .. xgsl .. "\n个值") else gg.toast(qmnb[2]["name"] .. "警告⚠️:没有值可修改") end end end end ------------------------------------------------------------------------------------------------------------- DWORD = gg.TYPE_DWORD DOUBLE = gg.TYPE_DOUBLE FLOAT = gg.TYPE_FLOAT WORD = gg.TYPE_WORD BYTE = gg.TYPE_BYTE XOR = gg.TYPE_XOR QWORD = gg.TYPE_QWORD -- 【【 核心代码,不懂勿动 】】 -- JF Script编辑器 ------------------------------------------------------------------------------------------------------------- function readWrite(Search, Get, Type, Range, Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1] ~= false then gg.searchAddress(Search[1][1], 0xFFFFFFFF, Search[1][4] or Type, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) end gg.searchNumber(Search[1][2], Search[1][4] or Type, false, gg.SIGN_EQUAL, Search[1][5] or 1, Search[1][6] or -1) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][3] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k = 2, #Search do local tmp = {} local offset = Search[k][2] - base local num = Search[k][1] for i, v in ipairs(result) do tmp[#tmp + 1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Search[k][3] or Type end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if v.flags == 16 or v.flags == 64 then values = tostring(v.value):sub(1, 6) num = tostring(num):sub(1, 6) else values = v.value end if tostring(values) ~= tostring(num) then result[i].isUseful = false end end end for i, v in ipairs(result) do if (v.isUseful) then data[#data + 1] = v.address end end if (#data > 0) then local t, t_ = {}, {} local base = Search[1][3] for i = 1, #data do for k, w in ipairs(Get) do offset = w[2] - base if w[1] == false then t_[#t_ + 1] = {} t_[#t_].address = data[i] + offset t_[#t_].flags = Type th_ = (th_) and th_ + 1 or 1 else t[#t + 1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] or Type t[#t].value = w[1] tg_ = (tg_) and tg_ + 1 or 1 if (w[4] == true) then local item = {} item[#item + 1] = t[#t] item[#item].freeze = w[4] gg.addListItems(item) end end end end tg = (tg_) and "\n已修改" .. tg_ .. "条数据" or "" th = (th_) and "\n已获取" .. th_ .. "条数据" or "" gg.setValues(t) t_ = gg.getValues(t_) gg.loadResults(t_) gg.toast("" .. Name .. "搜索成功!\n偏移到" .. #data .. "条数据" .. tg .. th) tg_, th_ = nil, nil else gg.toast(Name .. "警告⚠️:没有值可修改", false) return false end else gg.toast(Name .. "警告⚠️:没有值可修改") return false end end ------------------------------------------------------------------------------------------------------------- --偏移配置 function readPointer(name, offset, i) local re = gg.getRangesList(name) local x64 = gg.getTargetInfo().x64 local va = {[true] = 32, [false] = 4} if re[i or 1] then local addr = re[i or 1].start + offset[1] for i = 2, #offset do addr = gg.getValues({{address = addr, flags = va[x64]}}) if not x64 then addr[1].value = addr[1].value & 0xFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end gg.edits = function(addr, Table, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) gg.toast((name or "") .. "修改成功, 共修改" .. #Table .. "个值") end function Mswrite(search) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) if type(search[1][4]) == "string" then gg.searchAddress(search[1][4]) end gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then return gg.alert("初始化失败") else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = {address = r.address + search[i][2], flags = search[i][3]} end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end gg.toast("共搜索到" .. #result .. "条数据") return result end end function SearchWrite(read, write) gg.clearResults() gg.setRanges(read["内存"]) gg.setVisible(false) gg.searchNumber(read["主特征码"], read["类型"]) if gg.getResultCount() > 0 then local Result = gg.getResults(gg.getResultCount()) gg.clearResults() for i = 1, #read do local t = {} for e, v in ipairs(Result) do t[#t + 1] = {address = v.address + read[i]["偏移"], flags = read[i]["类型"]} end t = gg.getValues(t) for _a, x in ipairs(t) do if x.value ~= read[i]["值"] then Result[_a] = nil end end local MS = {} for i, v in pairs(Result) do MS[#MS + 1] = Result[i] end Result = MS end if (#Result > 0) then local data = {{}, {}} for i, v in ipairs(Result) do for a, x in ipairs(write) do if x["冻结"] == true then data[2][#data[2] + 1] = {address = v.address + x["偏移"], flags = x["类型"], value = x["值"], freeze = true} else data[1][#data[1] + 1] = {address = v.address + x["偏移"], flags = x["类型"], value = x["值"]} end end end gg.setValues(data[1]) gg.addListItems(data[2]) gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "修改成功,共搜索" .. #Result .. "条地址\n修改" .. (#data[1] + #data[2]) .. "个值") else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "修改失败,没有合适的主特征码") end else gg.toast((read["功能名称"] or read["名称"] or read["name"] or "") .. "开启失败,未搜索到数据") end end function xqmnb(x) local tp1 = {["内存"] = x[1]["memory"], ["主特征码"] = x[3]["value"], ["类型"] = x[3]["type"], ["name"] = x[2]["name"]} for i = 4, #x do tp1[#tp1 + 1] = {["值"] = x[i]["lv"], ["偏移"] = x[i].offset, ["类型"] = x[i].type} end local tp2 = {} for i, v in ipairs(qmxg) do tp2[#tp2 + 1] = {["值"] = v.value, ["类型"] = v.type, ["偏移"] = v.offset, ["冻结"] = (v.freeze or nil)} end SearchWrite(tp1, tp2) end function readValue(add, flags) local t = gg.getValues({[1] = {address = add, flags = flags}}) return t[1].value end function readAdd(add) local t = gg.getValues({[1] = {address = add, flags = 4}}) return t[1].value & 0xFFFFFFFF end ------------------------------------------------------------------------------------------------------------- function setvalue(add,lv,falg) gg.setValues({{address=add,flags=falg,value=lv}}) end function readAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) add=string.format("%X",t[1].value) if (#add)==16 then add=add:sub(9,16) end if (#add)==1 then add=add.."0000000" else add=string.format("%d","0x"..add) end return add end ------------------------------------------------------------------------------------------------------------- function fastsearch(search, write,we) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then if we~=nil then gg.toast(we.." -> 主特征码不存在") end return false else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = { address = r.address + search[i][2], flags = search[i][3] } end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end if #result > 0 then local tb = {{}, {}} for i, v in ipairs(result) do --- 遍历每个结果 for _, vv in ipairs(write) do local p = {address = v.address + vv[2], flags = vv[3], value = vv[1], freeze = vv[4]} if vv[4] then --- true 就是冻结 table.insert(tb[2], p) else table.insert(tb[1], p) end end end gg.addListItems(tb[2]) gg.setValues(tb[1]) if we~=nil then gg.toast(we.." -> 共修改" .. (#tb[1] + #tb[2]) .. "条结果") end else if we~=nil then gg.toast(we.." -> 警告⚠️:没有值可修改") end end end end ------------------------------------------------------------------------------------------------------------- function fastsearch(search, write) gg.setVisible(false) gg.clearResults() gg.setRanges(search[1][3]) gg.searchNumber(search[1][1], search[1][2]) if gg.getResultsCount() == 0 then gg.toast("警告⚠️:没有值可修改") return false else local result = gg.getResults(gg.getResultsCount()) gg.clearResults() for i = 2, #search do local mtp = {} for w, r in ipairs(result) do mtp[#mtp + 1] = { address = r.address + search[i][2], flags = search[i][3] } end mtp = gg.getValues(mtp) local hook = {} for w, r in ipairs(mtp) do if r.value == search[i][1] then hook[#hook + 1] = result[w] end end result = hook end if #result > 0 then local tb = {{}, {}} for i, v in ipairs(result) do --- 遍历每个结果 for _, vv in ipairs(write) do local p = {address = v.address + vv[2], flags = vv[3], value = vv[1], freeze = vv[4]} if vv[4] then --- true 就是冻结 table.insert(tb[2], p) else table.insert(tb[1], p) end end end gg.addListItems(tb[2]) gg.setValues(tb[1]) gg.toast("修改成功, 共修改" .. (#tb[1] + #tb[2]) .. "个值") else gg.toast("警告⚠️:没有值可修改") end end end ------------------------------------------------------------------------------------------------------------- local function LongTao(Search, Write) gg.clearResults() gg.setVisible(false) lx=Search[1]["类型"] gg.searchNumber(Search[1]["主特征码"], lx) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} if (count > 0) then gg.toast("共搜索 "..count.." 条数据") for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do local tmp = {} local num = Search[k]["副特征码"] if Search[k]["类型"]~= nil then lx =Search[k]["类型"] else lx = Search[1]["类型"] end for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + Search[k]["偏移"] tmp[#tmp].flags = lx 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 = {} for i=1, #data do for k, w in ipairs(Write) do if w["类型"] ~= nil then lx = w["类型"] else lx = Search[1]["类型"] end t[#t+1] = {} t[#t].address = data[i] + w["偏移"] t[#t].flags = lx if (w["修改"]~=nil) and (w["修改"]~=false) then t[#t].value = w["修改"] gg.setValues(t) if (w["冻结"] == true) then local item = {} item[#item+1] = t[#t] item[#item].freeze = w["冻结"] gg.addListItems(item) end end end end gg.loadResults(t) gg.toast("共偏移 "..#t.." 条数据") else gg.toast("未搜到数据!") return false end else gg.toast("未搜到数据!") return false end end function hmhqdz(address,hmlx) hmhq = {} hmhq[1] = {} hmhq[1].address = address hmhq[1].flags = hmlx huanmie=gg.getValues(hmhq) hm=huanmie[1]['value'] return hm end --获取地址内存值配置不懂勿动 function editData(qmnb,qmxg)gg.setVisible(false)gg.clearResults()qmnbv=qmnb[3]["value"]or qmnb[3][1]qmnbt=qmnb[3]["type"]or qmnb[3][2]qmnbn=qmnb[2]["name"]or qmnb[2][1]gg.setRanges(qmnb[1]["memory"]or qmnb[1][1])gg.searchNumber(qmnbv,qmnbt)gg.refineNumber(qmnbv,qmnbt)sz=gg.getResultCount()if sz==0 then gg.toast(qmnbn.."警告⚠️:没有值可修改")else sl=gg.getResults(999999)for i=1,sz do pdsz=true for v=4,#qmnb do if pdsz==true then pysz={{}}pysz[1].address=sl[i].address+(qmnb[v]["offset"]or qmnb[v][2])pysz[1].flags=qmnb[v]["type"]or qmnb[v][3]szpy=gg.getValues(pysz)tzszpd=tostring(qmnb[v]["lv"]or qmnb[v][1]):gsub(",","")pyszpd=tostring(szpy[1].value):gsub(",","")if tzszpd==pyszpd then pdjg=true pdsz=true else pdjg=false pdsz=false end end end if pdjg==true then szpy=sl[i].address for x=1,#qmxg do xgsz=qmxg[x]["value"]or qmxg[x][1]xgpy=szpy+(qmxg[x]["offset"]or qmxg[x][2])xglx=qmxg[x]["type"]or qmxg[x][3]xgdj=qmxg[x]["freeze"]or qmxg[x][4]xg={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xg[1].freeze=xgdj gg.addListItems(xg)else gg.setValues(xg)end end xgjg=true end end if xgjg==true then gg.toast(qmnbn.."修改成功,修改1个值")else gg.toast(qmnbn.."警告⚠️:没有值可修改")end end end -- 【【 核心代码,不懂勿动 】】 -- JF Script编辑器 D=gg.TYPE_DWORD E=gg.TYPE_DOUBLE F=gg.TYPE_FLOAT W=gg.TYPE_WORD B=gg.TYPE_BYTE X=gg.TYPE_XOR Q=gg.TYPE_QWORD _ENV['防闪'] = function() editData( { {["memory"] = gg.REGION_C_DATA}, {["name"] = "8.15.2防闪"}, {["value"] = 778923875, ["type"] = D}, {["lv"] = 778923875,["offset"] =0, ["type"] = D}, }, { {["value"] = 999999999,["offset"] =0, ["type"] = D,["freeze"] = true}, } ) gg.clearResults() end _ENV['打榜防'] = function()--360 gg.clearResults() gg.setRanges(4) gg.searchNumber("1,670,527,267", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1000) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.setRanges(4) gg.searchNumber("11253", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1001) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.setRanges(4) gg.searchNumber("-1,322,254,336", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1001) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.setRanges(4) gg.searchNumber("1,297,307,992", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1001) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.setRanges(4) gg.searchNumber("1,297,307,992", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.toast("开启成功") end _ENV['防检测'] = function()--360 gg.clearResults() gg.setRanges(16384) gg.searchNumber("4.6533968e33", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("4.6533968e33", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_FLOAT) gg.toast("防检测") gg.clearResults() gg.searchNumber("4554", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4554", gg.TYPE_DWORD) gg.toast("防检测开启成功") gg.clearResults() end _ENV['防举报'] = function()--360 gg.clearResults() gg.setRanges(16384) gg.searchNumber(":seconds", gg.TYPE_BYTE, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber(":seconds", gg.TYPE_BYTE, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99999) gg.editAll("防举报", gg.TYPE_BYTE) gg.toast("防举报开启成功(一局一开)") gg.clearResults() end _ENV['全防'] = function()--360 gg.clearResults() gg.setRanges(32) gg.searchNumber("535146", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启13%成功") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("672568", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启43%成功") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("312228", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启53%成功") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("656220", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启67%成功") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("139884", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启79%成功") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("311138", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启86%成功") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("147876", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启95%") gg.clearResults() gg.clearResults() gg.setRanges(32) gg.searchNumber("731622", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("开启100%") gg.clearResults() gg.clearResults() gg.toast("已注入") end _ENV['全员刷钱'] = function() gg.alert("请在出场动画时开启!") --方法: public Single get_IsCaptured() { } --操作码~A B 0x地址 --跳转方法:private Void AddFailSafeReward() { } --跳转方法:public Void RpcGiveLastCoin() { } kqorgb_offset(getso("libil2cpp.so"),{{-353640949,4,0x13a5e38},}) gg.sleep(3000)--延迟3秒 kqorgb_offset(getso("libil2cpp.so"),{{-382907280,4,0x13a5e38},}) kqorgb_offset(getso("libil2cpp.so"),{{-369097175,4,0x13a5e38},}) kqorgb_offset(getso("libil2cpp.so"),{{-382907280,4,0x13a5e38},}) end _ENV['稳定一套'] = function() qmnb = { {["memory"] = 32}, {["name"] = "3倍移速"}, {["value"] = 2.79999995232, ["type"] = 16}, {["lv"] = 20.0,["offset"] =4, ["type"] = 16}, {["lv"] = 900.0,["offset"] =12, ["type"] = 16}, } qmxg = { {["value"] = 3.8,["offset"] =0, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "完美开锁"}, {["value"] = 59.0, ["type"] = 16}, {["lv"] = 16.0, ["offset"] = 4, ["type"] = 16}, } qmxg = { {["value"] = 99999, ["offset"] = 4, ["type"] = 16}, } xqmnb(qmnb) fastsearch({ {1.5, 16, 32}, {1.0, -4, 16}, {2.0, 4, 16}, {2.5, 8, 16}, }, { {3, -4, 16, false}, },"加速开锁") qmnb = { {["memory"] = 32}, {["name"] = "0概率触发开锁"}, {["value"] = 59.0, ["type"] = 16}, {["lv"] = 2.0,["offset"] =20, ["type"] = 16}, } qmxg = { {["value"] = 99999,["offset"] =20, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "人物明透"}, {["value"] = 2.5, ["type"] = 16}, {["lv"] = 1.0, ["offset"] = 4, ["type"] = 16}, {["lv"] = 8.0, ["offset"] = -4, ["type"] = 16}, {["lv"] = 12.0, ["offset"] = -8, ["type"] = 16}, } qmxg = { {["value"] = 100, ["offset"] = -4, ["type"] = 16}, } xqmnb(qmnb) end _ENV['防封'] = function() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("14,848;29,124,154;805,412,864", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.searchNumber("29,124,154", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("3,672,102", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("27,394,050", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("8,128,048;7,997,016:5", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.alert("开启%16","确认") gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-134,114,248", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-134,114,248", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("99999", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("2,147,248,313", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("2,147,248,313", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-999999", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("96,207,768", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("96,207,768", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("28,588,140", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("28,588,140", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-999999", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("1,476,502,528", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("1,476,502,528", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("14,848;29,124,154;805,412,864", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.searchNumber("29,124,154", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("3,672,102", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("27,394,050", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("8,128,048;7,997,016:5", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.alert("开启%50","确认") gg.getResults(9999) gg.getResults(9999) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-134,114,248", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-134,114,248", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("99999", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("2,147,248,313", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("2,147,248,313", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-999999", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("96,207,768", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("96,207,768", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("28,588,140", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("28,588,140", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-999999", gg.TYPE_DWORD) gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("1,476,502,528", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("1,476,502,528", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.setRanges(16384) gg.searchNumber("48,889,863", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("48,889,863", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.alert("开启成功","确认") end _ENV['移动开物'] = function() if menu then for i in pairs(menu) do _ENV[({"FYEx1","FYEx2","FYEx3","FYEx4","FYEx5","FYEx6","FYEx7","FYEx8","FYEx9","FYEx10","FYEx11","FYEx12","lk","Main",})[i]]() end end end function lk() fastsearch({{1147207680,4,32},{20.0,-8,16}},{{0.1,8,16,false},{0,-4,16,false}},"路过开物✓") end function FYEx1() so = gg.getRangesList('libil2cpp.so')[1].start function BaseAddressD(address, value) local tt = {} tt[1] = {} tt[1].address = so + address tt[1].flags = 4 tt[1].value = value tt[2] = {} tt[2].address = so + address + 0x4 tt[2].flags = 4 tt[2].value = '~A BX LR' gg.setValues(tt) end BaseAddressD(0x18a66b0,'-476052716') BaseAddressD(0x18a66b4,'-516948194') end _ENV['防追封'] = function() gg.alert("在大厅开启") gg.toast("获取文件中") gg.searchNumber("131,072;65536;65536;917504;131,072", gg["TYPE_DWORD"], false, gg["SIGN_EQUAL"], 0, -1) gg.setRanges(32) gg.sleep(1500) gg.toast("获取成功,文件名为game_log.txt") os.remove("/storage/emulated/0/Android/data/com.bairimeng.dmmdzz.m4399/files/VirtualUniqueDeviceID.txt") gg.sleep(800) gg.toast("删除封号残留文件成功") gg.sleep(500) gg.toast("获取追封文件中") gg.searchNumber("131,072;65536;65536;917504;131,072", gg["TYPE_DWORD"], false, gg["SIGN_EQUAL"], 0, -1) gg.setRanges(32) os.remove("/storage/emulated/0/Android/data/com.bairimeng.dmmdzz.m4399") gg.toast("获取成功,已删除追封文件") gg.clearResults() gg.setRanges(32) gg.searchNumber("131,072;65536;65536;917504;131,072", gg["TYPE_DWORD"], false, gg["SIGN_EQUAL"], 0, -1) gg.searchNumber("65536", gg["TYPE_DWORD"], false, gg["SIGN_EQUAL"], 0, -1) jg=gg.getResults(100) sl=gg.getResultCount() if sl>100 then sl=100 end for i = 1, sl do dzy=jg[i].address gg.addListItems({[1] = {address = dzy,flags = gg["TYPE_DWORD"],freeze = true,value = 0}}) end gg.alert("清理防追封成功一心为您保驾护航","确认") end _ENV['角色技能免费'] = function() fastsearch({{0.00048828154,16,16384},{-382908368,-576,4},{-494030840,-572,4},{167772163,-648,4}},{{-476053503,3328,4},{-516948194,3332,4},{-476053504,-576,4},{-516948194,-572,4,false}}) gg.alert("开启成功","确认") end _ENV['倒地结算[30秒开]'] = function() fastsearch({{100.0,16,32},{0.30000001192092896,4,16},}, {{0, -4, 16, false}}) gg.alert("开启成功","确认") end _ENV['圣女技能'] = function() qmnb = { {["memory"] = 32}, {["name"] = "圣女范围1"}, {["value"] = 2.5, ["type"] = 16}, {["lv"] = 8.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 12.0,["offset"] =-8, ["type"] = 16}, {["lv"] = 1.0,["offset"] =4, ["type"] = 16}, {["lv"] = 4.0,["offset"] =-0x28, ["type"] = 16}, } qmxg = { {["value"] = 99,["offset"] =-4, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "圣女范围2"}, {["value"] = 0.6000000238418579, ["type"] = 16}, {["lv"] = 8.0,["offset"] =4, ["type"] = 16}, {["lv"] = 6.0,["offset"] =8, ["type"] = 16}, {["lv"] = 4.0,["offset"] =12, ["type"] = 16}, } qmxg = { {["value"] = 99,["offset"] =4, ["type"] = 16}, } xqmnb(qmnb) end _ENV['41吸人'] = function() qmnb = { {["memory"] = 32}, {["name"] = "41吸人"}, {["value"] = 80, ["type"] = 4}, {["lv"] = 1.0,["offset"] =8, ["type"] = 16}, {["lv"] = 30,["offset"] =4, ["type"] = 4}, } qmxg = { {["value"] = 0,["offset"] =8, ["type"] = 16}, } xqmnb(qmnb) end _ENV['82吸人'] = function() qmnb = { {["memory"] = 32}, {["name"] = "82吸人"}, {["value"] = 39, ["type"] = 4}, {["lv"] = 1.0,["offset"] =4, ["type"] = 16}, {["lv"] = 88,["offset"] =-4, ["type"] = 4}, } qmxg = { {["value"] = 0,["offset"] =4, ["type"] = 16}, } xqmnb(qmnb) end _ENV['张豪全防'] = function() xqmnb(qmnb) gg.clearResults() gg.setRanges(16384) gg.searchNumber("4.6533968e33", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("4.6533968e33", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_FLOAT) gg.toast("防检测") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("79,560,711", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("79,560,711", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("21,530,208", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("21,530,208", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("48,889,863", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("48,889,863", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() toMusic("开启成功") gg.alert("开启成功") end _ENV['逃生一件套'] = function() qmnb = { {["memory"] = 32}, {["name"] = "4倍移速"}, {["value"] = 2.79999995232, ["type"] = 16}, {["lv"] = 20.0,["offset"] =4, ["type"] = 16}, {["lv"] = 900.0,["offset"] =12, ["type"] = 16}, } qmxg = { {["value"] = 4,["offset"] =0, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "0概率触发开锁"}, {["value"] = 59.0, ["type"] = 16}, {["lv"] = 2.0,["offset"] =20, ["type"] = 16}, } qmxg = { {["value"] = 99999,["offset"] =20, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "穿墙"}, {["value"] = -10.0, ["type"] = 16}, {["lv"] = 49.0, ["offset"] = 20, ["type"] = 16}, } qmxg = { {["value"] = 999999, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "3倍开锁"}, {["value"] = 1.5, ["type"] = 16}, {["lv"] = 1.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 2.0,["offset"] =4, ["type"] = 16}, {["lv"] = 2.5,["offset"] =8, ["type"] = 16}, } qmxg = { {["value"] = 3,["offset"] =-4, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "高跳"}, {["value"] = 4.900000095367432, ["type"] = 16}, {["lv"] = 900.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 20.0,["offset"] =-8, ["type"] = 16}, } qmxg = { {["value"] = 6.8,["offset"] =0, ["type"] = 16}, } xqmnb(qmnb) fastsearch({ {25.0, 16, 32}, {1.0, -4, 16}, {0.5, -8, 16}, {2.5, -12, 16} }, { {0.0, -4, 16, false}, },"无视夹子") qmnb = { {["memory"] = 32}, {["name"] = "明透"}, {["value"] = 2.5, ["type"] = 16}, {["lv"] = 1.0,["offset"] =4, ["type"] = 16}, {["lv"] = 8.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 12.0,["offset"] =-8, ["type"] = 16}, } qmxg = { {["value"] = 100,["offset"] =-4, ["type"] = 16}, } xqmnb(qmnb) gg.clearResults() gg.setRanges(16384) gg.searchNumber("4.6533968e33", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("4.6533968e33", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_FLOAT) gg.toast("防检测") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("79,560,711", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("79,560,711", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("21,530,208", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("21,530,208", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("48,889,863", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("48,889,863", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() gg.clearResults() gg.setRanges(16384) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("7,562,610", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", gg.TYPE_DWORD) gg.toast("防封") gg.clearResults() toMusic("开启成功") gg.alert("开启成功") end _ENV['加血'] = function() qmnb = { {["memory"] = 32}, {["name"] = "增加血量"}, {["value"] = 200.0, ["type"] = 16}, {["lv"] = 100.0,["offset"] =-20, ["type"] = 16}, {["lv"] = 100.0,["offset"] =-24, ["type"] = 16}, } qmxg = { {["value"] = 1200,["offset"] =-20, ["type"] = 16}, {["value"] = 1200,["offset"] =-24, ["type"] = 16}, } xqmnb(qmnb) end local Coordinate = { ["4v1"] = { {"追捕出生点", 73.5476547241,12.87230625153}, {"出生点", 3.54476547241,15.47230625153}, {"左上锁",21.48487854004, 26.65206336975}, {"右上锁", 58.87679290771,26.38630104065}, {"左下锁",25.78712463379,4.47993040085}, {"右下锁",50.62059783936,6.56849718094}, {"逃生门",73.797996521,19.22518348694}, {"禁闭室",41.64858627319,15.68177127838} }, ["8v2"] = { {"出生点",4.01427412033,4.29365110397}, {"追捕出生点", 69.823619842529,23.24}, {"左上角", 8.35671615601, 34.48394012451}, {"右上角", 46.06547927856 , 35.75774002075}, {"左下角", 37.44395446777, 9.94684028625}, {"右下角", 74.33776092529, 2.83895134926}, {"右中锁", 58.02332305908, 19.30354118347}, {"左中锁", 26.00450325012, 22.61933708191}, {'禁闭室', 43.67848205566,20.084192276}, {'逃生门', 73.23619842529,19.74}, {'逃生点', 84.43,38.44}, {'逃生门右下角草丛', 86.7, 20.4}, }, ["大乱斗"] = { {"金宝箱", 69.06547927856 , 58.75774002075} }, ["BOSS战"] = { {'左上锁', 14.42708015442 , 27.35429382324}, {'右上锁', 43.25138092041 , 25.47104644775}, {'左下锁', 17.88104248047 , 3.07307004929}, {'右下锁', 44.83654785156 , 3.05864238739}, {'超级补给箱', 30.05561447144 , 14.99376583099}, {'逃生出生点', 2.58230996132 , 15.0183763504}, {'BOSS出生点', 46.4808883667 , 14.44607925415}, }, } _ENV['奥博技能'] = function() NH=gg.prompt({"现在的技能金币↓","修改后的电击时间↓","修改后的电击范围↓","修改后的电击速度↓"},{[1]="120",[2]="60",[3]="999",[4]="0"}) qmnb = { {["memory"] = 32}, {["name"] = "奥博"}, {["value"] = 12.0, ["type"] = 16}, {["lv"] = NH[1], ["offset"] = 4, ["type"] = 4}, } qmxg = { {["value"] = 0, ["offset"] = 4, ["type"] = 4, ["freeze"] = true}, {["value"] = NH[2], ["offset"] = 120, ["type"] = 16, ["freeze"] = true}, {["value"] = NH[3], ["offset"] = 124, ["type"] = 16, ["freeze"] = true}, {["value"] = NH[4], ["offset"] = 128, ["type"] = 16, ["freeze"] = true}, } xqmnb(qmnb) end _ENV['追捕透视'] = function() qmnb = { {["memory"] = 32}, {["name"] = "明透"}, {["value"] = 2.5, ["type"] = 16}, {["lv"] = 1.0,["offset"] =4, ["type"] = 16}, {["lv"] = 8.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 12.0,["offset"] =-8, ["type"] = 16}, } qmxg = { {["value"] = 100,["offset"] =-4, ["type"] = 16}, } xqmnb(qmnb) end _ENV['追捕移速'] = function() qmnb = { {["memory"] = 32}, {["name"] = "3.2倍移速"}, {["value"] = 2.79999995232, ["type"] = 16}, {["lv"] = 20.0,["offset"] =4, ["type"] = 16}, {["lv"] = 900.0,["offset"] =12, ["type"] = 16}, } qmxg = { {["value"] = 3.2,["offset"] =0, ["type"] = 16}, } xqmnb(qmnb) end _ENV['追捕视野'] = function() qmnb = { {["memory"] = 32}, {["name"] = "增大视野范围"}, {["value"] = 40.0, ["type"] = 16}, {["lv"] = 12.0,["offset"] =0x1C, ["type"] = 16}, } qmxg = { {["value"] = 15,["offset"] =0x1C, ["type"] = 16}, } xqmnb(qmnb) end _ENV['追捕全局加速'] = function() qmnb = { {["memory"] = 4}, {["name"] = "1.2倍全局加速"}, {["value"] = 0.02500000037, ["type"] = 16}, {["lv"] = 1.0,["offset"] =-8, ["type"] = 16}, } qmxg = { {["value"] = 1.2,["offset"] =-8, ["type"] = 16}, } xqmnb(qmnb) end _ENV['去除检测'] = function() qmnb = { {["memory"] = 16384}, {["name"] = "去除ace检测"}, {["value"] = 0.00048828148, ["type"]=16}, {["lv"] = 184549345,["offset"]=-608, ["type"]=4}, } qmxg = { {["value"] = -476053504, ["offset"] = 37613628, ["type"] = 4, ["freeze"] = true}, {["value"] = -516948194, ["offset"] = 37613632, ["type"] = 4, ["freeze"] = true}, {["value"] = -476053504, ["offset"] = 37610268, ["type"] = 4, ["freeze"] = true}, {["value"] = -516948194, ["offset"] = 37610272, ["type"] = 4, ["freeze"] = true}, } xqmnb(qmnb) end _ENV['医疗箱范围'] = function() qmnb = { {["memory"] = 32}, {["name"] ="医疗箱范围"}, {["value"] =4608083138725491507, ["type"] = 32}, {["lv"] = 3689348813882916864, ["offset"] = -4, ["type"] = 32}, } qmxg = { {["value"] =3.6, ["offset"] = 0, ["type"] = 64}, } xqmnb(qmnb) end _ENV['刷钱'] = function() sq=gg.alert("选择模式","8v2","4v1") if sq==1 then--8v2刷钱 fastsearch({{4489188110532608000,32,32},{256,20,4},{100,24,4}},{{1,88,4,true},{184319,92,4,true}}) end if sq==2 then--4v1刷钱 fastsearch({ {4489188110528151552,32,32}, {256,20,4}, {100,24,4} }, {{1,88,4,true}, {122879,92,4,true}}) end toMusic("开启成功") gg.alert('开启成功') end _ENV['小狮子2'] = function() qmnb = { {["memory"] = 32}, {["name"] = "小狮子稳定全屏秒杀无减血"}, {["value"] = 30.0, ["type"] = 16}, {["lv"] = 80, ["offset"] = 4, ["type"] = 4}, {["lv"] = 33.0, ["offset"] = 104, ["type"] = 16}, {["lv"] = 1.5, ["offset"] = 108, ["type"] = 16}, } qmxg = { {["value"] = 0, ["offset"] = 0, ["type"] = 16, ["freeze"] = true}, {["value"] = 1, ["offset"] = 4, ["type"] = 4, ["freeze"] = true}, {["value"] = 100, ["offset"] = 104, ["type"] = 16, ["freeze"] = true}, {["value"] = 115, ["offset"] = 108, ["type"] = 16, ["freeze"] = true}, } toMusic('开启成功') xqmnb(qmnb) end _ENV['道具无cd'] = function() nc_offset(getso("libil2cpp.so"),{{-476053503,4,0xf18c24},}) nc_offset(getso("libil2cpp.so"),{{-516948194,4,0xf18c28},}) end _ENV['锁血'] = function() qmnb = { {["memory"] = 32}, {["name"] = "锁血"}, {["value"] = 1.5, ["type"] = 16}, {["lv"] = 2.0,["offset"] =-4, ["type"] = 16}, } qmxg = { {["value"] = 100,["offset"] =-4, ["type"] = 16}, {["value"] = -1,["offset"] =4, ["type"] = 4}, } xqmnb(qmnb) end _ENV['反开锁'] = function() qmnb = { {["memory"] = 32}, {["name"] = "强制结算"}, {["value"] = 200.0, ["type"] = 16}, {["lv"] = 100.0,["offset"] =-20, ["type"] = 16}, } qmxg = { {["value"] = 0.0,["offset"] =-24, ["type"] = 16}, } xqmnb(qmnb) end _ENV['美化'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500001',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601211',gg.TYPE_DWORD) gg.toast("疾跑美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500002',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600971',gg.TYPE_DWORD) gg.toast("皮卡美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500003',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600251',gg.TYPE_DWORD) gg.toast("侦查眼美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500004',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600906',gg.TYPE_DWORD) gg.toast("手雷美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500005',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602006',gg.TYPE_DWORD) gg.toast("医疗箱美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500006',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600116',gg.TYPE_DWORD) gg.toast("跳高美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500007',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601981',gg.TYPE_DWORD) gg.toast("生命护盾美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500008',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602026',gg.TYPE_DWORD) gg.toast("阻挡美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500200',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650631',gg.TYPE_DWORD) gg.toast("美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500300',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602126',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500400',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601691',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500500',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602106',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500600',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602021',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500700',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601776',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500800',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602011',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500900',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602111',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501000',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601676',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601696',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('502100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601836',gg.TYPE_DWORD) gg.toast("开启成功")gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500010',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒1级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500011',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒2级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500012',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒3级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500020',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500021',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500022',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500030',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500031',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500032',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500040',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500041',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500042',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500050',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500051',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500052',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500060',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500061',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500062',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500070',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500071',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500072',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪3美化成功") gg.toast("开启成功") end _ENV['武器间隔'] = function() local t = {"libil2cpp.so", "Cd"} local tt = {0x2130BC, 0x5C, 0x10, 0x5C, 0x5C} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 4, value = 0, freeze = true}}) toMusic("开启成功") gg.alert('开启成功') end _ENV['无后'] = function() nc_offset(getso("libil2cpp.so"),{{1,16,0xF46F34},})--无后 toMusic("开启成功") gg.alert('开启成功') end _ENV['女特工'] = function() xqmnb(qmnb) end _ENV['穿墙'] = function() qmnb = { {["memory"] = 32}, {["name"] = "穿墙"}, {["value"] = -10.0, ["type"] = 16}, {["lv"] = 49.0, ["offset"] = 20, ["type"] = 16}, } qmxg = { {["value"] = 999999, ["offset"] = 0, ["type"] = 16}, } xqmnb(qmnb) end _ENV['锁子'] = function() fastsearch({{76619324, 4, 16384}, {76619304, 4, 4}, {-382908368, 8, 4}, {-494030840, 12, 4}, {-442544008, 16, 4}, {-509591552, 20, 4}}, {{-516948194, 12, 4, false}, {-476053404, 8, 4, false}}) toMusic("开启成功") gg.alert('开启成功') end _ENV['奥博'] = function() qmnb = { {["memory"] = 32}, {["name"] = "机械之心范围+伤害+免费"}, {["value"] = 3.799999952316284, ["type"] = 16}, {["lv"] = 3.0,["offset"] =-20, ["type"] = 16}, } qmxg = { {["value"] = 99,["offset"] =-20, ["type"] = 16}, {["value"] = 1,["offset"] =68, ["type"] = 16}, {["value"] = 0,["offset"] =-0x8C, ["type"] = 4}, } xqmnb(qmnb) end _ENV['命石'] = function() qmnb = { {["memory"] = 32}, {["name"] = "抱摔高度+距离+伤害"}, {["value"] = 4.300000190734863, ["type"] = 16}, {["lv"] = -1.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 1.0,["offset"] =-8, ["type"] = 16}, {["lv"] = 3.0,["offset"] =-12, ["type"] = 16}, } qmxg = { {["value"] = 3.0,["offset"] =-100, ["type"] = 16}, {["value"] = 80.0,["offset"] =-96, ["type"] = 16}, {["value"] = 1.0,["offset"] =-84, ["type"] = 16}, } xqmnb(qmnb) end _ENV['小狮子'] = function() qmnb = { {["memory"] = 32}, {["name"] = "小狮子范围+伤害+免费"}, {["value"] = 1.850000023841858, ["type"] = 16}, {["lv"] = 0.6200000047683716,["offset"] =-4, ["type"] = 16}, {["lv"] = 0.5,["offset"] =-8, ["type"] = 16}, {["lv"] = 0.10000000149011612,["offset"] =-12, ["type"] = 16}, } qmxg = { {["value"] = 99,["offset"] =-24, ["type"] = 16}, {["value"] = 1,["offset"] =-0x1C, ["type"] = 16}, {["value"] = 0,["offset"] =-0x80, ["type"] = 4}, } xqmnb(qmnb) end _ENV['强制结算'] = function() qmnb = { {["memory"] = 32}, {["name"] = "强制结算"}, {["value"] = 200.0, ["type"] = 16}, {["lv"] = 100.0,["offset"] =-20, ["type"] = 16}, } qmxg = { {["value"] = 0.0,["offset"] =-24, ["type"] = 16}, } xqmnb(qmnb) end _ENV['视野范围'] = function() NH=gg.prompt({"输入你想改的视野(可进行多次修改)↓"},{[1]=""}) qmnb = { {["memory"] = 32}, {["name"] = "视野范围"}, {["value"] = 40.0, ["type"] = 16}, {["lv"] = 12.0,["offset"] =0x1C, ["type"] = 16}, } qmxg = { {["value"] = NH[1],["offset"] =0x1C, ["type"] = 16}, } xqmnb(qmnb) end _ENV['琪琪'] = function() qmnb = { {["memory"] = 32}, {["name"] = "琪琪技能"}, {["value"] = 8.407790785948902E-44, ["type"] = 16}, {["lv"] = 1.401298464324817E-45, ["offset"] = -8, ["type"] = 16}, {["lv"] = 1.0, ["offset"] = -4, ["type"] = 16}, } qmxg = { {["value"] = 0, ["offset"] = 0, ["type"] = 4}, {["value"] = 1, ["offset"] = -8, ["type"] = 16}, {["value"] = 0, ["offset"] = -4, ["type"] = 16}, } _ENV['女特工'] = function() xqmnb(qmnb) end qmnb = { {["memory"] = 32}, {["name"] = "特工技能"}, {["value"] = 0.30000001192092896, ["type"] = 16}, {["lv"] = 0.5,["offset"] =-4, ["type"] = 16}, {["lv"] = 50,["offset"] =-56, ["type"] = 4}, } qmxg = { {["value"] = 0,["offset"] =-56, ["type"] = 4}, {["value"] = 0,["offset"] =-60, ["type"] = 16}, } _ENV['改buff1'] = function() xqmnb(qmnb) end qmnb = { {["memory"] = 32}, {["name"] = "改buff"}, {["value"] = 1081291571, ["type"] = 4}, {["lv"] = 1581114487,["offset"] =-0x68, ["type"] = 4}, } qmxg = { {["value"] = 105,["offset"] =-0xC, ["type"] = 4}, } xqmnb(qmnb) end _ENV['艾克'] = function() qmnb = { {["memory"] = 32}, {["name"] = "艾可全屏禁攻"}, {["value"] = 0.30000001192092896, ["type"] = 16}, {["lv"] = 403, ["offset"] = -24, ["type"] = 4}, } qmxg = { {["value"] = 999, ["offset"] = -156, ["type"] = 4, ["freeze"] = true}, {["value"] = 0, ["offset"] = -148, ["type"] = 4, ["freeze"] = true}, {["value"] = 150, ["offset"] = -28, ["type"] = 16, ["freeze"] = true}, {["value"] = 10509, ["offset"] = -24, ["type"] = 4, ["freeze"] = true}, {["value"] = 0, ["offset"] = -12, ["type"] = 16, ["freeze"] = true}, {["value"] = 0, ["offset"] = -8, ["type"] = 16, ["freeze"] = true}, {["value"] = 0, ["offset"] = 0, ["type"] = 16, ["freeze"] = true}, } xqmnb(qmnb) toMusic("开启成功") gg.alert("开启成功") end _ENV['抱摔'] = function()--360 qmnb = { {["memory"] = 32}, {["name"] = "抱摔定人"}, {["value"] = 4.300000190734863, ["type"] = 16}, {["lv"] = -1.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 1.0,["offset"] =-8, ["type"] = 16}, {["lv"] = 3.0,["offset"] =-12, ["type"] = 16}, } qmxg = { {["value"] = 0,["offset"] =-88, ["type"] = 16}, } xqmnb(qmnb) end _ENV['星辰圣女'] = function()--360 qmnb = { {["memory"] = 32}, {["name"] = "圣女范围1"}, {["value"] = 2.5, ["type"] = 16}, {["lv"] = 8.0,["offset"] =-4, ["type"] = 16}, {["lv"] = 12.0,["offset"] =-8, ["type"] = 16}, {["lv"] = 1.0,["offset"] =4, ["type"] = 16}, {["lv"] = 4.0,["offset"] =-0x28, ["type"] = 16}, } qmxg = { {["value"] = 99,["offset"] =-4, ["type"] = 16}, } xqmnb(qmnb) qmnb = { {["memory"] = 32}, {["name"] = "圣女范围2"}, {["value"] = 0.6000000238418579, ["type"] = 16}, {["lv"] = 8.0,["offset"] =4, ["type"] = 16}, {["lv"] = 6.0,["offset"] =8, ["type"] = 16}, {["lv"] = 4.0,["offset"] =12, ["type"] = 16}, } qmxg = { {["value"] = 99,["offset"] =4, ["type"] = 16}, } xqmnb(qmnb) end _ENV['小骇客'] = function()--360 qmnb = { {["memory"] = 32}, {["name"] = "小骇客技能数量+免费"}, {["value"] = 8.407790785948902E-44, ["type"] = 16}, {["lv"] = 1.401298464324817E-45, ["offset"] = -8, ["type"] = 16}, {["lv"] = 1.0, ["offset"] = -4, ["type"] = 16}, } qmxg = { {["value"] = 0, ["offset"] = 0, ["type"] = 4}, {["value"] = 9999, ["offset"] = -8, ["type"] = 16}, } xqmnb(qmnb) end _ENV['黎明盾位'] = function()--360 u=gg.prompt({"输入你的当前60主技能的冷却"},{15.0},{"number"}) qmnb = { {["memory"] = 32}, {["name"] = "超进化黎明吨位范围拉人"}, {["value"] = 0.800000011920929, ["type"] = 16}, {["lv"] = u[1], ["offset"] = -124, ["type"] = 16}, {["lv"] = 60, ["offset"] = -120, ["type"] = 4}, {["lv"] = 1.25, ["offset"] = -8, ["type"] = 16}, } qmxg = { {["value"] = 0, ["offset"] = -124, ["type"] = 16, ["freeze"] = false}, {["value"] = 0, ["offset"] = -120, ["type"] = 4, ["freeze"] = false}, {["value"] = 99, ["offset"] = -8, ["type"] = 16, ["freeze"] = false}, } xqmnb(qmnb) end _ENV['魔术师'] = function()--360 qmnb = { {["memory"] = 32}, {["name"] = "超进化魔术师"}, {["value"] = 30.0, ["type"] = 16}, {["lv"] = 100, ["offset"] = 64, ["type"] = 4}, } qmxg = { {["value"] = 0, ["offset"] = 64, ["type"] = 4, ["freeze"] = true}, } xqmnb(qmnb) end _ENV['星辰圣女'] = function()--360 qmnb = { {["memory"] = 32}, {["name"] = "星辰普攻 瞬移,无间隔,"}, {["value"] = 0.30000001192092896, ["type"] = 16}, {["lv"] = 0.5, ["offset"] = -4, ["type"] = 16}, {["lv"] = 7.5, ["offset"] = 4, ["type"] = 16}, {["lv"] = 0.6000000238418579, ["offset"] = 8, ["type"] = 16}, } qmxg = { {["value"] = 0.4, ["offset"] = -4, ["type"] = 16, ["freeze"] = false}, {["value"] = 100, ["offset"] = 0, ["type"] = 16, ["freeze"] = false}, {["value"] = 1, ["offset"] = 4, ["type"] = 16, ["freeze"] = false}, {["value"] = 0, ["offset"] = 8, ["type"] = 16, ["freeze"] = false}, } xqmnb(qmnb) end _ENV['艾克2'] = function() qmnb = { {["memory"] = 32}, {["name"] = "超进化艾可"},--免费cd落地时间 {["value"] = 50.0, ["type"] = 16}, {["lv"] = 1, ["offset"] = -140, ["type"] = 4}, {["lv"] = 80, ["offset"] = -132, ["type"] = 4}, {["lv"] = 0.800000011920929, ["offset"] = 8, ["type"] = 16}, } qmxg = { {["value"] = 520, ["offset"] = -140, ["type"] = 4, ["freeze"] = false}, {["value"] = 0, ["offset"] = -132, ["type"] = 4, ["freeze"] = false}, {["value"] = 0, ["offset"] = 8, ["type"] = 16, ["freeze"] = false}, } xqmnb(qmnb) end _ENV['影忍'] = function() qmnb = { {["memory"] = 32}, {["name"] = "影范围"}, {["value"] = 0.20000000298023224, ["type"] = 16}, {["lv"] = 1.0, ["offset"] = -4, ["type"] = 16}, } qmxg = { {["value"] = 99, ["offset"] = -4, ["type"] = 16, ["freeze"] = false}, } xqmnb(qmnb) end _ENV['360解封'] = function()--360 local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.qihoo/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['4399解封'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.m4399/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['九游'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.uc/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['百度'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.g.baidu/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['OPPO'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.nearme.gamecenter/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['小米'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.mi/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['VIVO'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.vivo/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['应用宝'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.tencent.tmgp.bairimeng.dmmdzz/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['好游快爆'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['魅族'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.mz/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['华为'] = function() local jincheng=gg.getTargetInfo() local mingcheng=jincheng["label"] local baoming=gg.getTargetPackage() local queding if mingcheng~="..mingcheng.." then local xuanze=gg.alert("当前进程:"..mingcheng.."!\n请确认此进程是框架进程\n是否继续?","继续","返回") if xuanze==1 then queding=true end if xuanze==2 then Main0() return false end else queding=true end if queding==true then local File="/storage/emulated/0/Android/data/"..baoming.."/gameplugins/com.bairimeng.dmmdzz.huawei/files/VirtualUniqueDeviceID.txt" if io.open(File)~=nil then local xieru=math.random(111111111,999999999) io.open(File,"w"):write(xieru) gg.toast("写入成功。") local shanchu=gg.alert("文件写入成功!请重启游戏即可!") else gg.alert("检测到目标文件不存在!无法修改文件!") end end end _ENV['出生点'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{4.79341316223,-212,16},{4.50854158401,-204,16}}) end _ENV['禁闭室'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{43.43095779419,-212,16},{19.70534706116,-204,16}}) end _ENV['逃生点'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{86.59527587891,-212,16},{38.43141555786,-204,16}}) end _ENV['锁1'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{8.40417480469,-212,16},{30.41175842285,-204,16}}) end _ENV['锁2'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{25.5557384491,-212,16},{35.01443862915,-204,16}}) end _ENV['锁3'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{40.48873519897,-212,16},{28.41207695007,-204,16}}) end _ENV['锁4'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{56.48946380615,-212,16},{35.36185073853,-204,16}}) end _ENV['锁5'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{25.46974754333,-212,16},{19.14470291138,-204,16}}) end _ENV['锁6'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{58.46561813354,-212,16},{16.30953407288,-204,16}}) end _ENV['锁7'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{84.58843231201,-212,16},{10.42553901672,-204,16}}) end _ENV['锁8'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{34.43569946289,-212,16},{5.32143163681,-204,16}}) end _ENV['锁9'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{50.61042404175,-212,16},{2.46119451523,-204,16}}) end _ENV['锁10'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{69.50844573975,-212,16},{5.45300483704,-204,16}}) end _ENV['上门'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{65.45124053955,-212,16},{33.24272537231,-204,16}}) end _ENV['中门'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{72.46097564697,-212,16},{22.39505767822,-204,16}}) end _ENV['下门'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{80.53405761719,-212,16},{18.30999183655,-204,16}}) end _ENV['一键传送'] = function() fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{8.40417480469,-212,16},{30.41175842285,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{25.5557384491,-212,16},{35.01443862915,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{40.48873519897,-212,16},{28.41207695007,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{56.48946380615,-212,16},{35.36185073853,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{25.46974754333,-212,16},{19.14470291138,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{58.46561813354,-212,16},{16.30953407288,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{84.58843231201,-212,16},{10.42553901672,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{34.43569946289,-212,16},{5.32143163681,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{50.61042404175,-212,16},{2.46119451523,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{69.50844573975,-212,16},{5.45300483704,-204,16}}) astsearch({{0.37499997023,16,32},{-10,-152,16}},{{8.40417480469,-212,16},{30.41175842285,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{25.5557384491,-212,16},{35.01443862915,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{40.48873519897,-212,16},{28.41207695007,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{56.48946380615,-212,16},{35.36185073853,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{25.46974754333,-212,16},{19.14470291138,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{58.46561813354,-212,16},{16.30953407288,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{84.58843231201,-212,16},{10.42553901672,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{34.43569946289,-212,16},{5.32143163681,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{50.61042404175,-212,16},{2.46119451523,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{69.50844573975,-212,16},{5.45300483704,-204,16}}) fastsearch({{0.37499997023,16,32},{-10,-152,16}},{{72.46097564697,-212,16},{22.39505767822,-204,16}}) end _ENV['观战开门[开启]'] = function() kqorgb_offset(getso("libil2cpp.so"),{{-3669594108,4,-0xb7bc28},}) toMusic("开启成功") gg.alert('开启成功') end _ENV['观战开门[关闭]'] = function() kqorgb_offset(getso("libil2cpp.so"),{{-3829807408,4,-0xb7bc28},}) toMusic("开启成功") gg.alert('开启成功') end _ENV['全员金币[单次]'] = function() gg.alert("请在出场动画时开启!") kqorgb_offset(getso("libil2cpp.so"),{{-353640949,4,0x13a5e38},}) gg.sleep(3000)--延迟3秒 kqorgb_offset(getso("libil2cpp.so"),{{-382907280,43,0x13a5e38},}) kqorgb_offset(getso("libil2cpp.so"),{{-369097175,40,0x13a5e38},}) kqorgb_offset(getso("libil2cpp.so"),{{-382907280,41,0x13a5e38},}) toMusic("开启成功") gg.alert('开启成功') end _ENV['自身金币[单次]'] = function() kqorgb_offset(getso("libil2cpp.so"),{{-353640949,4,0x13a5e38},}) gg.sleep(3000)--延迟3秒 kqorgb_offset(getso("libil2cpp.so"),{{-382907280,4,0x13a5e38},}) toMusic("开启成功") gg.alert('开启成功') end _ENV['直接逃生[单次]'] = function() kqorgb_offset(getso("libil2cpp.so"),{{-3690979842,4,0x13a5e38},}) kqorgb_offset(getso("libil2cpp.so"),{{-3829072880,4,0x13a5e38},}) toMusic("开启成功") gg.alert('开启成功') end _ENV['人物复活[单次]'] = function() kqorgb_offset(getso("libil2cpp.so"),{{-3690918196,4,0x13a5e38},}) kqorgb_offset(getso("libil2cpp.so"),{{-3829072860,4,0x13a5e38},}) toMusic("开启成功") gg.alert('开启成功') end _ENV['自用角色'] = function() qf= gg.prompt({"无间隔","无后座","锁子弹","时间"},nil,{"checkbox","checkbox","checkbox","checkbox"}) if qf ~= nil then if qf[1] then search(1089470464, 4, 32) py1(1050253722, 4, -4) py1(65536, 4, 152) xg1(0, 4, -12, true) gg.toast("无间隔") end if qf[2] then search(1089470464, 4, 32) py1(1050253722, 4, -4) py1(65536, 4, 152) xg1(0, 16, -8, false) gg.toast("无后座") end if qf[3] then search(1089470464, 4, 32) py1(1050253722, 4, -4) py1(65536, 4, 152) xg1(0, 4, 24, true) xg1(0, 4, 28, true) gg.toast("锁子弹") end if qf[4] then hj=gg.prompt({[1]="输入你要改的持续时间"}, {[1]=""}, {[1]="number"}) if hj==nil then else search(1082130432, 4, 32) py1(1084227584, 4, 20) py1(1065353216, 4, 72) xg1(hj[1], 16, -4, false) gg.toast("已修改为"..hj[1].."持续时间") gg.alert("开启成功") end end end end _ENV['强制结算'] = function() qmnb = { {["memory"] = 32}, {["name"] = "强制结算"}, {["value"] = 200.0, ["type"] = 16}, {["lv"] = 100.0,["offset"] =-20, ["type"] = 16}, } qmxg = { {["value"] = 0.0,["offset"] =-24, ["type"] = 16}, } xqmnb(qmnb) end _ENV['稳定无间'] = function() fastsearch({ {1065017672,4,32}, {256,-80,4}, }, {{0,0,4,true}},"666") toMusic("开启成功") gg.alert("开启成功") end _ENV['解锁锁位'] = function() BaseAddressD(0x1088b88,'-476053504') toMusic("开启成功") gg.alert("开启成功") end _ENV['道具卡一键美化'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500001',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601211',gg.TYPE_DWORD) gg.toast("疾跑美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500002',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600971',gg.TYPE_DWORD) gg.toast("皮卡美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500003',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600251',gg.TYPE_DWORD) gg.toast("侦查眼美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500004',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600906',gg.TYPE_DWORD) gg.toast("手雷美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500005',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602006',gg.TYPE_DWORD) gg.toast("医疗箱美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500006',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600116',gg.TYPE_DWORD) gg.toast("跳高美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500007',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601981',gg.TYPE_DWORD) gg.toast("生命护盾美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500008',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602026',gg.TYPE_DWORD) gg.toast("阻挡美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500200',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650631',gg.TYPE_DWORD) gg.toast("美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500300',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602126',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500400',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601691',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500500',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602106',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500600',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602021',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500700',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601776',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500800',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602011',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500900',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602111',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501000',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601676',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601696',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('502100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601836',gg.TYPE_DWORD) gg.toast("开启成功")gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500010',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒1级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500011',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒2级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500012',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒3级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500020',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500021',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500022',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500030',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500031',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500032',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500040',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500041',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500042',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500050',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500051',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500052',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500060',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500061',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500062',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500070',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500071',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500072',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪3美化成功") gg.toast("开启成功") end _ENV['美化1'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500002',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650071',gg.TYPE_DWORD) gg.toast("皮卡风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500004',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650261',gg.TYPE_DWORD) gg.toast("手雷风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500005',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650681',gg.TYPE_DWORD) gg.toast("医疗箱风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500007',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650121',gg.TYPE_DWORD) gg.toast("生命护盾风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500008',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650161',gg.TYPE_DWORD) gg.toast("阻挡箱风格美花成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500200',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650461',gg.TYPE_DWORD) gg.toast("巡逻犬风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500300',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650771',gg.TYPE_DWORD) gg.toast("肾上腺素风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500400',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650281',gg.TYPE_DWORD) gg.toast("酒桶风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500500',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650766',gg.TYPE_DWORD) gg.toast("飞爪风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500600',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650211',gg.TYPE_DWORD) gg.toast("传送门风格成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500700',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650081',gg.TYPE_DWORD) gg.toast("自走球风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500800',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650441',gg.TYPE_DWORD) gg.toast("毒液风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500900',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650171',gg.TYPE_DWORD) gg.toast("滑板风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501000',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650141',gg.TYPE_DWORD) gg.toast("魔法墙风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650051',gg.TYPE_DWORD) gg.toast("引力场风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501200',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650651',gg.TYPE_DWORD) gg.toast("治疗求风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501300',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650686',gg.TYPE_DWORD) gg.toast("气垫风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501400',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650391',gg.TYPE_DWORD) gg.toast("捣蛋风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501500',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650481',gg.TYPE_DWORD) gg.toast("追踪雷风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501600',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650411',gg.TYPE_DWORD) gg.toast("震荡波风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501700',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650776',gg.TYPE_DWORD) gg.toast("飞机风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501800',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650561',gg.TYPE_DWORD) gg.toast("时光机风格美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500010',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650756',gg.TYPE_DWORD) gg.toast("火箭筒风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500011',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650756',gg.TYPE_DWORD) gg.toast("火箭筒风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500012',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650756',gg.TYPE_DWORD) gg.toast("火箭筒风格3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500020',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650761',gg.TYPE_DWORD) gg.toast("破击炮风格美化1成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500021',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650761',gg.TYPE_DWORD) gg.toast("破击炮风格美化2成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500022',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650761',gg.TYPE_DWORD) gg.toast("破击炮风格美化3成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500040',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650401',gg.TYPE_DWORD) gg.toast("能亮剑风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500041',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650401',gg.TYPE_DWORD) gg.toast("能亮剑风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500042',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650401',gg.TYPE_DWORD) gg.toast("能亮剑风格3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500050',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650616',gg.TYPE_DWORD) gg.toast("蹦蹦枪风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500051',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650616',gg.TYPE_DWORD) gg.toast("蹦蹦枪风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500052',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650616',gg.TYPE_DWORD) gg.toast("蹦蹦枪风格3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500060',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650671',gg.TYPE_DWORD) gg.toast("能量炮风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500061',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650671',gg.TYPE_DWORD) gg.toast("能量炮风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500062',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650671',gg.TYPE_DWORD) gg.toast("能量炮风格3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500070',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650741',gg.TYPE_DWORD) gg.toast("霰弹枪风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500071',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650741',gg.TYPE_DWORD) gg.toast("霰弹枪风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500072',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650741',gg.TYPE_DWORD) gg.toast("霰弹枪风格3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500090',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650781',gg.TYPE_DWORD) gg.toast("霸天夫风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500091',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650781',gg.TYPE_DWORD) gg.toast("霸天夫风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500092',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650781',gg.TYPE_DWORD) gg.toast("霸天夫风格3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('502300',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650696',gg.TYPE_DWORD) gg.toast("换风标风格1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('502301',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650696',gg.TYPE_DWORD) gg.toast("换风标风格2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('502302',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650696',gg.TYPE_DWORD) gg.toast("换风标风格3美化成功") gg.toast("开启成功") end _ENV['美化2'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500001',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601211',gg.TYPE_DWORD) gg.toast("疾跑美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500002',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600971',gg.TYPE_DWORD) gg.toast("皮卡美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500003',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600251',gg.TYPE_DWORD) gg.toast("侦查眼美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500004',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600906',gg.TYPE_DWORD) gg.toast("手雷美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500005',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602006',gg.TYPE_DWORD) gg.toast("医疗箱美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500006',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600116',gg.TYPE_DWORD) gg.toast("跳高美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500007',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601981',gg.TYPE_DWORD) gg.toast("生命护盾美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500008',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602026',gg.TYPE_DWORD) gg.toast("阻挡美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500200',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('650631',gg.TYPE_DWORD) gg.toast("美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500300',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602126',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500400',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601691',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500500',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602106',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500600',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602021',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500700',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601776',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500800',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602011',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500900',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602111',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501000',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601676',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('501100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601696',gg.TYPE_DWORD) gg.toast("开启成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('502100',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601836',gg.TYPE_DWORD) gg.toast("开启成功")gg.clearResults() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500010',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒1级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500011',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒2级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500012',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('600016',gg.TYPE_DWORD) gg.toast("火箭筒3级美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500020',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500021',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500022',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602116',gg.TYPE_DWORD) gg.toast("破击炮3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500030',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500031',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500032',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602136',gg.TYPE_DWORD) gg.toast("冲锋枪3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500040',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500041',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500042',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601076',gg.TYPE_DWORD) gg.toast("能量剑3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500050',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500051',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500052',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('602041',gg.TYPE_DWORD) gg.toast("蹦蹦枪3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500060',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500061',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500062',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601896',gg.TYPE_DWORD) gg.toast("能量炮3美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500070',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪1美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500071',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪2美化成功") gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber('500072',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber('',gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.getResults(100) gg.editAll('601941',gg.TYPE_DWORD) gg.toast("霰弹枪3美化成功") gg.toast("开启成功") end _ENV['想念讲话'] = function() gg.toast("正在播放:想念讲话") gg.playMusic("http://chuxinya.top/view.php/b1a1b785eccbedf716497e40b810d4e4.mp3") end _ENV['装逼专用'] = function() gg.toast("正在播放:摸不透你的心") gg.playMusic("http://chuxinya.top/view.php/33a236adb5bcdbfbc1010340fc44f6c4.mp3") end _ENV['夜色·DJ'] = function() gg.toast("正在播放:夜色DJ") gg.playMusic("http://chuxinya.top/view.php/50af5a257fcfb95d12a5753383df4613.mp3") end _ENV['伤感心做'] = function() gg.toast("正在播放:小雾神模式已启动") gg.playMusic("http://chuxinya.top/view.php/031ce8c910dfe22b2e2dbedcefc609f9.mp3") end _ENV['英文歌曲'] = function() gg.toast("正在播放:tama-为你保驾护航") gg.playMusic("http://chuxinya.top/view.php/2f8d64101041b35299d6e9907db6d1fd.mp3") end _ENV['寂寞烟火'] = function() gg.toast("正在播放:寂寞烟火0.8") gg.playMusic("http://chuxinya.top/view.php/064f28244b4befa62dfe994e966656d0.mp3") end _ENV['背起行囊'] = function() gg.toast("正在播放:背起了行囊") gg.playMusic("http://chuxinya.top/view.php/2f3aab5307713d69024fa685310c99a8.mp3") end _ENV['Мокрые'] = function() gg.toast("正在播放:Мокрые英文歌曲") gg.playMusic("https://cccimg.com/view.php/b14a4d61ba8d70758275c715dc969ec7.mp3") end _ENV['让风别来'] = function() gg.toast("正在播放:别让风停下来") gg.playMusic("https://cccimg.com/view.php/1bae3250f8ded9795615ae8e929c6b4f.mp3") end _ENV['深情咚鼓'] = function() gg.toast("正在播放:深情咚鼓版") gg.playMusic("https://cccimg.com/view.php/c1a3c31ff9513c04d293579fb3601e74.mp3") end _ENV['男刀'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=563129860.mp3") end _ENV['自听'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=29999128.mp3") end _ENV['起风了'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1330348068.mp3") end _ENV['你看到的我'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1377530437.mp3") end _ENV['江南'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=22956421.mp3") end _ENV['遗失的心跳'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=26127565.mp3") end _ENV['高级成长指南'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1962060311.mp3") end _ENV['我们'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1500157594.mp3") end _ENV['妈妈的话'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=518725853.mp3") end _ENV['心如止水'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1928002636.mp3") end _ENV['ikun'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1960595909.mp3") end _ENV['隔岸'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1471064193.mp3") end _ENV['孤勇者'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1901371647.mp3") end _ENV['把回忆拼好给你'] = function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1403318151.mp3") end _ENV['停止播放'] = function() gg.toast("正在停止音乐") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end _ENV['霸天斧连发'] = function() NH=gg.prompt({"输入霸天斧连发(可多次修改↓)"},{[1]=""}) fastsearch({{1114636288, 32, 32}, {0, 12, 4}, {0, 16, 4}, {0, 20, 4}, {1.2000000476837158, 24, 16}, {1008981770, 28, 4}}, {{NH[1], 8, 4, false}})end _ENV['冲锋枪连发'] = function() NH=gg.prompt({"输入冲锋枪连发(可多次修改↓)"},{[1]=""}) fastsearch({{1092616192, 32, 32}, {1028443341, 12, 4}, {1056964608, 16, 4}, {1060320051, 20, 4}, {0, 24, 4}}, {{NH[1], 8, 4, false}})end _ENV['自动手枪连发'] = function() NH=gg.prompt({"输入自动手枪连发(可多次修改↓)"},{[1]=""}) fastsearch({{1097859072, 32, 32}, {1032805417, 12, 4}, {1060320051, 16, 4}, {1060320051, 20, 4}, {0, 24, 4}}, {{NH[1], 8, 4, false}})end _ENV['能量腕炮连发'] = function() NH=gg.prompt({"输入能量腕炮1级连发(可多次修改↓)"},{[1]=""}) fastsearch({{1112539136, 32, 32}, {1067030938, 16, 4}, {1067030938, 20, 4}, {1050253722, 28, 4}}, {{NH[1], 8, 4, false}, {0, 24, 16, false}})end _ENV['火箭筒连发'] = function() NH=gg.prompt({"输入火箭筒连发(可多次修改↓)"},{[1]=""}) fastsearch({{1113587712, 32, 32}, {1056964608, 16, 4}, {1061997773, 20, 4}, {1065353216, 28, 4}}, {{NH[1], 8, 4, false}, {0, 24, 16, false}})end _ENV['蹦蹦枪连发'] = function() Nh=gg.alert("蹦蹦枪","普通","金库","大乱斗新地图") if Nh==1 then NH=gg.prompt({"输入蹦蹦枪连发(可多次修改↓)"},{[1]=""}) fastsearch({{1115947008, 32, 32}, {1067030938, 16, 4}, {1067030938, 20, 4}, {1050253722, 28, 4}}, {{NH[1], 8, 4, false}, {0, 24, 16, false}}) end if Nh==2 then NH=gg.prompt({"输入金库蹦蹦枪连发(可多次修改↓)"},{[1]=""}) fastsearch({{1116733440, 32, 32}, {1067030938, 16, 4}, {1067030938, 20, 4}, {1050253722, 28, 4}}, {{NH[1], 8, 4, false}, {0, 24, 16, false}}) end if Nh==3 then NH=gg.prompt({"输入大乱斗新地图蹦蹦枪连发(可多次修改↓)"},{[1]=""}) fastsearch({{1115684864, 32, 32}, {1067030938, 16, 4}, {1067030938, 20, 4}, {1050253722, 28, 4}}, {{NH[1], 8, 4, false}, {0, 24, 16, false}}) end end _ENV['电球抢连发'] = function() NH=gg.prompt({"输入电球枪连发(可多次修改↓)"},{[1]=""}) fastsearch({{1115815936, 32, 32}, {0, 12, 4}, {1060320051, 20, 4}, {0, 24, 4}, {0, 28, 4}}, {{NH[1], 8, 4, false}, {0, 16, 16, false}})end ---------------------------------------分界线------------------------------------- floatingWindowManager:newWindow(('一心内置'):format(floatingWindowManager.version), { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_margin = '10dp', background="https://cccimg.com/view.php/e100b019b3c0f0ad6ff6caf96cf0b00d.", layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '10dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '选择进程', textSize = '16sp', onClick = function() gg.setProcessX() end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '游戏设置', textSize = '16sp', onClick = function() floatingWindowManager:start('游戏设置') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '逃生区1', textSize = '16sp', onClick = function() floatingWindowManager:start('逃生区1') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '变态区', textSize = '16sp', onClick = function() floatingWindowManager:start('变态区') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '追捕区2', textSize = '16sp', onClick = function() floatingWindowManager:start('追捕区2') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '角色', textSize = '16sp', onClick = function() floatingWindowManager:start('角色') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '解封', textSize = '16sp', onClick = function() floatingWindowManager:start('解封') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '传送', textSize = '16sp', onClick = function() floatingWindowManager:start('传送') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '控制台', textSize = '16sp', onClick = function() floatingWindowManager:start('控制台') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '作者自用1', textSize = '16sp', onClick = function() floatingWindowManager:start('作者自用1') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '武器', textSize = '16sp', onClick = function() floatingWindowManager:start('武器') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '秒赢', textSize = '16sp', onClick = function() floatingWindowManager:start('秒赢') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '美化', textSize = '16sp', onClick = function() floatingWindowManager:start('美化') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '连发功能', textSize = '16sp', onClick = function() floatingWindowManager:start('连发功能') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '5dp', text = '音乐', textSize = '16sp', onClick = function() floatingWindowManager:start('音乐') end }, } }) end, onDestroy = function() gg.alert('一心提示:您已退出本辅助') 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 = '10dp', newSwitchLayout('防闪'), newSwitchLayout('防封'), newSwitchLayout('防追封'), newSwitchLayout('张豪全防'), newSwitchLayout('打榜防'), newSwitchLayout('防检测'), newSwitchLayout('防举报'), newSwitchLayout('全防'), newSwitchLayout('去除检测'), } }) end }) floatingWindowManager:newWindow('逃生区1', { --这个名字可以改掉 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 = '10dp', newSwitchLayout('稳定一套'), newSwitchLayout('全员刷钱'), newSwitchLayout('移动开物'), newSwitchLayout('角色技能免费'), newSwitchLayout('倒地结算[30秒开]'), newSwitchLayout('圣女技能'), newSwitchLayout('41吸人'), newSwitchLayout('82吸人'), newSwitchLayout('逃生一件套'), newSwitchLayout('加血'), newSwitchLayout('解锁锁位') } }) 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 = '10dp', newSwitchLayout('武器间隔'), newSwitchLayout('无后'), newSwitchLayout('道具无cd'), newSwitchLayout('反开锁'), newSwitchLayout('医疗箱范围'), newSwitchLayout('锁子'), newSwitchLayout('奥博技能'), newSwitchLayout('刷钱'), newSwitchLayout('刷钱'), newSwitchLayout('强制结算'), newSwitchLayout('美化'), newSwitchLayout('锁血'), newSwitchLayout('全员祭天'), } }) end }) floatingWindowManager:newWindow('追捕区2', { 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 = '10dp', newSwitchLayout('追捕透视'), newSwitchLayout('追捕移速'), newSwitchLayout('追捕视野'), newSwitchLayout('追捕全局加速'), newSwitchLayout('穿墙'), } }) 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 = '10dp', newSwitchLayout('奥博'), newSwitchLayout('命石'), newSwitchLayout('小狮子'), newSwitchLayout('角色技能免费'), newSwitchLayout('视野范围'), newSwitchLayout('琪琪'), newSwitchLayout('艾克'), newSwitchLayout('琪琪'), newSwitchLayout('女特工'), newSwitchLayout('改buff1'), newSwitchLayout('小狮子2'), newSwitchLayout('抱摔'), newSwitchLayout('圣女'), newSwitchLayout('小骇客'), newSwitchLayout('黎明盾位'), newSwitchLayout('魔术师'), newSwitchLayout('星辰圣女'), newSwitchLayout('艾克2'), newSwitchLayout('影忍'), } }) 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 = '10dp', newSwitchLayout('360解封'), newSwitchLayout('4399解封'), newSwitchLayout('九游'), newSwitchLayout('百度'), newSwitchLayout('OPPO'), newSwitchLayout('小米'), newSwitchLayout('VIVO'), newSwitchLayout('应用宝'), newSwitchLayout('好游快爆'), newSwitchLayout('魅族'), newSwitchLayout('华为'), } }) 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 = '10dp', newSwitchLayout('出生点'), newSwitchLayout('禁闭室'), newSwitchLayout('逃生点'), newSwitchLayout('锁1'), newSwitchLayout('锁2'), newSwitchLayout('锁3'), newSwitchLayout('锁4'), newSwitchLayout('锁5'), newSwitchLayout('锁6'), newSwitchLayout('锁7'), newSwitchLayout('锁8'), newSwitchLayout('锁9'), newSwitchLayout('锁10'), newSwitchLayout('上门'), newSwitchLayout('中门'), newSwitchLayout('下门'), newSwitchLayout('一键传送'), newSwitchLayout('出生点'), newSwitchLayout('禁闭室'), newSwitchLayout('逃生点'), newSwitchLayout('左上'), newSwitchLayout('左下'), newSwitchLayout('右上'), newSwitchLayout('右下'), newSwitchLayout('上门'), newSwitchLayout('下门'), newSwitchLayout('一键') } }) 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 = '10dp', newSwitchLayout('观战开门[开启]'), newSwitchLayout('观战开门[关闭]'), newSwitchLayout('全员金币[单次]'), newSwitchLayout('自身金币[单次]'), newSwitchLayout('直接逃生[单次]'), newSwitchLayout('人物复活[单次]'), newSwitchLayout('触发天赋[单次]') } }) end }) floatingWindowManager:newWindow('作者自用1', { 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 = '10dp', newSwitchLayout('稳定无间'), newSwitchLayout('无后座'), newSwitchLayout('包范围'), newSwitchLayout('吸人'), newSwitchLayout('自用角色'), } }) 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 = '10dp', newSwitchLayout('换风标范围'), newSwitchLayout('稳定无间'), newSwitchLayout('吸人'), newSwitchLayout('自用角色'), } }) 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 = '10dp', newSwitchLayout('道具卡一键美化'), newSwitchLayout('强制结算'), newSwitchLayout('吸人'), newSwitchLayout('自用角色'), } }) 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 = '10dp', newSwitchLayout('道具卡一键美化'), newSwitchLayout('美化1'), newSwitchLayout('美化2'), newSwitchLayout('自用角色'), } }) 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 = '10dp', newSwitchLayout('蹦蹦枪连发'), newSwitchLayout('火箭筒连发'), newSwitchLayout('能量腕炮连'), newSwitchLayout('霸天斧连发'), newSwitchLayout('冲锋枪连发'), newSwitchLayout('自动手枪连发'), newSwitchLayout('电球枪连发'), } }) 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 = '10dp', newSwitchLayout('想念讲话'), newSwitchLayout('装逼专用'), newSwitchLayout('夜色·DJ'), newSwitchLayout('伤感心做'), newSwitchLayout('英文歌曲'), newSwitchLayout('寂寞烟火'), newSwitchLayout('背起行囊'), newSwitchLayout('深情咚鼓'), newSwitchLayout('男刀'), newSwitchLayout('自听'), newSwitchLayout('起风了'), newSwitchLayout('你看到的我'), newSwitchLayout('江南'), newSwitchLayout('遗失的心跳'), newSwitchLayout('高级成长指南'), newSwitchLayout('我们'), newSwitchLayout('妈妈的话'), newSwitchLayout('心如止水'), newSwitchLayout('ikun'), newSwitchLayout('隔岸'), newSwitchLayout('孤勇者'), newSwitchLayout('把回忆拼好给你'), newSwitchLayout('停止播放'), } }) end }) -- 运行悬浮窗 floatingWindowManager:run()