Основная информация о скриптах: (Описал: Vano Santuri)
Состояние ГГ: db.actor.health (указывать параметр через «равно» макс. Значение – 1.0) Здоровье ГГ db.actor.power (указывать параметр через «равно» макс. Значение – 1.0 энергия ГГ
Объекты:
db.actor:object (указывать в скобках отделяя секцию еще кавычками) Объекты в инвентаре db.actor:eat (указывать в скобках отделяя секцию еще кавычками используя метод db.actor:object) Съесть предмет который можно использовать
1. Проверка на то, что ГГ находится в укрытии от выброса: Code function название_функции() if surge_manager.actor_in_cover() then --действие end end
2. Проверка на то, что ГГ НЕ находится в укрытии от выброса: Code function название_функции() if not surge_manager.actor_in_cover() then --действие end end
3. Проверка на то, что ГГ жив: Code function название_функции() if db.actor:alive() then --действие end end
4. Проверка на то, что ГГ мёртв: Code function название_функции() if not db.actor:alive() then --действие end end
5. Проверка на то, что в данный момент идёт выброс: Code function название_функции() if surge_manager.is_started() then --действие end end
6. Проверка на то, что в данный момент нет выброса: Code function название_функции() if surge_manager.is_finished() then --действие end end
7. Проверка на наличие заданного кол-а денег у ГГ: Code function название_функции() local money = 1000 - заданное кол-во денег if db.actor:money() >= money then --действие end end
8. Проверка на отсутствие заданного кол-а денег у ГГ: Code function название_функции() local money = 1000 - заданное кол-во денег if db.actor:money() < money then --действие end end
9. Проверка на то, что у ГГ совсем нет денег: Code function название_функции() if db.actor:money() == 0 then --действие end end
10. Проверка на то, что ГГ имеет при себе какой-либо предмет: Code function название_функции() if db.actor:object("предмет") ~= nil then --действие end end
11. Проверка на то, что ГГ НЕ имеет при себе какой-либо предмет: Code function название_функции() if db.actor:object("предмет") == nil then --действие end end
Слоты в Зов Припяти: (Описал: Tris)
Code db.actor:item_in_slot(9) -- Слот детектора.
db.actor:item_in_slot(7) -- Слот брони.
db.actor:item_in_slot(12) -- Слот шлема.
db.actor:item_in_slot(2) -- Оружие 1 слот.
db.actor:item_in_slot(3) -- Оружие 2 слот
Разное: (Описал: Tris)
Если прописывать свои функции в скрипте "_g" тогда при вызове функции не нужно указывать название скрипта, только функцию.
Активирование скриптов:(Описал: Tris)
В большинстве случаев активировать написанные вами скрипты приходится через bind_stalker сейчас я расскажу основные места куда можно вставить функцию:
Первое: После: Code function actor_binder:net_spawn(data)
Здесь функция будет вызываться только после загрузки сохранения, перехода с локации на локацию (что в принципе одно, и тоже) один раз.
Второе: После: Code function actor_binder:on_item_drop (obj)
Здесь функция отслеживает какие предметы ГГ выбросил.
Третье: После: Code function actor_binder:use_inventory_item(obj)
Здесь функция отслеживает какие предметы ГГ использовал.
Четвертое: После: Code function actor_binder:update(delta)
Здесь функция вызывается постоянно. То есть ~ 30 раз в секунду.