TC官方合作论坛

 找回密码
 立即注册
查看: 732|回复: 2
打印 上一主题 下一主题

[问题] 绕晕了 帖子有点长 麻烦大家耐心看下

[复制链接]
跳转到指定楼层
楼主
发表于 2012-11-12 15:55:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


3D游戏  挖宝 我是用找字的方式找到宝箱
但是如果遇到1个以上宝箱就可能点到别人宝箱
我又不能把自己的名字添加到字库里
VIP群了有人建议我用扩展找字
下面是扩展找字的返回值

  1. 返回值:
  2. 字符串:
  3. 返回所有找到的坐标集合,格式如下:
  4. "id,x0,y0|id,x1,y1|......|id,xn,yn"
  5. 比如"0,100,20|2,30,40" 表示找到了两个,第一个,对应的是序号为0的字符串,坐标是(100,20),第二个是序号为2的字符串,坐标(30,40)

复制代码

我的代码 写了一半 写不下去了
  1. 功能 整型 宝箱()

  2. dm.SetPath(辅助.获取资源路径("rc:"))
  3. 字符型 找字
  4. 整型 X,Y     //这是找图用的X,Y 可以忽略
  5. 整型 X1,Y1,X2,Y2,X3,Y3,X4,Y4,X5,Y5 // 设定游戏屏幕最多5个宝箱
  6. dm.KeyDown(81)     //转一下视角
  7. 辅助.等待(1000)
  8. dm.KeyUp(81)

  9. 遍历(10)
  10. 找字=dm.FindStrEx(0,0,1024,768,"古","fdfd9a-101010",1.0)
  11. 辅助.等待(100)
  12. 如果 (字符串.长度(找字)<3)  // 如果没找到 转视角 接着找 重复10次
  13. dm.KeyDown(81)
  14. 辅助.等待(1000)
  15. dm.KeyUp(81)
  16. 否则
  17. 跳出
  18. 如果结束
  19. 遍历结束
  20. 如果 (字符串.查找字符串(找字,"|")!=-1)  //  查看字符串里是否有"|"   如果有就证明不是一个宝箱而是多个宝箱 要分割字符串
  21. 字符型[] 返回串
  22. 字符串.分割(找字,"|",返回串)
  23. 整型 c1
  24. 数组.大小(返回串,c1)
  25. 选择 (c1)    //到底找到几个宝箱,感觉这里用选择 不太对劲
  26. 条件 2:
  27. 字符型[] 返回串1
  28. 字符串.分割(返回串[0],",",返回串1)
  29. X1=转换.字符型转整型(返回串1[1])
  30. Y1=转换.字符型转整型(返回串1[2])
  31. X2=转换.字符型转整型(返回串1[4])
  32. Y2=转换.字符型转整型(返回串1[5])
  33. dm.MoveTo(X1+20,Y1)// 点击一下找到的第一个宝箱
  34. 辅助.等待(100)
  35. dm.LeftClick()
  36. 辅助.等待(1500)
  37. 整型 找图=dm.FindPic(0,0,2000,2000,"进度条.bmp","000000",0.9,0,X,Y) //找图的目的是判断 点击的是不是我自己的宝箱,如果是会出现打开宝箱的进度条
  38. 如果 (找图==-1)  没找到 去点第二个, 但是这里就碰见问题了,去点击第一个宝箱的时候,人物坐标就会移动,所以剩下的X2,Y2,X3,Y3的坐标位置也就没用了,下面代码忽略吧
  39. dm.MoveTo(X2+20,Y2)
  40. 辅助.等待(100)
  41. dm.LeftClick()
  42. 辅助.等待(1500)
  43. 整型 找图=dm.FindPic(0,0,2000,2000,"进度条.bmp","000000",0.9,0,X,Y)
  44. 如果 (找图==-1)
  45. 辅助.等待(11000)
  46. 挖宝.拾取()
  47. 条件 3:
  48. 字符型[] 返回串1
  49. 字符串.分割(返回串[0],",",返回串1)
  50. X1=转换.字符型转整型(返回串1[1])
  51. Y1=转换.字符型转整型(返回串1[2])
  52. X2=转换.字符型转整型(返回串1[4])
  53. Y2=转换.字符型转整型(返回串1[5])
  54. X3=转换.字符型转整型(返回串1[7])
  55. Y3=转换.字符型转整型(返回串1[8])
  56. 条件 4:
  57. 字符型[] 返回串1
  58. 字符串.分割(返回串[0],",",返回串1)
  59. X1=转换.字符型转整型(返回串1[1])
  60. Y1=转换.字符型转整型(返回串1[2])
  61. X2=转换.字符型转整型(返回串1[4])
  62. Y2=转换.字符型转整型(返回串1[5])
  63. X3=转换.字符型转整型(返回串1[7])
  64. Y3=转换.字符型转整型(返回串1[8])
  65. X4=转换.字符型转整型(返回串1[10])
  66. Y4=转换.字符型转整型(返回串1[11])
  67. 条件 5:
  68. 字符型[] 返回串1
  69. 字符串.分割(返回串[0],",",返回串1)
  70. X1=转换.字符型转整型(返回串1[1])
  71. Y1=转换.字符型转整型(返回串1[2])
  72. X2=转换.字符型转整型(返回串1[4])
  73. Y2=转换.字符型转整型(返回串1[5])
  74. X3=转换.字符型转整型(返回串1[7])
  75. Y3=转换.字符型转整型(返回串1[8])
  76. X4=转换.字符型转整型(返回串1[10])
  77. Y4=转换.字符型转整型(返回串1[11])
  78. X5=转换.字符型转整型(返回串1[13])
  79. Y5=转换.字符型转整型(返回串1[14])
  80. 选择结束
  81. 如果结束
  82. dm.MoveTo(X+20,Y)
  83. 辅助.等待(100)
  84. dm.LeftClick()
  85. 辅助.等待(11000)
  86. 挖宝.拾取()
  87. 返回 0
  88. 功能结束
复制代码

不知道咋搞了
写挖宝的这个脚本已经很多天了
总能碰见这样烦心的问题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

沙发
发表于 2012-11-12 16:11:19 | 只看该作者
一个个箱子摸过去,打不开会有提示的吧,一直到打开了就跳出。或是把自己的名字加上,直接找词组。
回复 支持 反对

使用道具 举报

板凳
发表于 2012-11-13 19:54:46 | 只看该作者
就是应该找完整的标题,xxx发现的宝箱,然后再根据相对坐标找到宝箱。
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-10-9 08:09 , Processed in 0.141516 second(s), 25 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

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