Объект сущности
e.index
Индекс edict’а.Возвращает
Поле, а не метод. Годится ключом в своих таблицах.
e:origin
Читает или задаёт позицию сущности.Аргументы
Возвращает
Запись идёт через движок и перелинковывает сущность в мире; присваивание
pev->origin напрямую оставило бы её сталкиваться там, где она была.
e:angles
Читает или задаёт поворот сущности.Аргументы
Возвращает
e:model
Читает или задаёт модель сущности.Аргументы
Возвращает
e:classname
Classname сущности.Возвращает
e:valid
Жива ли сущность.Возвращает
Пример
e:spawn
ЗапускаетSpawn сущности.
Возвращает
Ничего. Именно это превращает голый edict в объект с хитбоксом и think-функцией. Вызывать после того, как выставлены модель и позиция.e:remove
Убирает сущность из мира.Возвращает
Ничего. На уже удалённой сущности ошибкой не является и ничего не делает.e:detonate_on_touch
Следующее касание сразу запускает think сущности.Возвращает
Ничего.Пример
ExplodeHeGrenade/ExplodeSmokeGrenade — это и есть её think, только
случившийся сразу, а не через несколько секунд.
Не колбэк: Lua не узнаёт, что было касание, и не может решить, стоило ли
его ловить — только форсирует то, что сущность и так должна была сделать
рано или поздно. Для гранаты это ровно то, что нужно; для чего-то с другим
think эффект будет другим.
Смотри также
e:keyvalue
Задаёт keyvalue — то же, что делает карта.Аргументы
Возвращает
Пример
e:solid
Читает или задаёт тип столкновений.Аргументы
Возвращает
Значения
e:spawn() может выставить своё значение: у многих classname
Spawn задаёт solid сам. Ставь после спавна, если важно.e:movetype
Читает или задаёт, как движок двигает сущность.Аргументы
Возвращает
Частые значения
e:size
Читает или задаёт ограничивающий объём.Аргументы
Возвращает
Пример
e:solid(1) получается зона-триггер. Запись идёт через движок и перелинковывает сущность: присваивание напрямую оставило бы её со старым объёмом.
e:render
Читает или задаёт прозрачность и свечение.Аргументы
Возвращает
Опции
Пример
e:render_for
То же самое, чтоe:render(), но только для одного игрока — остальные видят сущность как обычно.
Аргументы
Возвращает
Опции
Пример
opts, остаётся тем, что уже было в этом override — а при первой установке берётся из обычного e:render() сущности. Работает только через pfnAddToFullPack — движок собирает копию сущности отдельно на каждого клиента, и только тут возможна разница между зрителями. Обычные entvars (то, что меняет e:render()) — одно значение на сущность, разлетается всем одинаково.
Смотри также
e:clear_render_for
Убирает override, поставленныйe:render_for()/e:visible_to().
Аргументы
Возвращает
Ничего. Игрок снова видит сущность как обычно.Смотри также
e:visible_to
Делает сущность видимой или невидимой для одного игрока.Аргументы
Возвращает
Ничего.Пример
e:render_for(): visible_to(p, false) то же самое, что render_for(p, { mode = 4, amount = 0 }); visible_to(p, true) то же самое, что clear_render_for(p).
Смотри также
e:pev
Читает или задаёт произвольное полеentvars_t по имени — то, для чего нет
готового метода вроде e:origin() или e:solid().
Аргументы
Возвращает
Пример
entvars_t (progdefs.h), без переименований: плагин,
портируемый с fakemeta, не требует таблицы соответствий. Полей нет для
controller/blending (байтовые массивы) — если понадобятся, это будет
отдельным методом.
Неизвестное имя поля бросает ошибку, а не возвращает nil — опечатка в
имени поля ловится сразу, а не где-то в логике плагина.