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

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

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


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

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

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

 

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

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

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


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

Shredder, Да, я только учусь. Это прописывал. Но вылет мешает, опять бинд.

И если убрать :

if note and type(note) == "number" then

if not level.object_by_id(note) then

Тот-же вылет.

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

ins33, может перестать уже биться о стену и принять то что дают? :)

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

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

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

Zander_driver, Согласен, но вылет стабилен!

\s.t.a.l.k.e.r\gamedata\scripts\bind_stalker.script:240: attempt to index global 'repair' (a nil value)

В строчке 240: repair.use_repkit().

 

Если к коду добавить:

if note and type(note) == "number" then

if not level.object_by_id(note) then

 

Девайс пропадает из инвентаря, а диалоговое окно ремонта не появляется.

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

ТЧ 1.0004. SAP и Trans mod

github

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

ins33, открываешь спойлер, выделяешь всё что там есть, делаешь Ctrl+C, потом в у себя в файле repair.script нажимаешь Ctrl+A, затем Ctrl+V.

И вообще там код нужно переделывать, т.к. можно напрямую заюзать колбэк на использование предмета, а не проверять после дропа, исчез ли предмет. Но тебе до этого, как до Луны пешком...

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

Доброго всем времени суток! Есть таймер который выводит на монитор сообщение. Собственно вопрос можно ли как то реализовать в реал-тайме (в самой игре находясь) обновление инфы выводимой на экран? К примеру я сворачиваю игру в файле пишу другую инфу получаемую а он её подгружает? Думал сделать INCLUDE но ничего так и не нашел по этому поводу. Или я путаю? в LUA вообще есть функция INCLUDE? И будет ли правильно если таймер будет каждый 10 секунд подгружать другой файл? и будет ли вообще подгружать? Заранее благодарен!

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

Я хочу чтобы у меня была запущена игра и крутился так сказать цикл непосредственной в игре. (ОН уже крутит месагу в игре каждые 10 секунд) Что я хочу. Я хочу чтобы у меня При включенной игре обновлялась эта месага к прмеру у меня

 

local sactor = alife():actor()
local cactor = level.object_by_id(sactor.id)
cactor:give_game_news(
"Тест Сообщение\\nЯ вывожу его!!!1", 
"",
Frect():set(0,0,0,0),
1000,
8000
)

 

А получить пытаюсь не "Тест Сообщение\\nЯ вывожу его!!!1", а "Тест Сообщение я обновил сейчас!\\nЯ обновил его!!!1", НЕ выходя из игры. Такое возможно?

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

Смотрите! Есть ТАЙМер =) зашел в игру, начало появляться сообщение с рисуночком и выводит текст как будто я получил задание, ну или тайник нашел, что та вроде этого. Оно вылазиет каждые 10 секунд со словами "Тест Сообщение\\nЯ вывожу его!!!1". Теперь, чтобы его поменять (текст) мне нужно изменить файл скрипта с этой строкой, сохранить и перезагрузить игру либо загрузиться. Вопрос собственно =) Возможно ли изменить сообщение не ПЕРЕЗАГРУЖАЯ ИГРУ? тоесть в РЕАЛ-ТАЙМЕ =) Какая функция отвечает за ПОДГРУЗКУ скрипта? Тоесть как в C++ мать его =) Есть inckude она подгружает в твой исходник функции. Есть такая же в LUA? Я хочу подгрузить в тело Таймера мессагу. И чтобы она подгружала её каждый раз? ) Или есть функция на подобе как у MEMO в obj pascal LoadFromFile +))) Я очень надеюсь что поможете =)

 

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

Shredder, В том та и прикол всего =) Нужно его подгружать динамически =)

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

Делаешь файлик с сообщениями.

Парсишь его.

Набиваешь строки в таблицу.

Дальше крутишь в апдейте таблицу меняя индекс время от времени.

problem?

МЯСО!
Ссылка на комментарий

Кактус_523, loadfile или file:read()? Это не функции которые просто читают строки? Опа =) Сообразил =) Что если в переменную загнуть строки которые находятся в отдельном файле? И обновлять переменную в таймере.?

Все сообразил. Можно пример небольшой по использованию file:read()? Или ссылку на пост. Заранее спасибо!

 

C file:read() обращаться как с массивом строк или сплошной текст и Парс?

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

Тебе не нужна никакая переменная.

Тебе не нужны всякие функции чтения файлов.

Это не те дроиды, которых вы ищите.

function Parser()
local hndl = io.open("bla_bla.file",'r')
local tab = {}
local rline
local i = 1
while true do
rline = hndl:read()
if rline== nil then
break
end
tab[i] = rline
i=i+1
end
return tab
end

Изменено пользователем Кактус_523
МЯСО!
Ссылка на комментарий

Новичок я в этом деле всмысле в LUA =) Описание функции данной есть? function _parser()

 

Спасибо +)

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

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

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

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

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

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

Войти

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

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

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