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

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


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

 

 

Какие файлы отвечают за оружие?

gamedata\config\weapons\*.ltx

Тебе лучше не в тему ковыряний, а нужно основы основ для новичков изучать.

ed_rez.gif

c1f11b67ff360413e81b4e4dcf21eb41.jpg

Ссылка на комментарий

 

 

Схема [sr_territory] рабочая? Просто в ТЧ не могу найти, где бы она применялась.

А как же, bar_territory_zone знаменитый, где в 146% модов криво пытаются зафиксить ее не совсем адекватное поведение, хотя оригинальный менеджер логики в принципе не способен сделать то, что хочет сумрачный автор этой правки. Чтобы нормально работать с sr_territory и sr_danger нужно расширять менеджер логики, я вот из-за этого это и сделал в свое время.

Ссылка на комментарий

Карлан, а, точно. Ну у меня лагерь бандитов, замиренный по =файтинг_актор, но вывезла проблема - реагируют только на стрельбу в себя, а на других ноль внимания. Думаю сделать ещё обиду по инфопршню и сделать sr_territory с выдачей этого поршня.

АПД. Посмотрел на бар - ну и наверчено там

Изменено пользователем dPlayer
  • Нравится 1
Ссылка на комментарий

Народ, нужна такая функция: если выбран второй рендер вернуть true, если первый - false.

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

Ссылка на комментарий

Ув.Участники форума. Помогите решить проблему.

 У меня сборка с магазинным питанием оружия. все нпс ( кроме - дробовиков/гранатометов) сделав 1 выстрел судорожно убегают не имея возможности атаковать гг. помогите решить вопрос. спавн магазинов в их рюкзаки (death_generic) поможет? или нужно прописывать непосредственно в профили ? (сцылку на сборку дам) (+ иногда бывает баг - если в рюкзаке много магазинов и идет перезарядка ствола - то, кол-во обойм встают на место патронов и просто пропадают. если кто знает как лечить - подскажите.)Заранее спасибо - простите если оффтоп, или не туда пишу.

[Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // 

 "Burn the rich // eat the rich"

О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист.

Egor4ikModMaker.gif

Ссылка на комментарий

Здравствуйте ВАМ. Кто подскажет, как постепенно улучшать репутацию у клана после завершения квеста?

Одна голова хорошо, а две лучше. А вот три, это уже змей Горыныч.

Ссылка на комментарий

@nego,что значит постепенно? В течении суток из врагов сделать друзей, или всё таки квест не один и после каждого квеста добавлять репутации?

АПД

Ну тогда после каждого квеста выдавай по n очков репутации этой функцией. Если не ошибаюсь, 3000 очков в плюсе - это зеленые друзья.

Изменено пользователем dPlayer
Ссылка на комментарий

 

 

После квестов добавлять репутацию.

Изучай, не ленись - и будет тебе счастье: есть такой конфиг task_manager.ltx. Загляни, там все элементарно, поймешь даже без пояснений.

 

Теперь вопрос: ковыряясь, нашел тут на ТД такую штуку - для нескольких смарт-террайнов(у меня они обзываются val_watchtower1...3) прописан один и тот-же гулаг. Это будет работать или просто очепятка ?

Ссылка на комментарий

Всем привет ребят, кручу верчу - понять хочу.

 ковыряю мод (Пайки v2) и хочу к кнопкам приделать проверку такого типа:

 

что бы при наличии предмета - кнопку можно жать,


при отсутствии - нет .

 

 я старался как-то сам, но руки из "опы" да и не знаю я как подключать к чему что. (подскажите как пропихивать проверки в ф-ции)

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

[Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // 

 "Burn the rich // eat the rich"

О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист.

Egor4ikModMaker.gif

Ссылка на комментарий

@Egor4ikModMaker, попробуй так.

function Название_Функции() 
    if db.actor:object("Предмет") ~= nil then 
        button:Enable(true)   -- button - Название кнопки;
    else
        button:Enable(false)  -- button - Название кнопки;
    end 
end 

Если не работает, жди "профессионалов".

Ссылка на комментарий

@Egor4ikModMaker, попробуй так.

function Название_Функции() 
    if db.actor:object("Предмет") ~= nil then 
        button:Enable(true)   -- button - Название кнопки;
    else
        button:Enable(false)  -- button - Название кнопки;
    end 
end 

Если не работает, жди "профессионалов".

там такая ф-ция

if has_alife_info("gui_paek_got_govyadina") then --/блокировка кнопок при повторном юзании пайка

self.btn_1:Enable(false)

 

хз будет ли работать ну вроде так должно.

 вот как сделал

function has_alife_info()

if db.actor:object("af_medusa") ~= nil then

self.btn_1:Enable(true) -- button - Название кнопки;

else

self.btn_1:Enable(false) -- button - Название кнопки;

end

end

 

[Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // 

 "Burn the rich // eat the rich"

О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист.

Egor4ikModMaker.gif

Ссылка на комментарий

там такая ф-ция на инфопоршне. 

if has_alife_info("gui_paek_got_govyadina") then --/блокировка кнопок при повторном юзании пайка 
self.btn_1:Enable(false)

   Это мы при использовании кнопки выдаем инфопоршень, а затем идет эта проверка и если поршень был получен, то кнопка снова не будет работать.

   А то что ты поменял название функции - от этого ничего не изменится.

  При нажатии на кнопку происходит обработка:

function paek_ui:InitCallBacks()
	--/ интерактивные элементы, при определенном действии выполняется заданная функция
	self:AddCallback("btn_1",    ui_events.BUTTON_CLICKED, self.paek_1, self) --/колбеки
	self:AddCallback("btn_2",    ui_events.BUTTON_CLICKED, self.paek_2, self)
	self:AddCallback("btn_3",    ui_events.BUTTON_CLICKED, self.paek_3, self)
	self:AddCallback("btn_4",    ui_events.BUTTON_CLICKED, self.paek_4, self)
	self:AddCallback("btn_5",    ui_events.BUTTON_CLICKED, self.paek_5, self)
	self:AddCallback("btn_quit", ui_events.BUTTON_CLICKED, self.on_quit, self)
end

Мы нажали кнопку(Допустим btn_1)  и у нас вызывается следующая функция:

function paek_ui:paek_1() --/функция выдачи хавчика и блокировки кнопок
	db.actor:give_info_portion("gui_paek_got_govyadina")  -- Получаем инфопоршень.
	spawn_govyadina()
	self.btn_1:Enable(false) -- Выключается кнопка.
end

   А здесь все в комментарии написано:  

if has_alife_info("gui_paek_got_govyadina") then --/блокировка кнопок при повторном юзании пайка
self.btn_1:Enable(false)

 

 

В файле bind_stalker.script найди функцию actor_binder:use_obj(obj) и измени её вот на такую:

function actor_binder:use_obj(obj)
    if obj and obj:section() == "paek_irp-b" then  -- Если используем паек paek_irp-b, то
	--get_console():execute("Load paek_irp-b") 
        paek.update("paek_irp-b") -- Вызваем функцию.
    end
    if obj and obj:section() == "paek_irp-p" then
	--get_console():execute("Load paek_irp-p") 
        paek.update("paek_irp-p")
    end
end 

   А в paek.script допиши в самое начало:

function update(item)
	if db.actor:object("bread") ~= nil then		-- bread - Предмет для проверки;
		self.btn_1:Enable(true)		-- btn_1 - Название кнопки;
		if item == "paek_irp-b" then	-- paek_irp-b - Вид пайка;
			level.start_stop_menu(paek.paek_ui(), true)		-- Запуск гуи интерфейса;
		elseif item == "paek_irp-p" then
			level.start_stop_menu(paek.paeka_ui(), true)
    else
        self.btn_1:Enable(false)
		end 
	end
end  

 

 

Изменено пользователем Kober(BRUC)
Ссылка на комментарий

получил вылет. хз. вроде кароче - все добавил все указал. желающим помочь - дерзайте.

все ссылки под спойлером. ( оригинал файл + оригинал мод который колупаю) 

@Egor4ikModMaker, попробуй так.

function Название_Функции() 
    if db.actor:object("Предмет") ~= nil then 
        button:Enable(true)   -- button - Название кнопки;
    else
        button:Enable(false)  -- button - Название кнопки;
    end 
end 

Если не работает, жди "профессионалов".

Expression : fatal error


Function : CScriptEngine::lua_error
File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line : 73
Description :
Arguments : LUA error: ...- Истинный путь\gamedata\scripts\bind_stalker.script:425: attempt to index global 'paek' (a nil value)

 

http://rgho.st/8PBdQtx4V- оригинал скрипт. файла. мода пайки.
+ http://rgho.st/62PsX9ckQоригинал мода(весь целиком) вдруг надо кому.
мало-ли.

 


   Это мы при использовании кнопки выдаем инфопоршень, а затем идет эта проверка и если поршень был получен, то отключаем кнопку.

   А то что ты поменял название функции - от этого ничего не изменится.

я просто туплю . недавно проснулся. подскажи как подключить

Добавлено Kirgudu,

Для истории: семь суток отдыха в соответствии с пунктом 2.0 правил форума.

[Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // 

 "Burn the rich // eat the rich"

О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист.

Egor4ikModMaker.gif

Ссылка на комментарий

Доброго времени суток! Вопрос заключается в следующем, какой параметр отвечает за редактирование рамки в главном меню которая позволяет выбирать нам строки(Новая игра, Загрузить и т. д.), вроде как находится в ui_mm_main.xml, а точнее не знаю, подскажите.

Ссылка на комментарий

 

 

Как заблокировать переход на другую локацию

Удалить его.

Ссылка на комментарий

 

 

Удалить его.

Ну можно и не так жестко - перевести в офф-лайн.

Добавлено  HellRatz,

Так-то оно так, но юзер не указал, что именно и для каких целей ему нужно. Заблокировать ли временно, навсегда ли, по условию, еще как-то. "Каков вопрос, таков ответ".

Ссылка на комментарий

 

 

Как заблокировать переход на другую локацию

Самый лучший вариант - http://www.amk-team.ru/forum/topic/7450-spravochnik-po-funktciiam-i-klassam/?p=803687

Всё работает как часы, можешь выдавать и убирать переходы в любое время.

"Кругом зомби.....у меня кончаются патроны...."

Ссылка на комментарий

Напомните кто-нито, как скриптом выдать рандомный квест, например, на вынос лагеря.


 

 

Сначала, попробуй выдать задание скриптом, выполнить его, а затем выдать еще раз: local new_task = CGameTask() new_task:load("твое_задание") db.actor:give_task(new_task, 3600*1000, true)

Пробовал, та же петрушка - повторно не выдается. Все выданные поршни отбирал обратно - та же история. Есть еще какие мысли?

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

Сталкер - наше всё!

Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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