Keys, event и т.д.

I_GRIN_I

Друзья CG
15 Мар 2016
1,335
105
Где можно найти все значения, передаваемые в луа через params, keys, event и подобному?
 
Где можно найти все значения, передаваемые в луа через params, keys, event и подобному?
keys, event, kv, это все названия для таблиц, которые выбирают сами программисты. Хоть ты назови вроде my_fucked_lua_table, суть не изменится, и обращаться можно будем так же. А просмотреть все что есть в этой таблице можно через цикл:
for key, value in pairs(keys) do print(key, value) end
 
Последнее редактирование модератором:
CryDeS, ошибка
Код:
[ W VScript        ]: Script Runtime Error: ...ripts\vscripts\addon_game_mode.lua:650: bad argument #1 to 'pairs' (table expected, got nil)
Просто добавил это в функцию OnEntityTakeDamage(keys)
До этого эвент при получении урона ентити привязал к этой функции, просто чтобы проверить
 
Ну тебе пишет, что ты ноль передаешь, а не таблицу.

Скинь весь код.
 
Илья,
Код:
ListenToGameEvent('entity_hurt', Dynamic_Wrap(GameMode, 'OnEntityTakeDamage'), self)
Код:
function GameMode:OnEntityTakeDamag(keys)
  --print("[BAREBONES] Entity Hurt")
  --DeepPrintTable(keys)
  local entCause = EntIndexToHScript(keys.entindex_attacker)
  local entVictim = EntIndexToHScript(keys.entindex_killed)
  for key, value in pairs(keys) do
   print(key, value)
  end
end
 
Последнее редактирование модератором:
Илья, оно принтит только те значения, которые учавствуют в этом гейм эвенте
 
Я тебе очень очень тонко намекаю
ListenToGameEvent('entity_hurt', Dynamic_Wrap(GameMode, 'OnEntityTakeDamage'), self)

function GameMode:OnEntityTakeDamag(keys)
 
CryDeS, в коде все правильно, я у меня тут просто буфер работать отказался и мне пришлось ручками писать, ошибка то выдается не просто так
 
Реклама: