Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Lua 当点击屏幕太多时,断言失败_Lua_Coronasdk - Fatal编程技术网

Lua 当点击屏幕太多时,断言失败

Lua 当点击屏幕太多时,断言失败,lua,coronasdk,Lua,Coronasdk,我正在开发一个游戏,可以向水龙头方向投掷子弹。但是,当我在播放器中央点击过多/多次时,我会出现以下错误: Runtime error assertion failed! stack traceback: [C]: in function 'assert' ?: in function '?' ?: in function '_initTween' ?: in function 'to' /Users/

我正在开发一个游戏,可以向水龙头方向投掷子弹。但是,当我在播放器中央点击过多/多次时,我会出现以下错误:

Runtime error
    assertion failed!
    stack traceback:
        [C]: in function 'assert'
        ?: in function '?'
        ?: in function '_initTween'
        ?: in function 'to'
        /Users/User/Desktop/MD/screen1.lua:61: in function </Users/User/Desktop/MD/screen1.lua:31>
        ?: in function <?:221>
谢谢你的帮助

编辑: 添加此行后:

print("Values for transition: ", bullet, distance, bulletSpeed, farY, farX)
结果是:


距离和距离都是Nan。

如何调试这样的问题:

作为解决此问题的第一步,我建议您在调用之前打印调用
transition.to()
所涉及的变量值:

print("Values for transition: ", bullet, distance, bulletSpeed, farY, farX)
可能是某些设置/初始化不正确。它还将显示您是否以及何时尝试调用
nil
对象上的转换

更新:


因此,进一步的调查表明,在某些情况下,您试图将
NaN
(来自手册:“(非数字是用于表示未定义或不可表示的数值结果的特殊值,如0/0。))作为参数传递给
transition.to
,并且它反对此操作。当你计算距离和距离时,你应该看看你的假设。你是在除以零还是在某个地方取一个负数的平方根?

我怀疑当你非常快地敲击时,你在某个点意外地击中了你正在计算距离的位置。距离算法中的某些内容导致其数学计算失败,并吐出
NaN
(这基本上是其他数学问题的除以零或占位符)

在距离计算中检查NaN,并将其替换为0。更好的是,改进计算。您可以使用我编写的库-查找
函数的
长度:


很难说如何解决你的问题。可能提供来自tap listener的代码。堆栈上的消息说,函数
中的某些断言失败,该函数从
调用,从
调用到
。你最好至少检查一下
\initTween
上的文档或源代码。我测试了不同的变量组合,例如我使用nil作为转换对象。没有出现错误。我使用最新稳定版本的电晕模拟器(2017.3068)。我用打印行更新了我的问题。请查看结果。@JaysonTamayo认为“无效数字参数”错误非常有用。查看我答案的更新。当我对
x
y
使用0/0时,会收到相同的错误消息。
print("Values for transition: ", bullet, distance, bulletSpeed, farY, farX)