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

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

Тема для обсуждения скриптов всего и всех в серии игр STALKER.


Задавая вопрос (!):
1. Внимательно изучите суть вопроса. Вопрос должен соответствовать выбранной Вами темы. Это поможет сохранить порядок и читабельность темы, а также облегчит поиск и понимание сего;
2. Изучите то, что уже есть в теме (пролистайте "руками", воспользуйтесь поиском на форуме);
3. Изучите информацию которая может вам помочь:

  Информация (Показать)

4. Дабы не превращать обсуждение в "кашу" разной информативной направленности, задавайте несколько вопросов по порядку (в разных постах) после того, как получите ответ на предыдущий вопрос;
5. "Спасибо" и тому подобное - будьте так любезны в ПМ. Если не любите писать в ПМ, в конце вопроса напишите фразу: "Заранее спасибо!" - или что-то в этом духе;
6. ПОЖАЛУЙСТА! Указывайте, для какой игры Вам необходима информация (ТЧ, ЧН, ЗП), если стоит мод - укажите название мода;
7. Если Вы что-то сделали и результат не такой, какой Вами задумывался, то, пожалуйста, приводите коды которые Вы изменяли/писали целиком! Это поможет другим правильно ответить на Ваш вопрос, а также оградит Вас от лишней писанины.
8. Оформляйте сообщение. Пользуйтесь тегами для того, чтобы отделить код от текста. Пишите грамотно - ПОЛЬЗУЙТЕСЬ ЗНАКАМИ ПРЕПИНАНИЯ.
9. И помните: «Правильно заданный вопрос – половина ответа».

 

Какие вопросы следует задавать, а какие нет...

  Читать рекомендуется. (Показать)

И последнее: очень рекомендовано к прочтению Правила форума
 


  • Спасибо 1
  • Полезно 2
Ссылка на комментарий

Другой вопрос - xr_robbers - кто-нибудь когда-нибудь пытался эту схему использовать? Работоспособна ли она?

Не соответствует правилам.

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

@CRAZY_STALKER666

Вообще-то насчет не используемых вещей в скриптах\конфигах\спавне - не ужели ты впервые узнал, что разрабы наплодили вышеназванного в приличном кол-ве и не удосужились это подчистить даже в релизе ?

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

 

 

  UnLoaded писал(а):
Вообще-то насчет не используемых вещей в скриптах\конфигах\спавне - не ужели ты впервые узнал, что разрабы наплодили вышеназванного в приличном кол-ве и не удосужились это подчистить даже в релизе ?

 

Знал.

Но не я один их замечал, исследовал.

Может кто и довел скрипт до конца. Вот и интересуюсь...

Не соответствует правилам.

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

@Kondr48, есть функция:

ui.reinit_show_ui()

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

  • Спасибо 1
Ссылка на комментарий

Почему если получить инвентарь вот так: inv = ui.get_inventory_wnd()
и приаттачить к полученному окну статик, то он не пропадает из инвентаря пока игру полностью не перезапустить. Как его удалить как только мы закрыли инвентарь? Чтобы при новом открытии он заново создался.

Ссылка на комментарий
  Kondr48 писал(а):

Почему ... не пропадает из инвентаря пока игру полностью не перезапустить

 

Потому что окно инвентаря в игре создаётся один раз и при открытии инвентаря просто показывается, а затем скрывается.

 

 

  Цитата

Как его удалить как только мы закрыли инвентарь?

 

Надо создавать и удалять соответственно по открытию и закрытию инвентаря. Подходов масса. Один из распространённых - повесить создание и удаление своих контролов на выдачу специальных инфопорций. Пример такого навешивания дополнительных элементов управления есть в огсе/огср. Там есть модуль ogse_addons.script, где поверх оружейных слотов добавляются кнопочки для управления аддонами.

  • Спасибо 1
  Полезный утиль (Показать)
Ссылка на комментарий

Gray Hawk, ну раз их будет несколько, лучше в любом случае на фон выводить текст, а не писать на каждой текстуре (меньший вес будет)

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

Изменено пользователем Kondr48
Ссылка на комментарий
  AndrewMor писал(а):
максимальное количество lvid на конкретной локации?

 

Тут посмотри:

https://github.com/dsh2dsh/op2ogse/blob/master/gamedata/scripts/ogse_anomaly.script

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

Не соответствует правилам.

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

 

 

  CRAZY_STALKER666 писал(а):
Тут посмотри:

Список локаций там неполный. Меня интересовало, как скриптово узнать максимальное кол-во левел-вертексов.

  • Согласен 1

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

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

@AndrewMor, вот тут вот https://github.com/dsh2dsh/op2ogse/blob/master/gamedata/scripts/dsh.script

см. функции GetLevelVertexes( level ) и GetGameVertexes( level ). Взято отсюда же. Выше есть примеры использования.

  • Полезно 1
Ссылка на комментарий

@AndrewMor, например так:

function GetMaxLevelVertexId(idLevel)
	local gg, idLvMax, levelChecked, i, idLv = game_graph(), 0, false, 0, nil
	while i < 65536 do
		if gg:valid_vertex_id(i) and gg:vertex(i):level_id() == idLevel then
			idLv = gg:vertex(i):level_vertex_id()
			if idLvMax < idLv then idLvMax = idLv end
			if not levelChecked then levelChecked = true end
		elseif levelChecked then
			break
		end
		i = i + 1
	end
	return idLvMax
end
-- пример вызова для текущей локации:
idLvMax = GetMaxLevelVertexId(alife():level_id())
Изменено пользователем Kirgudu

Свои работы и совместные проекты: ИнструментOGSM CSFinal StrokeHARDWARMOD

Полезное: модули АртосаXML парсер

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

Добрый день. Как заполнять таблицу функцией. Например есть пустая таблица:

t_tbl = {}

Которую мне нужно заполнять определенными значениями. А эти значения будут появляться в переменной(например):

local dd = любое_значение

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

@Kober(BRUC)

table.insert(t_tbl, dd)
  • Спасибо 2
  • Согласен 2

Свои работы и совместные проекты: ИнструментOGSM CSFinal StrokeHARDWARMOD

Полезное: модули АртосаXML парсер

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

 

 

  Kirgudu писал(а):
например так:

Спасибо. Только после alife нужны скобки :)

Добавлено Kirgudu,

Да-да, был невнимателен, спасибо. :) Писал по памяти, вот и пропустил.

В том посте исправил.

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

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

Всем доброго времени суток. В чистую ТЧ сделал себе, по статьям из вики, спальник и ремкомплект. По отдельности они работают без проблем, но при соединении в одну геймдату работает только спальник. Совместно ими используется только bind_stalker.script.

  скрипт (Показать)
Ссылка на комментарий
  Цитата

self.object:set_callback(callback.use_object, self.use_object, self)

self.object:set_callback(callback.use_object, self.repair_outfit_start, self)

А чего вы для одного колбека делаете две разные функции?

Оставьте только первое.

 

self.object:set_callback(callback.use_object, self.use_object, self)

Потом ищите свою функцию use_object (она у вас почему-то use_obj называется), где спальник прописан и переносите кусочек, который отвечает за ремкоплект из функции repair_outfit_start в use_object.

Вот так:

 

function actor_binder:use_object(obj)
 main_sleep.sleep(obj)
 if obj:section() == "abc_repair" then
  remkomplekt.action_repair()
 end
end
 
  Эти функции удалить. (Показать)
Изменено пользователем Kondr48
  • Спасибо 1
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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