Мне нужен совет для базовых сценариев в CryEngine 3
Я хочу добавить некоторые параметры в плеер. например, "Голод", "Жажда" (Survival Stuff) Могу ли я сделать это с помощью сценария lua? Потому что Player - это то, что уже настроено в движке. Могу ли я получить к нему доступ? Или какой лучший способ сделать это?
1 ответ
Если это тот случай, когда игрок является неизменяемым или вы не можете добавить в него новые поля (userdata и т. Д.), То обычно можно построить таблицу с неизменяемыми данными (в данном случае, игроком) в виде индексный ключ для полей, представляющих данные, которые вы хотите отслеживать.
local hunger = setmetatable({}, {__mode = 'k'}) -- Use weak keys for the GC.
hunger[Player1] = 10
Например, вы можете использовать эту идиому в любое время, когда захотите "добавить" дополнительную информацию к такому объекту, данным пользователя или таблице. Это просто общая идея Lua, отдельная от любого конкретного движка. В зависимости от того, как работает CryEngine, вам может понадобиться hunger
глобальная переменная, а не локальная.