节奏大师自动按键脚本源码
2017-10-17 19:41:08

节奏大师自动按键脚本源码 支持单键和长按

作者:feiyu7878


已写完的功能 单键和长按,是在模拟器720*1280分辨率上取得色
今天突然兴趣来了写的,花了我半天的时间,最后发现以我现在的水平很难写的很完美
而且网上已经有节奏大师的脚本了,我还是不写了
最后源码放上给你们


  1. function main()

  2. while true do

  3.   keepScreen(true) 

  4.         --找单键颜色

  5.   local ax, ay = findColorInRegionFuzzy(0x26d3cd, 80, 120,129, 170,346); 

  6.   local bx, by = findColorInRegionFuzzy(0x26d3cd, 80, 120,396, 170,622); 

  7.   local cx, cy = findColorInRegionFuzzy(0x26d3cd, 80, 120,667, 170,869); 

  8.   local dx, dy = findColorInRegionFuzzy(0x26d3cd, 80, 120,952, 170,1132); 

  9.   

  10.   if ay~= -1 or  by ~= -1 or cy ~= -1 or dy ~= -1 then

  11.     if ay~= -1 then

  12.       tap(90,176)

  13.     end

  14.     if by~= -1 then

  15.       tap(91,484)

  16.     end

  17.     if cy~= -1 then

  18.       tap(90,795)

  19.     end

  20.     if dy~= -1 then

  21.       tap(90,1106)

  22.     end

  23.   end

  24.   绿色()

  25.   keepScreen(false)

  26.   mSleep(10)

  27. end

  28. end



  29. function 长按(x,y)

  30. local intx,inty,inty1,inty2

  31. local index = math.random(1,5)

  32. local intx1,intx2 = -1,-1


  33. touchDown(index,x+index, y+index)

  34. for i=1,50 do

  35.   intx,inty = findColorInRegionFuzzy(0xfdfdfd, 90,x,y-10, x+30,y+10)

  36.   if inty == -1 and i>=2 then

  37.     break;

  38.   end

  39.   keepScreen(false)

  40.   mSleep(10)

  41.   keepScreen(true)

  42. end


  43. --if y<350 then      这里是长按左右移动的代码,还没有写好

  44. --  --右

  45. --  intx2,inty2 = findColorInRegionFuzzy(0x8de229, 90,x-10,y+50, x+10,y+120)

  46. --elseif y > 940 then

  47. --  --左

  48. --  intx1,inty1 = findColorInRegionFuzzy(0x8de229, 90,x-10,y-100, x+10,y)

  49. --else

  50. --  --左

  51. --  intx1,inty1 = findColorInRegionFuzzy(0x8de229, 90,x-10,y-120, x+10,y-50)

  52. --  --右

  53. --  intx2,inty2 = findColorInRegionFuzzy(0x8de229, 90,x-10,y+50, x+10,y+120)

  54. --end

  55. --if intx1 > -1 or intx2 >-1 then

  56. --        sysLog("11")

  57. --  if intx1 > -1 then

  58. --for i=1,50 do

  59. --  intx,inty = findColorInRegionFuzzy(0xfdfdfd, 90,x,y-10, x+30,y+10)

  60. --  if inty == -1 and i>=2 then

  61. --    break;

  62. --  end

  63. --  keepScreen(false)

  64. --  mSleep(10)

  65. --  keepScreen(true)

  66. --end


  67. --touchMove(index,x+index, y+index-250)


  68. --for p=1,50 do

  69. --  intx,inty = findColorInRegionFuzzy(0xfdfdfd, 90,intx1-10,inty1-30, intx1+20,inty1+10)

  70. --  if inty == -1 and p>=2 then

  71. --    break;

  72. --  end

  73. --  keepScreen(false)

  74. --  mSleep(10)

  75. --  keepScreen(true)

  76. --end

  77. --touchUp(index, x+index, y+index-250)

  78. --return 0

  79. --end

  80.         

  81.         

  82. --        if intx2 > -1 then

  83. --        touchDown(index,x+index, y+index)

  84. --for i=1,50 do


  85. --  intx,inty = findColorInRegionFuzzy(0xfdfdfd, 90,x,y-10, x+30,y+10)

  86. --  if inty == -1 and i>=2 then

  87.         

  88. --    break;

  89. --  end

  90. --  keepScreen(false)

  91. --  mSleep(10)

  92. --  keepScreen(true)

  93. --end


  94. --touchMove(index,x+index, y+index+250)


  95. --for p=1,50 do

  96. --  intx,inty = findColorInRegionFuzzy(0xfdfdfd, 90,intx2,inty2-10, intx2+30,inty2+10)

  97. --  if inty == -1 and p>=2 then

  98. --    break;

  99. --  end

  100. --  keepScreen(false)

  101. --  mSleep(10)

  102. --  keepScreen(true)

  103. --end

  104. --touchUp(index, x+index, y+index+250)

  105. --return 0

  106. --        end

  107. --        end

  108. touchUp(index, x+index, y+index)


  109. end



  110. function 绿色() --长按

  111. --找长按颜色

  112. local ax, ay = findColorInRegionFuzzy(0x8de229, 90, 140,129, 180,346); 

  113. local bx, by = findColorInRegionFuzzy(0x8de229, 90, 140,396, 180,622); 

  114. local cx, cy = findColorInRegionFuzzy(0x8de229, 90, 140,667, 180,869); 

  115. local dx, dy = findColorInRegionFuzzy(0x8de229, 90, 140,952, 180,1132); 

  116. if ay~= -1 or  by ~= -1 or cy ~= -1 or dy ~= -1 then

  117.   if ay~= -1 then

  118.     长按(90,176)

  119.   end

  120.   if by~= -1 then

  121.     长按(91,484)

  122.   end

  123.   if cy~= -1 then

  124.     长按(90,795)

  125.   end

  126.   if dy~= -1 then

  127.     长按(90,1106)

  128.   end

  129. end

  130. end


  131. function 按键(y1,y2,y3,y4)

  132. local n=0

  133. local m=0

  134. local w=0

  135. while true do

  136.   if y1~=-1 then

  137.     if n>y1-140 then

  138.       tap(90,176)

  139.       w=w+1

  140.     end

  141.     m=m+1

  142.   end

  143.   if y2~=-1 then

  144.     if n>y1-140 then

  145.       tap(91,484)

  146.       w=w+1

  147.     end

  148.     m=m+1

  149.   end

  150.   if y3~=-1 then

  151.     if n>y1-140 then

  152.       tap(90,795)

  153.       w=w+1

  154.     end

  155.     m=m+1

  156.   end

  157.   if y4~=-1 then

  158.     if n>y1-140 then

  159.       tap(90,1106)

  160.       w=w+1

  161.     end

  162.     m=m+1

  163.   end

  164.   if m==w then

  165.     break

  166.   end

  167.   m=0

  168.   n=n+10

  169.   mSleep(10)

  170. end

  171. end


  172. function tap(x, y)

  173.   local index = math.random(1,8)

  174.   touchDown(index,x+index, y+index)

  175.   mSleep(10)

  176.   touchUp(index, x+index, y+index)

  177. end


  178. init("0", 0); 

  179. main()


官方论坛原贴地址:http://bbs.xxzhushou.cn/thread-88893514-1-1.html