【发布时间】:2019-06-29 17:08:08
【问题描述】:
我想为多个游戏对象使用同一个 lua 文件
lua 文件:
function onUpdate()
if Input.isKeyDown(Keys.d) then
actor.x = actor.x + 0.1
end
if Input.isKeyDown(Keys.a) then
actor.x = actor.x - 0.1
end
if Input.isKeyDown(Keys.w) then
actor.y = actor.y + 0.1
end
if Input.isKeyDown(Keys.s) then
actor.y = actor.y - 0.1
end
end
问题
为每个对象设置一个 Lua 状态是一种好习惯,还是我应该为同一个文件使用相同的状态并在游戏对象调用脚本之前更新“actor”全局变量 (我想避免使用表,因为我必须在变量和函数调用之前使用表名) (不知道有没有其他解决方法……我是lua新手)
【问题讨论】:
-
你不必为同一个文件使用相同的状态,但是每个对象有一个 Lua 状态是浪费的。
actor不必是全局变量。例如,它可能是onUpdate()的参数。但是你最好先学习 Lua,有很多方法可以实现对象并处理它们。
标签: c++ lua game-engine