使用 C(99),我有一个从 Lua 脚本加载 Lua 表的游戏。
技术方面没有问题,一切都按预期工作。但是,C 核心使用许多常量来定义项目类型等。该脚本实际上提供了要加载的武器数据,为了清楚起见,应该使用相同的常量名称/值。在 C 中,常量是诸如 #define ITEM_TYPE_EDIBLE 2 之类的东西。
所以,我的问题是:如何轻松地将一个长的(约 300 个定义)整数列表从 C 导出到 Lua?应该不止一个脚本使用该列表,虽然内存大小并不是一个真正的问题,但我主要是为了方便。
我已经想到了这些可能的解决方案,但不确定从长远来看哪一个会更好:
- A) 在处理所需脚本的 Lua 状态下手动创建嵌套表。
- B) 手动创建一个包含常量的 lua 脚本,并将其导入到每个使用它们的脚本中。
那么,您认为最方便的方法是什么?如中,方便更新和在 Lua 方面使用,因此可以轻松编写 mods。项目加载都是在启动时完成的,所以如果它不是一个超快速的方法也没关系(例如,它不会滞后动作,只是启动时间)
哦,我正在使用 Lua 5.1,但不反对使用 5.2,如果它使我的任务变得更容易的话。如果可能,也不反对以编程方式更新列表。