Случайная подборка модов
Припять. Точка отсчета
3.3
История снайпера: Ловушка Судьбы
2.9
История Кота
3.4
Clear Sky: MYSTERY v2.0
4.0
Долг. Философия Войны
4.0
Камень Преткновения. Пролог
4.1
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
⚙ Модострой: Вопросница
Российская Федерация  Wolfstalker
Среда, 24.02.2016, 00:25 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга


• Не флудить
• Предварительно просматривайте раздел, ведь ответ на ваш вопрос может быть там
• В своем вопросе указывайте платформу моддинга — Тень Чернобыля, Чистое небо или Зов Припяти




F.A.Q

  Злобная реклама
Среда, 24.02.2016, 00:25
Статус:
Сообщений: 666
Регистрация: 05.04.2010
Российская Федерация  Asfagan
Вторник, 21.06.2016, 15:02 | Сообщение # 1966
Статус:
Бывалый:
Сообщений: 929
Награды: 12
Регистрация: 01.02.2014

BoBaH_671, не знаю почему но имеет,у меня был случай подобного...
  Злобная реклама
Вторник, 21.06.2016, 15:02
Статус:
Сообщений: 666
Регистрация: 01.02.2014
Российская Федерация  CoCo_Boy
Вторник, 21.06.2016, 15:11 | Сообщение # 1967
Статус:
Новичок:
Сообщений: 251
Награды: 0
Регистрация: 29.03.2016

BoBaH_671, хех, да.

Добавлено (21.06.2016, 15:11)
---------------------------------------------
Ладно, я понял в чем дело. Вопрос снимается.

  Злобная реклама
Вторник, 21.06.2016, 15:11
Статус:
Сообщений: 666
Регистрация: 29.03.2016
Российская Федерация  13Шустрый13
Вторник, 21.06.2016, 15:50 | Сообщение # 1968
Статус:
Отмычка:
Сообщений: 121
Награды: 2
Регистрация: 04.05.2016

ins33, все это уже делал. Секции $spawn исправлены. В поисковике только один файл выдает именно с этим оружием. т.е. дубликата нету. LE все равно видит дубликат.
  Злобная реклама
Вторник, 21.06.2016, 15:50
Статус:
Сообщений: 666
Регистрация: 04.05.2016
Российская Федерация  Overfirst
Вторник, 21.06.2016, 17:10 | Сообщение # 1969
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

Может, вопрос глупый, но как заспавнить арт в аномальную зону? Есть какой-то способ, кроме alife():create("section", vector():set(x,y,z),lv,gv)?
  Злобная реклама
Вторник, 21.06.2016, 17:10
Статус:
Сообщений: 666
Регистрация: 11.06.2015
Российская Федерация  ins33
Вторник, 21.06.2016, 17:23 | Сообщение # 1970
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

BoBaH_671, Есть craete(number_section) smile
  Злобная реклама
Вторник, 21.06.2016, 17:23
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Российская Федерация  CoCo_Boy
Вторник, 21.06.2016, 17:28 | Сообщение # 1971
Статус:
Новичок:
Сообщений: 251
Награды: 0
Регистрация: 29.03.2016

BoBaH_671, %=spawn_object(section:spawn_point)%. Правда, я так спавнил только неписей и не уверен, что с артефактом получится.
  Злобная реклама
Вторник, 21.06.2016, 17:28
Статус:
Сообщений: 666
Регистрация: 29.03.2016
Российская Федерация  Overfirst
Вторник, 21.06.2016, 17:31 | Сообщение # 1972
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

CoCo_Boy, вот почему когда я нахожу уже ответ сам, мне его одновременно дают? biggrin Всё равно спасибо.
  Злобная реклама
Вторник, 21.06.2016, 17:31
Статус:
Сообщений: 666
Регистрация: 11.06.2015
Российская Федерация  ins33
Вторник, 21.06.2016, 21:14 | Сообщение # 1973
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

С помощью string.find получаю таблицу в которой есть строки с индексом delet.
Затем table.remove(tbl, delet) пытаюсь очистить таблицу от всех строк delet
и ловлю вылет bad argument #1 to 'foreach' (table expected, got table) -- вместо таблицы получена таблица

Подскажите, как очистить таблицу от строк с индексом delet?
Или, как заполнить таблицу сразу исключая все вхождения delet?
  Злобная реклама
Вторник, 21.06.2016, 21:14
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Украина  _S_k_i_F_
Вторник, 21.06.2016, 21:20 | Сообщение # 1974
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

ins33, если я правильно понял, то вот как надо удалять (на примере стекол)
Код
function del_breakable_obj()
for i=1,65534 do
local object = alife():object(i)
if object and object:section_name() ~= nil then
if string.find(object:section_name(),"breakable_object") then
alife():release(alife():object(object.id), true)
end
end
end
end
  Злобная реклама
Вторник, 21.06.2016, 21:20
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  ins33
Вторник, 21.06.2016, 21:36 | Сообщение # 1975
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

_S_k_i_F_, Увы, это совсем не то.
Мне надо из таблицы:
a_*, а_*2, а_*_3, а_delet, а_*_delet, а_*_конец_таблицы
удалить все вхождения в delet.
Надо произвести действие только с:
a_*, а_*2, а_*_3, а_*_конец_таблицы
исключая а_delet, а_*_delet

  Злобная реклама
Вторник, 21.06.2016, 21:36
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Украина  _S_k_i_F_
Вторник, 21.06.2016, 22:19 | Сообщение # 1976
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

ins33, а если
Код
function del_breakable_obj()
for i=1,65534 do
local object = alife():object(i)
local table = {a_*, а_*2, а_*_3, а_delet, а_*_delet}
if object and object:section_name() ~= nil then
if table.find(object:section_name(),"_delet") or table.find(object:section_name(),"_delet_") then
alife():release(alife():object(object.id), true)
end
end
end
end
  Злобная реклама
Вторник, 21.06.2016, 22:19
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  ins33
Вторник, 21.06.2016, 22:42 | Сообщение # 1977
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

_S_k_i_F_, Конечно же это вариант, да и скорей всего так бы и поступил бы, если в таблице:
a_*, а_*2, а_*_3, а_delet, а_*_delet, а_*_конец_таблицы
было меньше * чем delet, и их было бы меньше пару десятков. И в добавок, тут я узнаю новое. Да и код будет более универсален.
П.С. Удалить из таблицы ~= release
Цитата ins33 ()
Надо произвести действие только с:
a_*, а_*2, а_*_3, а_*_конец_таблицы
исключая а_delet, а_*_delet

Тут:
Код
table.find(object:section_name(),"_delet") == table.find(object:section_name(),"_delet_")
а тут
Код
table.find(object:section_name(),"_delet_") ~= table.find(object:section_name(),"_delet")
  Злобная реклама
Вторник, 21.06.2016, 22:42
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Российская Федерация  makdm
Вторник, 21.06.2016, 22:50 | Сообщение # 1978
Время Альянса
Статус:
Опытный:
Сообщений: 1787
Награды: 19
Регистрация: 22.11.2012

ins33, а откуда вы взяли эту таблицу?
Получается, что вы сначала заполнили таблицу, а затем героически пытаетесь её почистить.
Не проще ли сразу делать проверку при записи в таблицу?
Сообщение отредактировал makdm - Вторник, 21.06.2016, 22:51
  Злобная реклама
Вторник, 21.06.2016, 22:50
Статус:
Сообщений: 666
Регистрация: 22.11.2012
Российская Федерация  ins33
Вторник, 21.06.2016, 23:03 | Сообщение # 1979
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

makdm,
Цитата makdm ()
сразу делать проверку при записи в таблицу

Это в идеале! Ещё бы найти, как сделать такую проверку. Пытался в init передать -"delete", тоже не получилось.
string.find (s, pattern , init)
Направьте в нужное русло.
Сообщение отредактировал ins33 - Вторник, 21.06.2016, 23:04
  Злобная реклама
Вторник, 21.06.2016, 23:03
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Российская Федерация  makdm
Вторник, 21.06.2016, 23:17 | Сообщение # 1980
Время Альянса
Статус:
Опытный:
Сообщений: 1787
Награды: 19
Регистрация: 22.11.2012

Цитата ins33 ()
С помощью string.find получаю таблицу в которой есть строки с индексом delet.

Начнём сначала.
Откуда вы получаете таблицу?
  Злобная реклама
Вторник, 21.06.2016, 23:17
Статус:
Сообщений: 666
Регистрация: 22.11.2012
Поиск: