|
楼主 |
发表于 2011-10-16 17:59:04
|
显示全部楼层
河南省郑州市
本帖最后由 无声的雨 于 2011-10-16 18:13 编辑
pppploi8 发表于 2011-10-16 16:42
做好了,很简单
顺带一说,因为不想写 十六到十 ,所以偷了下懒,直接用了模块,和源码放在一起
超级(防 ...
[e].版本 2
.支持库 spec
待处理文本 = 字节集_到十六进制 (新字节集)
' 首先把待处理文本的空格全部去掉
.判断循环首 (寻找文本 (待处理文本, “ ”, , 假) ≠ -1) ' 寻找空格,找不到就跳出循环
Q1 = 寻找文本 (待处理文本, “ ”, , 假)
待处理文本 = 文本替换 (待处理文本, Q1, 1, “”)
.判断循环尾 ()
' 接下来分割。首先是第一段第一个位置
Q1 = 寻找文本 (待处理文本, “003F0101”, , 假) ' 固定值
' 现在要取这段后面的数字,然后转换进制
Q1 = Q1 + 取文本长度 (“003F0101”)
第一段长度 = 取文本中间 (待处理文本, Q1, 2)
' 不想写十六到十,直接用模块转换算了
Q1 = Q1 + 2
长度 = 十六到十 (第一段长度, )
p角色名1 = 到文本 (十六进制文本到字节集 (取文本中间 (待处理文本, Q1, 长度 × 2))) ' 角色1的角色名称
Q1 = Q1 + 取文本长度 (取文本中间 (待处理文本, Q1 + 2, 长度 × 2))
角色1等级 = 到文本 (到十进制 (取文本中间 (待处理文本, Q1, 2))) ' 角色1的等级
Q1 = Q1 + 4 ' 因为04位数不变,把Q1位置移动到90 04的后面
pHP上限1 = 到十进制 (取文本中间 (待处理文本, Q1 + 2, 2) + 取文本中间 (待处理文本, Q1, 2)) ' 角色1的HP上限
Q1 = Q1 + 8 ' 理由同上
pHP当前1 = 到十进制 (取文本中间 (待处理文本, Q1 + 2, 2) + 取文本中间 (待处理文本, Q1, 2)) ' 角色1当前的HP
Q1 = Q1 + 8 ' 理由同上
pSP上限1 = 到十进制 (取文本中间 (待处理文本, Q1 + 2, 2) + 取文本中间 (待处理文本, Q1, 2)) ' 角色1的SP上限
Q1 = Q1 + 8 ' 理由同上
pSP当前1 = 到十进制 (取文本中间 (待处理文本, Q1 + 2, 2) + 取文本中间 (待处理文本, Q1, 2)) ' 角色1的SP上限
Q1 = Q1 + 16 ' 理由同上
飘币 = 到十进制 (取文本中间 (待处理文本, Q1 + 4, 2) + 取文本中间 (待处理文本, Q1 + 2, 2) + 取文本中间 (待处理文本, Q1, 2)) ' 角色1的飘流币
编辑框1.加入文本 (#换行符)
' 第一段读取完成
' 第二段的分割线=========
Q1 = Q1 + 6 ' 先把位置移动到末尾
Q1 = Q1 + 27 × 2 ' 已知第一段到第二段位置固定27位
编辑框1.加入文本 (“第二段,角色数值02不取,从08(位数)开始”)
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 2 ' 跳过02
长度 = 十六到十 (取文本中间 (待处理文本, Q1, 2))
Q1 = Q1 + 2
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 长度 × 2))
调试输出 (取文本中间 (待处理文本, Q1, 长度 × 2))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 长度 × 2
' 然后取04两次,按长度取
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 2))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 2
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 2))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 2
' 04后面的四位数字
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 4))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 8
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 4))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 8
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 4))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 8
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 4))
编辑框1.加入文本 (#换行符)
Q1 = Q1 + 8 × 2
编辑框1.加入文本 (取文本中间 (待处理文本, Q1, 6))
编辑框1.加入文本 (#换行符)
' 结束了!如果不是你第二段要比第一段多取一个位置的话不用这么麻烦,而且还能用循环自动读取有几个角色(01 02 03数值判断)
[/e]
我写成这样后第二段的获取有问题了,是不是位数出错了呢?
|
|