我爲Piano Tiles 2創建了一個簡單的宏,以查看是否可以無限期地自動化它。 我的代碼在這裏:試圖找出一個區域的4個座標
search = true
region = {100, 500, 500, 1}
while search do
findColorTap(0, 1, region);
findColorTap(258, 1, region);
findColorTap(16758018, 1, region);
usleep(5000)
end
適用於所有三個瓷磚。
--0 being jet black notes
--258 being hold notes which have a smaller "hitbox"
--16758018 being extra notes which have an even small "hitbox"
目前該腳本將檢查屏幕上的每一種顏色的1像素水平線上從開始到結束(100-> 500),並且當它與顏色我需要返回,它將輕按像素一次。
我很好奇如何從該地區只拿4分,並檢查那些一樣。 我也很好奇,如果以上是可能的,Lua能夠比檢查區域更快或更慢地編譯腳本。
我的想法是,一旦findColorTap返回我需要的值。其他檢查本質上是在浪費寶貴的時間。但是,我也知道代碼越複雜,我的手機就越難處理這些命令。
我曾嘗試:
例1
check = true
while check do
note1 = getColor(80,500)
note2 = getColor(240,500)
note3 = getColor(400,500)
note4 = getColor(560,500)
end
while check do
if note1 == 0 then
tap(80,500)
elseif note1 == 258 then
tap(80,500)
elseif note1 == 16758018 then
tap(80,500)
else
end
end
這結束了在所有要麼不讀任何票據或當它抓住它屬於不同步的遊戲。
例2
function fct(startX, maxX, y, increment)
for x=startX,maxX,160 do
check=getColor(x,y)
if check == 0 then
return(x)
end
tap(x,y)
end
end
v = true
repeat
fct(80,560,500) until
v == false
這是一個正確的檢查和快得多,但在錯誤的地點被竊聽。
很難說出你在問什麼,findColorTap是如何工作的? – warspyking
findColorTap(顏色,發生,區域)。它將檢查我在該區域內的代碼中指定的可變顏色。如果顏色返回與代碼中的顏色相匹配,那麼我的手機將在發現顏色的屏幕上模擬觸摸。所以當這些黑條從屏幕的頂部到底部下落時,手機正在檢查X平面上的一條線,並且當其中一條橫穿y(500)時,它將被點擊。 –
而不是檢查每個'x'從100到600.我只想檢查4個精確像素的變量顏色'0'。但我希望它更有效率,這就是它可能會遇到的問題。 –