Lua表和屏幕坐标。对于每个{x}在y做

时间:2015-12-03 17:44:12

标签: ios lua autotouch

我现在对编程有一点奇怪的艺术感。我想在我的iOS上编写我的Autotouch应用程序脚本,在另一个应用程序中生成Pixel Art。

我以前通过输入代码在一个坐标点击屏幕来执行此操作,我做了2000次以上并完成了工作。但是应该有一种更好,更聪明的方法来完成它。

我的测试图像非常简洁,让事情变得简单。 Lua应用程序中有一个代码,我只是点击屏幕,

tap(x, y)

但我想把它设置为:

tap({xTable}, y)

但是我不确定是否会"点击"在我为y变量列出的每个x坐标处。

我想在一个非常特定的坐标上绘制一个像素,然后步进5个像素并绘制下一个像素,并重复该直到行尾。

这是完全可能还是超出语言能力?

编辑:出于某种原因,当我提出问题时,我的手机没有阻止代码,如果有人看到这个并想要编辑,我将不胜感激。

1 个答案:

答案 0 :(得分:3)

  

这是完全可能还是超出语言能力?

甚至没有关闭。我建议你阅读Programming in Lua

 tap({xTable}, y)   
     

但是我不确定是否会在我为y变量列出的每个x坐标处“点击”。

你为什么不确定?你没写过吗?如果没有,您可以在tap

的情况下自行编写
function tapxs(xs, y)
    for i,x in ipairs(xs) do
        tap(x,y)
    end
end

...

tapxs({10,20,30,40}, 10) -- tap at 10,10; 20,10; 30,10; etc.
  

我想在一个非常特定的坐标上绘制一个像素,然后步进5个像素并绘制下一个像素,并重复该直到行尾。

什么是“线”?它纯粹是水平的吗?你可以写:

function tapHorizontally(startX, maxX, y, increment)
    for x=startX,maxX,increment do
        tap(x,y)
    end
end

...

tapHorizontally(10,100,20,5) -- tap from 10,20 to 100,20 in 5 pixel increments

当然,这是一个奇怪的具体功能。你通常会写一些起始x,y和结束x,y并在它们之间绘制的东西,所以你可以支持所有具有相同功能的水平,垂直,对角线,但这需要more math

底线是:Lua是一种功能强大的高级编程语言。它可以用来编写你正在点击的应用程序,或者你用来生成点击的应用程序,所以限制将是你对编程/算法/数学/等的了解。