KMScript.comDIGITIZED as KMScript
- 概念
- 变量表示一个可变的量,例如 $姓名,每一个人都有姓名这个变量其值也都不相同。与之对应的是不可变的常量,例如 012345
- 定义并使用一个变量的意义在与随着脚本的运行会改变它的值,并指示脚本根据这个值的不同进行不同的跳转
- 变量名称固定以 $ 起始
- 变量由 保存变量函数或特定支持保存变量的处理函数提供,提供给特定函数作为可变的参数或由“变量检查”以提供判断,由“变量表达式”以提供计算
- 变量永久存在,为了回收内存应当以空值调用保存变量
- 变量自动类型转换,例如字符串 "1" 在作为函数的参数,但该函数需要数字型会自动转换为数字1
- 变量可以用在大部分不限定类型的输入项代替相关值,例如 $a 的值为 1,那么在图像查找的 x/y/高/宽 等等输入项都可以使用这个 $a 代替具体数字
- 变量类型
- 字符型
- 脚本里可直接引用,如 $a
- 数字型
- 脚本里可直接引用,同上
- 整形数字取值范围 -9223372036854775808 到 9223372036854775807
- 大部分参数取值范围限定 -2147483648 到 2147483647
- 浮点型数字取值范围 4.9E-324 到 1.7976931348623157E308
- 天文型数字取值范围 整形 * 268435455.875 能表示的所有数字
- 此类型变量不能参与“变量表达式”
- 数组型
- 例如 $a 是一维数组 [1, 2, 3] 则访问它可经由索引号,访问 $a[0] 即得到 1
- 如果数组型访问而未提供索引,则得到其长度,例如 $a 得到 3
- 借由此方法可用“变量表达式”对索引自增,后经“变量检查”判断索引是否已到达长度实现遍历
- 索引编号从0开始,例如 $a[0]、$a[$b]、$a[0][$c]、$a[$b][$c][$d] 都是可以的,但索引不能再包括索引所以 $a[$b[0]] 不可以
- 又如二维数组 [[2,3,4], [5,6,7]] 则访问它一样经由索引号,访问 $a[0][1] 即得到 3
- 数组可以是任意多维且不限类型,例如 ["up", 2, [3, 4]] 也是可以的,访问 $a[0] 即得到 up 访问 $a[2][1] 即得到 4
- 其中字符串部分必须用引号括起来,如同 JSON Array 格式其空格/换行也可以任意多个均会忽略
- 可以使用“保存变量”等函数修改特定索引的值,例如保存的变量为 $a[0] 变量值为 2
- 坐标型
- 始终为一维数组拥有2个索引,其 [0] 为 x 坐标值,其 [1] 为 y 坐标值
- 例如变量名 $a 是一个坐标 [3,4] 那么在脚本里的任意函数的 x 处可填入 $a[0] 作为其需要的值
- 方块型
- 在坐标型基础上增加索引2和3,即 [2] 为宽度值,其 [3] 为高度值
- 其它说明同上
- 图像型
- 脚本可以在任意需要图像文件的参数里使用,即可以填入任意需要图像文件的地方代替作为图像文件
- 例如查找颜色函数可以提取特定颜色边框的特定颜色内容,比如黑色边框的白色字,并保存为一个图像变量例如 $img
- 在其它任何图像函数例如图像查找函数“匹配的文件”处填入该值,即可代替成为图像文件
- 利用此方法可以在特定步骤中分离出特定内容作为特征,在之后的其它环境中提取并查找其所在位置
- 比如在交易时查找特定区域(比如胸牌区域、游戏里的名称区域)里黑色边框的白色字保存成为一个变量
- 以后即可用图像查找在图像源找出该变量图像所在坐标,并往该方向移动即可实现目标跟随或其它以此目标的操作
- 图像型也接受索引访问,例如 $img 其高宽为 100*100,索引访问时其0和1为别为宽和高,即可用变量检查判断它的宽度,例如 $img[0] > 90
- D2模型
- D2应用的专有类型,是一个不规则2D形状描述格式,可被用于支持模型的函数
- D2模型组
- 包含多个D2模型的专有类型,可被过滤和提取
- 也可以经由索引访问获得其中一个,例如使用“保存变量”等函数从模型组中提取特定一个模型 $D2A[0] 到 $D2 变量
- 模型组是一个队列,在经由索引访问时需要模拟因此性能不佳
- D3模型
- D3应用的专有类型,是一个不规则3D形状描述格式,可被用于支持模型的函数
- D3模型组
- 如同 D2 模型组为多个D3模型的专有类型
- 用户脚本变量
- 原始需求
- 开发者实现了某个应用程序的登录和部分代替人工的操作
- 但部分参数例如用户名需要用户输入,而 kmscript 没有与用户交互的功能
- 那么这个用户名即不能写死在脚本中也不能提供 kms 源文件给用户编辑,因此需要一套方案让用户能够设置这些值
- 解决方案
- 在 W3C 配置中有一个脚本变量,该值可以由用户填入,如同其它变量一样可被脚本读取
- 变量值支持以上所有类型,其变量名固定为 $KEY_1013_SCRIPT_OPTIONS,例如值为 [1,2,3] 则在脚本可以 $KEY_1013_SCRIPT_OPTIONS[0] 得到 1
- 此处还特殊支持以下几种类型
- 字符等式格式,如
$用户名=aabbcc
访问它直接引用其名称,即 $用户名 - JSON Object 格式,如
{ "$用户名": "aabbcc", "$用户码": "ccddee" }
访问它直接引用其名称,即 $用户名和 $用户码
- 其它约定
- HTTP、POP3 等等网络协议响应的内容如同用户脚本变量
骨骼配置:ui,值:li_tag