zm.FindStrTableYouTu 优图找字遍历

文章目录
  1. 1. 功能
  2. 2. 语法
  3. 3. 参数
  4. 4. 返回值
  5. 5. 示例
  6. 6. 备注

功能

zm.FindStrYouTu 优图找字类似, 参数只有一个对象数组, 可实现遍历参数的键值对象进行查找

语法

结果 = zm.FindStrTableYouTu([对象table])

参数

参数 数据类型 解释
对象table table zm.FindStrYouTu 优图找字的对象参数放入table数组中, 实现遍历找字

返回值

table, 找到返回结果保存到表中, 格式为{"success":找到数量, "fail":没找到数量, "键名":{id, x, y, name, "id":id, "x":x, "y":y, "name":name, "miss":miss}, ...}, 没找到或失败返回null

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Import "zm.luae" //导入插件,只需执行一次
zm.Init //初始化插件,只需执行一次

If zm.OcrYouTuInit("请修改成你的AppID", "请修改成你的AppKey") Then
TracePrint "设置优图AI识别成功"
Else
TracePrint "设置优图AI识别失败"
End If

Dim 打怪(), Boss坐标()
打怪["史莱姆"] = {"史莱姆", true}
打怪["黑龙"] = {100,200,300,400, "黑龙", true}
打怪["紫猫BOSS"] = {"帅气的紫猫老师", Boss坐标} //这个不点击, 并返回值保存在Boss坐标中

//遍历打怪数组, 返回每个对象成员的结果
Dim t = zm.FindStrTableYouTu(打怪)
If t Then
TracePrint "找到了", t["success"], "个对象"
TracePrint "没找到", t["fail"], "个对象"
If t["史莱姆"] Then
TracePrint "找到史莱姆, 坐标为", t["史莱姆"]["x"], t["史莱姆"]["y"]
End If
Else
TracePrint "所有对象都没有找到"
End If

If Boss坐标(0) > -1 Then
TracePrint "紫猫BOSS对象里的返回参数依旧有效"
End If

备注

  • 本命令调用腾讯优图OCR的识别功能, 与百度云识别相比, 目前优图OCR完全免费使用
  • 本命令只适合正常屏幕方向使用, 横屏情况推荐使用zm.FindStrBaiDu 百度云找字
  • 获取优图AppID和AppKey的步骤:
    • 前往腾讯AI官网注册并登录
    • 打开控制台
    • 点击创建应用, 并输入相关资料, 记得勾选全部OCR接口
    • 查看刚刚创建的应用, 就可以查到AppID和AppKey
  • V3.1839: 加入命令
  • V3.1849: 支持超级缩放