1.         延时 500 毫秒
  2.         令 dtime = dtime + 1
  3.     循环结束
  4.     令 maxdelay = maxdelay / 2
  5.     令 d2state = getD2State()
  6.     注释:如果状态在毁灭王座,则表示成功
  7.     如果 d2state = 3 则
  8.         令 stateinfo = "成功进入-尼拉塞克"
  9.         令 inTPdoor = 1
  10.     否则
  11.         令 stateinfo = "进入失败—退出游戏"
  12.         令 inTPdoor = 0
  13.         exitGame()
  14.     条件结束
  15.     显示信息()
  16. 函数结束
  17. 子程序 显示信息
  18.     令 stateinfo1 = "Diablo-第" & xx & "次自动KP-" & stateinfo
  19.     调用 Window.SetText(d2_Hwnd,stateinfo1)
  20.     注释: Call Plugin.Msg.Tips(stateinfo1)
  21. 子程序结束
  22. 子程序 ATTACK
  23.     令 stateinfo = "杀老皮"
  24.     显示信息()
  25.     从左上到右下查找图片 "Attachment:\/闪电无效.bmp",把找到的坐标保存到 (intX, intY),指定区域(左:d2_pyx + 550 - 250 上:d2_pyy + 200 - 200 右:d2_pyx + 550 + 250 下:d2_pyy + 200 + 200),相似度 0.9
  26.     如果 intX > 0 则
  27.         令 isdanger = 1
  28.         令 stateinfo = "闪电无效,打不过退出"
  29.         调用 File.WriteFileEx("zdkp_log.txt",ow & ":第" & xx & "次KP,闪电无效,打不过退出")
  30.     否则
  31.         (键盘)按 akhotkey 键, 1次
  32.         延时 100 毫秒
  33.         令 i = 0
  34.         循环开始
  35.             从左上到右下查找图片 "Attachment:\暴躁外皮.bmp",把找到的坐标保存到 (intX, intY),指定区域(左:d2_pyx + 550 - 250 上:d2_pyy + 200 - 200 右:d2_pyx + 550 + 250 下:d2_pyy + 200 + 200),相似度 0.6
  36.             注释:i<20+int(rnd*5)
  37.             如果 INTX > 0 则
  38.                 令 isdanger = dangerBack()
  39.                 如果 isdanger = 0 则
  40.                     延时 30 + int(rnd * 5) 毫秒
  41.                     (鼠标)移动到 (d2_pyx + 600, d2_pyy + 130)
  42.                     延时 10 毫秒
  43.                     (鼠标)右键单击, 1次
  44.                     延时 10 毫秒
  45.                     注释: i = i + 1
  46.                 否则
  47.                     跳出循环
  48.                 条件结束
  49.             否则
  50.                 跳出循环
  51.             条件结束
  52.         循环结束
  53.     条件结束
  54. 子程序结束
  55. 函数 getD2State()
  56.     注释:判断游戏角色状态
  57.     注释:----------------------------------------------------------------//
  58.     注释: state
  59.     注释: 1:大厅
  60.     注释: 2:哈勒加斯
  61.     注释: 3:尼拉塞克
  62.     注释: 4:超时错误
  63.     注释:----------------------------------------------------------------//
  64.     令 dtime = 0
  65.     循环开始
  66.         注释:MoveTo d2_pyx+61,d2_pyy+552
  67.         注释:判断是否在游戏中
  68.         (语句无法识别,可能有错误): FindColor d2_pyx+61,d2_pyy+552,d2_pyx+81,d2_pyy+572,"1CC40C",intX,intY //血上面的绿色ping
  69.         (语句无法识别,可能有错误): FindColor d2_pyx+190,d2_pyy+80,d2_pyx+220,d2_pyy+90,"AC5050",intX1,intY1 //大厅左上角蓝色字
  70.         如果 (intX > 0 并且 intY > 0) 并且 (intx1 <= 0 并且 inty1 <= 0) 则
  71.             注释:游戏中
  72.             令 GetColor = 得到指定点 (d2_pyx + 136, d2_pyy + 566) 的颜色
  73.             如果 GetColor = "485058" 则
  74.                 (语句无法识别,可能有错误): getD2State=3 //尼拉塞克
  75.                 令 stateinfo = "已成功进入尼拉塞克"
  76.             否则
  77.                 (语句无法识别,可能有错误): getD2State=2 //在哈勒加斯
  78.                 令 stateinfo = "哈勒加斯"
  79.             条件结束
  80.             跳出循环
  81.         条件结束
  82.         如果 (intX <= 0 并且 intY <= 0) 并且 (intx1 > 0 并且 inty1 > 0) 则
  83.             注释:大厅中
  84.             (语句无法识别,可能有错误): getD2State=1 //大厅中
  85.             令 stateinfo = "大厅"
  86.             跳出循环
  87.         条件结束
  88.         如果 dtime >= maxDelay * 2 则
  89.             令 getD2State = 4
  90.             跳出循环
  91.             令 stateinfo = "超时"
  92.         条件结束
  93.         令 dtime = dtime + 1
  94.         延时 500 毫秒
  95.     循环结束
  96.     注释:显示信息
  97. 函数结束
  98. 子程序 exitGame()
  99.     如果 isdanger = 0 则
  100.         令 stateinfo = "退出游戏"