Android 台灣中文網

標題: 觸摸精靈語法 [打印本頁]

作者: kokucmax    時間: 2014-6-28 11:59
標題: 觸摸精靈語法
執行多次相同的動作,在按鍵精靈中可以用for.....next

按鍵精靈
For 5
LeftClick 1
Delay 30       
Next            

但在觸摸精靈要怎麼寫?
作者: kokucmax    時間: 2014-6-28 18:04
語法問題想請教高手解答一下,想把錄製的腳本轉換成有if判斷的腳本
錄製的:
function click(x,y)
        touchDown(0,x,y);
        mSleep(30);
        touchUp(0);
end

function main()
--開始
        mSleep(1000);
        click(565, 621);
        mSleep(2000);
        click(95, 603);
--戰鬥結束     
        mSleep(140000);
        click(523, 708);
        mSleep(6000);
        click(257, 639);     
        mSleep(500);
        click(241, 638);
        mSleep(3000);
        click(315, 651);
        mSleep(1000);     
end

有if的
function click(x,y)
   touchDown(0, x, y);
   mSleep(30);
   touchUp(0);        
end

function main()
   a = getColor(565,621);
   if a == 0x93211f then
      mSleep(1000);
      click(565, 621);
      mSleep(2000);
      click(95, 603);   
      return victory()
   else
      notifyMessage("無法打寶");
      return main()
   end
end

function victory()
   b = getColor(523, 708);
   if b == 0x0c0b0c then
        mSleep(500);
        click(523, 708);
   
        mSleep(6000);
        click(257, 639);
        
        mSleep(500);
        click(257, 639);
        
        mSleep(3000);
        click(315, 651);
        mSleep(1000);
        return main()
   else
        notifyMessage("還沒打完");
        return main()
   end
end

想請問有if的...語法那裡有錯誤
作者: ahch    時間: 2014-7-31 08:16
for.....next, 按鍵精靈中用

      for i=1, 5, 1 do
        mSleep(100);
        touchDown(0, x, y);
        mSleep(30000);
        touchUp(0);
      end

x,y 是你LeftClick 1的銀幕x,y
作者: ahch    時間: 2014-7-31 08:24
我加了mSleep(100); 是以防touchUp後立刻touchDown遊戲容易讀不到touchDown指令,會miss掉
作者: ahch    時間: 2014-7-31 08:57
if的用法ok 可以不要空白 b==0x0c0b0c
但你的邏輯好像有問題 main()呼叫main()或main()呼叫victory()呼叫main() 那等於無止盡的一再重複 等記憶體滿了會當機的
還有"return"可能不需要 直接main();或victory();  還有 main()應該是main();  有;的  victory()應該是victory();  要不就是不同的精靈用不同的語法
作者: ahch    時間: 2014-7-31 09:08
我說的無止盡的一再重複是指呼叫時所耗的動態記憶體 等記憶體滿了也就是用完時會當機的
這和無止盡的重複讀某記憶體區塊是不同的意思
作者: argetlam    時間: 2014-9-14 15:04
可以如按件精靈那樣抓取顏色嗎

作者: argetlam    時間: 2014-9-14 23:12
for a = 1 , 5 , 1 do


end
作者: ahch    時間: 2014-9-15 09:10
可以  用觸摸精靈的話  以下重複5次抓取x,y的顏色 每次間隔1秒
for a=1, 5, 1 do
   b=getColor(x,y);
  mSleep(1000);
end
作者: ggbbac    時間: 2015-5-24 18:27
學習了 謝謝
作者: aqswde85    時間: 2015-9-6 12:33
奇怪這程式好像沒辦法關閉耶
作者: mirage200x    時間: 2015-10-5 22:18
謝謝大大喔
作者: ccw3230    時間: 2015-10-6 11:37
本帖最後由 ccw3230 於 2015-10-6 11:38 編輯
aqswde85 發表於 2015-9-6 12:33
奇怪這程式好像沒辦法關閉耶


設定>應用程式>手機按器>強制停止
這樣應該可以關掉





歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1