【发布时间】:2013-12-28 11:38:48
【问题描述】:
我想为播放器添加一些参数。例如“饥饿”、“口渴”(生存材料) 我可以用 lua 脚本做到这一点吗?因为 Player 是引擎中已经设置好的东西。我可以访问他吗? 或者最好的方法是什么?
【问题讨论】:
我想为播放器添加一些参数。例如“饥饿”、“口渴”(生存材料) 我可以用 lua 脚本做到这一点吗?因为 Player 是引擎中已经设置好的东西。我可以访问他吗? 或者最好的方法是什么?
【问题讨论】:
如果播放器是不可变的,或者您无法向其添加新字段(userdata 等),那么通常可以构造一个具有不可更改的表数据(在本例中为播放器)作为表示您要跟踪的数据的字段的索引键。
local hunger = setmetatable({}, {__mode = 'k'}) -- Use weak keys for the GC.
hunger[Player1] = 10
例如,您可以在想要向此类对象、用户数据或表“添加”更多信息时使用此惯用语。这只是一个通用的 Lua 想法,与任何特定引擎分开。根据 CryEngine 的工作方式,您可能需要将 hunger 设为全局变量而不是本地变量。
【讨论】: