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

[SoC] Ковыряемся в файлах


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

Dennis_Chikin, за особую работоспособность не в ответе.. На скорую руку накидал, и не проверял работоспособность.... На первый взгляд должно работать.

local wpn_pri, common = ((wpn_data[obj:section_name()][p_obj:community()] ~= nil) and (wpn_data[obj:section_name()][p_obj:community()]) or (true and wpn_data[obj:section_name()].common))
get_console():execute("load ~DC~:"..tostring((common and ("add_item to:"..wpn..", common\10wpn_pri2: "..(wpn_pri or "nil value")) or ("wpn_pri1"..(wpn_pri or "nil value").."\10add_item to:"..p_obj:name()..", "..p_obj:community()))))

Если будут проблемы, обращайся в лс по коду.

Изменено пользователем Unnamed Black Wolf

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

Изменено пользователем Z.I.R.D.
Z.I.R.D., в actor_binder:on_item_drop (obj),проверяешь если obj:section()=="секция использованного предмета",то стартуешь таймер на 0.1 секунду с параметром id использованного предмета.По окончании работы таймера проверяешь, есть ли объект alife():object(id).Если его нет,спавнишь что нужно в инвентарь. Изменено пользователем Charsi

Исправил и удалил некоторые ссылки в шапке, также добавил новые.

 

Z.I.R.D., Charsi, как сделать "коллбэк" на использование предмета уже говорилось и не раз. >.<

 

Stalk15, причем тут эта тема и варез? :huh:

Ребят, можно как-нибудь текст ужать по ширине, чтобы, например, длина предложения была не 10см, а 8см?

lexer125, нет, мне нужно именно ужатие текста по ширине, или может уменьшение интервала между словами...

Изменено пользователем Mechanic.92

 

Mechanic.92, такого нету.

Изменено пользователем Unnamed Black Wolf

Помогите пожалуйста.

После добавления новой вещи в игру(сгущенка) , при попытке продать ее нпс получаю вылет :

Expression : fatal error

Function : CScriptEngine::lua_error

File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp

Line : 73

Description : <no expression>

Arguments : LUA error: ...hing\s.t.a.l.k.e.r\gamedata\scripts\xrs_utils.script:887: bad argument #1 to 'find' (string expected, got nil)

Странно то , что при продаже сидоровичу вылета не происходит.

Ну и смотри что в xrs_utils.script и как оно связано с продажей.

 

 

Добавлено через 23 мин.:

ах да аи пак от стрима убери и все норм

 

 

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

А причем здесь аи пак?Сотни модов содержат аи пак и новые предметы , однако вылета нет.Поэтому я и задаю вопрос - в чем причина моего вылета?Может где то прописать надо эту вещь еще?

Так у тебя стоит аи пак от стрима?

 

Добавлено через 12 мин.:

дай тот скрипт что в логе.

Ребят, небольшая проблемка с генератором имён: вобщем создал я новую группу для генерации (ну там есть генератор бандитов, военных, и т.д.). Всё нормально пашет, но я хотел сделать, чтоб в этой группе имён у сталкеров не было. Если в Sysem значение name_cnt ставлю 0 - вылет. Если в stable_generate_fnames в значении имени ничего не пишу - тоже вылет, причём без лога. Может кто знает, есть ли способ генерировать имены сталкеров без stable_generate_fnames?

Хемуль04,

вобщем создал я новую группу для генерации. Всё нормально пашет, но я хотел сделать, чтоб в этой группе имён у сталкеров не было.

Я может не понял твой вопрос, но с какой стати в группе имён для бандитов будут имена для сталкеров?

 

Может кто знает, есть ли способ генерировать имены сталкеров без stable_generate_fnames?

Всё, что есть по генерации имен было описано здесь. Другого нет.

Всем привет

Как уменьшить количество артефактов на локациях в ТЧ? (что бы их меньше появлялось).

U:\Program Files\S.T.A.L.K.E.R.\gamedata\configs\misc

В этой папке файл артефыктс, там в самом начале прописано в какой аномалии какие арты и с каким процентом появляются в них

Уважаемые, как отследить что гг выстрелил из оружия. Или может легче отследить нажатие левой кнопки мыши?

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

max_max_08

как отследить что гг выстрелил из оружия
.

Вариантов два (как минимум):

Сверять число патронов в стволе и размер магазина - математика не очень хитрая, но есть нюансы в реализации - например в таком варианте последний выстрел не отслеживается, но есть защита от сбоя счетчика при нештатной перезарядке\разрядки магазина (правда если значение счетчика не сохранять, то все равно возможен сбой правильности подсчета при перезагрузки игры и значении счетчика не равном 1).

 

local cht = 1   

function OnClickLButton(section,size)  -- аргументы - секция ствола и размер магазина
local activ_item = db.actor:active_item()
    if activ_item and activ_item:section() ==section then
        local AmmoInMagazine = activ_item:get_ammo_in_magazine()
        if (AmmoInMagazine  == 0 or AmmoInMagazine ==size) then
        cht=1
        end
       return  size - AmmoInMagazine ==cht
    end 
end

 

Забыл добавить - в коде в котором идет стоит вызов данной функции к счетчику должна прибавляться единица после выстрела.

 cht= cht+1

 

Другой вариант реализован в гравипушке malandrinus'a и kirag'a (там и смотри пример)- там размер магазина пушки изначально задан =1 и просто проверяется, что если число патронов в стволе меньше единицы(или размера магазина), то значит было нажатие ЛКМ - то есть ГГ выстрелил.

Лично я себе так сделал: (для пушки на один заряд)

function OnClickLButton(section,size)
local activ_item = db.actor:active_item()
    if activ_item and activ_item:section() ==section then
        local AmmoInMagazine = activ_item:get_ammo_in_magazine()
        return  size> AmmoInMagazine
    end
end

и в коде, где идет вызов функции, патрон после выстрела спавнится обратно в магазин 
db.actor:active_item():set_ammo_elapsed(1)  -- возвращаем патрон в магазин

Функции разумеется должны апдейтится.

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

max_max_08,

Намного проще отследить по тому месту, куда ГГ выстрелил. А если он ещё и выстрелил по живому то делов на 5 секунд.

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

Arhara,

а как? Колбек на хит? Память хитов? Так это же только если попал?

 

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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