解说社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 663|回复: 1

[原创] 分享一个自己制作的插件。多种点击的集合。包括自动点击,循环点击,连续点击v2.3

[复制链接]
发表于 2023-9-8 21:33:22 来自手机 | 显示全部楼层 |阅读模式
本帖最后由 hoibo 于 2023-9-8 21:42 编辑

这原先是解说里面代码扩展的功能。由于之前要把参数写在代码文件里面,比较麻烦。现在我制作编辑框和点击按钮的形式,操作起来比较简单。同时也有复制代码的按钮,只要写好关键字和次数。复制代码后新建插件粘贴进去,以后就可以用自己的插件了。
这里有三个功能。第1个是自动点击。跟我们平时用的自动点击一样,就是多个按钮按次序依次点击。第2个是循环点击。这个跟自动点击不同。自动点击是一组。点击完毕就停止,这个你可以理解为一组一组循环。比如你要点击abc,这三个按钮要依次反复循环,循环这三个按钮10次,这样就用到这个循环点击了。无限循环还可以用在监测屏幕上。比如微信抢红包这种。他检测到微信红包关键字,然后就循环依次点击微信红包和开两个按钮。第3种是连续点击,连续点击同一个地方若干次。比如点赞这种。
第1个编辑框是输入关键字用的,一行一个,也可以用 百分号 功能。第2个编辑框是输入次数用的,是次数循环才用输入。第3个编辑框是无限循环的间隔时间。是每一次与每一次的间隔时间。建议不要设置太快。t太快可能会刹不住车。以毫秒为单位。这里默认是1秒。
然后下面是一组一组按钮。左边的是执行功能,右边的是复制代码。然后下面是两个按钮。第1个是无限循环按钮。点击后要手动结束循环。再次打开插件,结束循环。最好设置一个手势,方便开始关闭。第2个按钮是次数循环用的。这里你在第2个编辑框输入的次数,他循环到这个次数会自动停止。
右边的按钮是复制代码用的。下面是连续点击的按钮。第1个是极速点击。他是默认点击当前的位置。速度是读屏定义好的,只需要输入次数就可以了。第2个是自定义连续点击。这个可以自定义次数和间隔的时间。第3个是关键字点击。这里可以输入关键字。次数和间隔时间都可以设置。




  来自解说社区客户端
回复

使用道具 举报

 楼主| 发表于 2023-9-8 21:34:14 来自手机 | 显示全部楼层
本帖最后由 hoibo 于 2023-9-8 21:40 编辑

require "import"
import "com.androlua.Ticker"
import "android.widget.*"
import "android.view.*"
import "android.graphics.Rect"
local p=Rect()
if ti then
ti.stop()
service.speak("停止")
ti=nil
return true
end
layout=
{
LinearLayout,
orientation=1,
layout_width=-1,
layout_height=-1,
{
EditText,
hint="输入关键字",
HintTextColor='#ffffff00',
Gravity="center_horizontal",
id="e1",
textColor="#ffffff00",
layout_width=-1,
layout_height="10%h",
layout_weight=1,
},
{
EditText,
hint="次数",
HintTextColor='#ffffff00',
Gravity="center_horizontal",
id="e2",
textColor="#ffffff00",
layout_width=-1,
layout_height="10%h",
inputType="number",
layout_weight=1,
},
{
EditText,
text="1000",
hint="次数的间隔时间(以毫秒为单位)",
HintTextColor='#ffffff00',
id="e3",
Gravity="center_horizontal",
textColor="#ffffff00",
layout_width=-1,
layout_height="10%h",
inputType="number",
layout_weight=1,
},
{LinearLayout,
layout_width=-1,
layout_height=-1,
layout_weight=1,
{Button,
text="自动点击",
onClick="zddj",
textColor="#ffffff00",
layout_width=-1,

layout_weight=1,},
{Button,
text="复制自动点击代码",
onClick="fzzddjdm",
textColor="#ffffff00",
layout_width=-1,

layout_weight=1,},
},
{LinearLayout,
layout_width=-1,
layout_height=-1,
layout_weight=1,
{Button,
text="无限循环,再次启动插件停止",
onClick="wxxh",
textColor="#ffffff00",
layout_width=-1,

layout_weight=1,},
{Button,
text="复制无限循环代码",
onClick="fzwxxhdm",
textColor="#ffffff00",
layout_width=-1,

layout_weight=1,},
},
{LinearLayout,
layout_width=-1,
layout_height=-1,
layout_weight=1,
{Button,
text="开始次数循环",
onClick="csxh",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
{Button,
text="复制次数循环代码",
onClick="fzcsxhdm",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
},
{LinearLayout,
layout_width=-1,
layout_height=-1,
layout_weight=1,
{Button,
text="极速连续点击",
onClick="jslxdj",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
{Button,
text="复制极速连续点击代码",
onClick="fzjslxdjdm",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
},
{LinearLayout,
layout_width=-1,
layout_height=-1,
layout_weight=1,
{Button,
text="自定义连续点击",
onClick="zdylxdj",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
{Button,
text="复制自定义连续点击代码",
onClick="fzzdylxdjdm",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
},
{LinearLayout,
layout_width=-1,
layout_height=-1,
layout_weight=1,
{Button,
text="关键字连续点击",
onClick="gjzlxdj",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
{Button,
text="复制关键字连续点击代码",
onClick="fzgjzlxdjdm",
textColor="#ffffff00",
layout_width=-1,
layout_weight=1,},
},
}
dlg=LuaDialog()
.setView(loadlayout(layout))
.show()
function wxxh()
if e1.text==""
print("请输入关键字")
else
dlg.hide()
ti=Ticker()
ti.Period=tonumber(e3.text)
ti.onTick=function()
local t,str={},e1.text or ""
for s in str:gmatch"[^\n]+"
table.insert(t,s)
end
if #t>0
service.click({t})
end
end
ti.start()
service.speak("开始")
end
end
function csxh()
if e2.text==""
print("请输入循环次数")
else
dlg.hide()
local t,str={},e1.text or ""
for s in str:gmatch"[^\n]+"
table.insert(t,s)
end
点击列表=t
按钮列表={}
function append(t1,t2)
for k,v in ipairs(t2) do
table.insert(t1,v)
end
end
for n=1,tonumber(e2.text) do
append(按钮列表,点击列表)
end
task(500,function()
if service.click({按钮列表}) then
return true
end
end)
end
end
function fzcsxhdm()
if e1.text=="" or e2.text==""
print("请输入关键字和次数")
else
dlg.hide()
local t,str={},e1.text or ""
for s in str:gmatch"[^\n]+"
table.insert(t,"\""..s.."\",")
end
service.copy("点击列表={{{"..table.concat(t).."}}}\n按钮列表={}\nfunction append(t1,t2)\nfor k,v in ipairs(t2) do\ntable.insert(t1,v)\nend\nend\nfor n=1,"..tonumber(e2.text).." do\nappend(按钮列表,点击列表)\nend\nif service.click({按钮列表})\nreturn true\nend")
end
end
function fzwxxhdm()
if e1.text==""
print("请输入关键字")
else
dlg.hide()
local t,str={},e1.text or ""
for s in str:gmatch"[^\n]+"
table.insert(t,"\""..s.."\",")
end
service.copy("require \"import\"\nimport \"com.androlua.Ticker\"\nif ti then\nti.stop()\n  service.speak(\"停止\")\n  ti=nil\n  return true\nend\nti=Ticker()\nti.Period="..tonumber(e3.text).."\nti.onTick=function()\nservice.click({{"..table.concat(t).."}})\nend\nti.start()\nservice.speak(\"开始\")\nreturn true")
end
end
function jslxdj()
if e2.text==""
print("请输入点击次数")
else
dlg.hide()
node.getBoundsInScreen(p)
service.click({{"["..string.format("%.0f,%.0f",(p.left+(p.right-p.left)/2),(p.top+(p.bottom-p.top)/2))..","..e2.text..",".."10]"}})
end
end
function gjzlxdj()
if e1.text==""
print("请输入点击关键字")
else
dlg.hide()
task(500,function()
service.click({{"*"..e1.text.."*<"..e2.text.."$"..e3.text}})
end)
end
end
function zdylxdj()
if e2.text==""
print("请输入点击次数")
else
dlg.hide()
node.getBoundsInScreen(p)
service.click({{"["..string.format("%.0f,%.0f",(p.left+(p.right-p.left)/2),(p.top+(p.bottom-p.top)/2)).."]<"..e2.text.."$"..e3.text}})
end
end
function zddj()
if e1.text==""
print("请输入关键字")
else
dlg.hide()
local t,str={},e1.text or ""
for s in str:gmatch"[^\n]+"
table.insert(t,s)
end
task(500,function()
service.click({t})
end)
end
end
function fzzddjdm()
if e1.text==""
print("请输入关键字")
else
dlg.hide()
local t,str={},e1.text or ""
for s in str:gmatch"[^\n]+"
table.insert(t,"\""..s.."\",")
end
service.copy("service.click({{"..table.concat(t).."}})\nreturn true")
end
end
function fzjslxdjdm()
if e2.text==""
print("请输入点击次数")
else
dlg.hide()
node.getBoundsInScreen(p)
service.copy("require\"import\"\nimport \"android.graphics.Rect\"\nlocal p=Rect()\nnode.getBoundsInScreen(p)\nservice.click({{\"["..string.format("%.0f,%.0f",(p.left+(p.right-p.left)/2),(p.top+(p.bottom-p.top)/2))..","..e2.text..",".."10]\"}})\nreturn true")
end
end
function fzzdylxdjdm()
if e2.text==""
print("请输入次数")
else
dlg.hide()
node.getBoundsInScreen(p)
service.copy("require \"import\"\nimport \"android.graphics.Rect\"\nlocal p=Rect()\nnode.getBoundsInScreen(p)\nservice.click({{\"["..string.format("%.0f,%.0f",(p.left+(p.right-p.left)/2),(p.top+(p.bottom-p.top)/2)).."]<"..e2.text.."$"..e3.text.."}})\nreturn true")
end
end
function fzgjzlxdjdm()
if e1.text=="" or e2.text==""
print("请输入关键字和次数")
else
dlg.hide()
service.copy("service.click({{\"*"..e1.text.."*<"..e2.text.."$"..e3.text.."\"}})\nreturn true")
end
end
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|解说社区

GMT+8, 2024-11-23 07:01 , Processed in 0.042098 second(s), 14 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表