假设我有以下功能:
function onTilt( event )
physics.setGravity( (-9.8*event.yGravity), (-9.8*event.xGravity) ) --Το σωστό
end
将用于许多不同的lua文件。我想在外部文件中定义它,然后对这个文件使用require,所以我不会在每个lua文件中重复它。
问题是当这个函数与以下文件在同一个文件中时(不传递参数)被调用
Runtime:addEventListener( "accelerometer", onTilt )
有人可以解释一下如何在外部文件中定义它以及如何调用它吗?
答案 0 :(得分:3)
您可以尝试这种最小的外部模块布局:
-- external module - file named "mymodule.lua"
local M = {}
function M.onTilt( event )
physics.setGravity( (-9.8*event.yGravity), (-9.8*event.xGravity) )
end
return M
您需要使用该功能的地方可以写(假设mymodule.lua
放在您的Lua搜索路径上的目录中):
local mymodule = require 'mymodule'
-- ... other code ...
Runtime:addEventListener( "accelerometer", mymodule.onTilt )