.版本 2
.支持库 iext
.子程序 遍历职业技能
.局部变量 i, 整数型
.局部变量 等级, 整数型
.局部变量 名称, 文本型
.局部变量 总名称, 文本型
.局部变量 索引s, 整数型
超级列表框_遍历技能.全部删除 ()
i = 十六到十 (“3000”)
.判断循环首 (i ≤ 十六到十 (“6000”))
等级 = 解密数值 (读写3类.读代码 (进程ID, #人物基址 + “+” + 十到十六 (i)) + 十六到十 (#技能等级偏移)) ' 等级偏移5DC或590
名称 = 转换Unicode转Ansi (读写3类.读字节集 (进程ID, 读写3类.读代码 (进程ID,
#人物基址 + “+” + 十到十六 (i) + “+” + #技能名称偏移), 55)) ' 名称44
.如果真 (等级 ≥ 0 且 名称 ≠ “” 且 寻找文本 (名称, “不使用”, , 假) = -1 且 寻找文本 (总名称, 名称, , 假) = -1 且 寻找文本 (名称, “?”, , 假) = -1 且 等级 ≤ 100)
' 这里判断了一些没用的内容,去除了等级低于0的,乱码的文本,并且设置了总名称来排除重复的
索引s = 超级列表框_遍历技能.插入表项 (, , , , , )
' 给超级列表框插入一行,但是,因为是不在窗口程序集中,所以组件前边必须加上窗口名
超级列表框_遍历技能.置标题 (索引s, 0, 名称)
' 超级列表框第一列,显示名称
超级列表框_遍历技能.置标题 (索引s, 1, 到文本 (等级))
' 超级列表框第二列,显示等级
超级列表框_遍历技能.置标题 (索引s, 2, 十到十六 (i))
' 超级列表框第三列,显示偏移,但是因为表项宽度设置为了0,所以这一行不可见
总名称 = 总名称 + #换行符 + 名称
' 把名称加入到总的里面,用来去除重复
.如果真结束
i = i + 4
' 每次循环偏移+4
.判断循环尾 ()