Перейти к контенту

Скриптование


Svoboда

Рекомендуемые сообщения

(изменено)
Только что, qwertyuiop сказал:

Теперь вопрос, как его переименовать и всучить диалог "Киценко убили, я вместо него", а то некрасиво получается.Скриптами без патчения all.spawn.

Что вы мучаетесь! В spawn_sections.ltx создайте секцию Криценко на основе данных из олл.спавна, если надо логику в отдельный файл скопируйте и в поле custom_data ссылку на файл поставте, и спавните скриптом этого Криценко сколько угодно.

Изменено пользователем Graff46
  • Согласен 1

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

Есть ли способ получить из коллбека  сохранения имя сейва, или другим способом, но при условии, что сейв делается через консоль, т. е. имя сейва не в какие поля не вводилось?

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
1 час назад, dsh сказал:

можно взять список сейвов, отсортировать их по дате и первый, всегда будет самый свежий.

Попробовал, повесил на сейв в биндере, но возвращается предыдущий файл, видимо не успевает записаться новый сейв, остается только таймеры велосипедить...

function test ()
local f = getFS()	
	local flist = f:file_list_open_ex("$game_saves$",bit_or(FS.FS_ListFiles,FS.FS_RootOnly),"*.sav")
	flist:Sort(FS.FS_sort_by_modif_down)
	local file = flist:GetAt(it)	
	file = file:NameFull() or 'none'
	get_console():execute(file)
end

Почему-то не вылетело, хотя it не объявлено...

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
Только что, alexsimm сказал:

какие файлы отвечают за поведение неписей в режиме боя?

отчасти xr_combat.script

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
Только что, alexsimm сказал:

что значит отчасти?

А что значит " какие файлы отвечают за поведение неписей в режиме боя? "? Поведене НПС в боёвке широкое понятие... хр_комбат отвечает за тип боя кемперский, монолитовский и еще какой то... Вот это почитайте... Ну или пишите конкретней чего хотите, часть параметров НПС типа меткости, глазастости и тд -  в конфигах записано.

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
Только что, alexsimm сказал:

куда идти, что делать как воевать

В основном это движковое всё, но посмотрите xr_combat и xr_danger...

  • Согласен 1

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
В 14.03.2018 в 20:49, dimka02 сказал:

Возможноли как-то сохранить/загрузить название секции оружия находящегося в слоте ?

Да, в псторе.

Если вы о сейвах.

Изменено пользователем Graff46
  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение
В 19.03.2018 в 10:39, Space.Marine сказал:

Нашёл такой код:

попробуйте этот:

Скрытый текст

local explosive_weapons = {
    ["wpn_rg-6"] = true,
    ["wpn_rpg7"] = true,
    ["grenade"] = true
    }
function npcondeath(victim, who)
    if IsStalker(who) then
  local active_item = who:active_item()
  local active_slot = who:active_slot()
  if (active_item ) then
   local section = active_item:section()
   if explosive_weapons[section] or active_slot == 3 then
    particles_object("anomaly2\\body_tear_00"):play_at_pos(victim:bone_position("bip01_head"))
   end
  end
    end
end

 

 

  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

Я тут поэкспериментировал и вроде как получается, что в спавне (скриптом) можно не указывать точно гейм-вертекс, главное что бы он был с данной локации (на которой спавним)...

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
Только что, Fenrir02 сказал:

Подайте идею.

Запоминай в пстор время (game.time()) когда батарея начала работать и проверяй сколько она работает, где проверять смотри сам, можно конечно биндером постоянно, можно еще на какое событие повесить, например дроп ГГ, ведь в игре достаточно часто патроны перезаряжаем, что то выкидываем, продаём\покупаем и тд...

Не забываем про level.add_call

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
(изменено)
2 часа назад, Fenrir02 сказал:

Не совсем понял что это

Хранилище данных, данные в псторе сохраняются в сейвах. В популярных скриптовых фрэймворках (amk.script и тд.) есть свои функции записи\чтения пстора, в ТЧ есть такие ф-ции в скрипте xr_logic.scripts

Скрытый текст


function pstor_store(obj, varname, val)
    local npc_id = obj:id()
    
    if db.storage[npc_id].pstor == nil then
        db.storage[npc_id].pstor = {}
    end
    local tv = type(val)
    if not pstor_is_registered_type(tv) then
        abort("xr_logic: pstor_store: not registered type '%s' encountered", tv)
		return
    end
    db.storage[npc_id].pstor[varname] = val
	return val
end

function pstor_retrieve(obj, varname, defval)
    local npc_id = obj:id()

    if db.storage[npc_id].pstor ~= nil then
        local val = db.storage[npc_id].pstor[varname]
        if val ~= nil then
            return val
        end
    end 
    if defval ~= nil then
        return defval
    end
    return nil
--'    abort("xr_logic: pstor_retrieve: variable '%s' does not exist", varname)
end

 

Рекомендую в качестве объекта использовать ГГ.

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
2 часа назад, Kirgudu сказал:

А net-пакет имеет, как мы знаем, ограниченный размер

Когда то тут писали о том, что пстор ГГ не имеет ограничения... Если это не так, то есть скрипт для пстора, не помню автора, в Сборочном цехе должен быть.

Поделиться этим сообщением


Ссылка на сообщение
8 часов назад, Metro_Rus сказал:

какая функция

Это движком вызывается. Можно переопределить звуки, а можно написать функцию которая будет звуки воспроизводить

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

Мне нужно, чтобы у некоторых НПС после смерти был пустой инвентарь. Я создал для них новую родительскую секцию (вместо stalker из m_stalker.ltx), переопределил script_binding на свой аналог xr_motivator.scripts, в нём я отключил спавн "посмертного лута", но при смерти у НПС остаются некоторые вещи (ПДА, патроны и тд...)... Как мне лучше удалять объекты из мёртвых НПС? Крутить циклы не хотелось бы...

Изменено пользователем Graff46

Поделиться этим сообщением


Ссылка на сообщение
8 часов назад, Jurok сказал:

платформа «Зов Припяти»?

ТЧ

Поделиться этим сообщением


Ссылка на сообщение

Кто может описать свойства cse_aliafe_object? Вот наткнулся на этот пост, у объекта. предположительно cse_aliafe_object, есть поле angle, через которое можно задавать поворот объекту, проверил - на ТЧ - работает (я с нэт-пакетами мучался). Я в луа_хелп не нашёл такого поля, упоминание об этом параметре только в том посте. Если кто знает ещё какие свойсва\методы опишите...

Я смотрел исходники, но ничего не нашёл...

Поделиться этим сообщением


Ссылка на сообщение

Может кто знает... Что первее вызывается: initialize_obj из логики или метод Инит из мотиватора для НПСов?

Поделиться этим сообщением


Ссылка на сообщение

Как можно заспавнить НПС на высоте? Я хотел что-бы мёртвые НПС падали сверху, я увеличил позицию по Y, но не помогло, наверно НПС привязаны к сетке, может стоит спавнить физ. объект с визуалом НПС?

Поделиться этим сообщением


Ссылка на сообщение
1 минуту назад, Overfirst сказал:

Я так и делал

Можно пример секции такого объекта?

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...