Случайная подборка модов
Sigerous Mod 2.2
4.1
Контракт на хорошую жизнь
4.1
Путь Бандита
2.0
Call of Chernobyl
4.5
Золотой Обоз 2
3.0
EPILOGUE
3.5
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  Wolfstalker
Понедельник, 22.10.2012, 14:58 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

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

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





    У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.


    Архив

    Архив#2
  •   Злобная реклама
    Понедельник, 22.10.2012, 14:58
    Статус:
    Сообщений: 666
    Регистрация: 05.04.2010
    Российская Федерация  Scouser
    Суббота, 29.06.2013, 12:07 | Сообщение # 6301
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    Чайчело, А причём Волк тогда?
      Злобная реклама
    Суббота, 29.06.2013, 12:07
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Российская Федерация  Чайчело
    Суббота, 29.06.2013, 12:11 | Сообщение # 6302
    Статус:
    Зевака:
    Сообщений: 28
    Награды: 0
    Регистрация: 21.06.2013

    Ладно сам решу.Может потому что ответ большой:"коробка кубинских сигар и алкоголь"?
      Злобная реклама
    Суббота, 29.06.2013, 12:11
    Статус:
    Сообщений: 666
    Регистрация: 21.06.2013
    Российская Федерация  Scouser
    Суббота, 29.06.2013, 12:13 | Сообщение # 6303
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    Чайчело, просто ты НИ не начинал до этого, поэтому у тебя вылезла ошибка. Кидай всё, что связано с ответом Сидоровичу.
      Злобная реклама
    Суббота, 29.06.2013, 12:13
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Российская Федерация  Чайчело
    Суббота, 29.06.2013, 12:26 | Сообщение # 6304
    Статус:
    Зевака:
    Сообщений: 28
    Награды: 0
    Регистрация: 21.06.2013

    НИ?
      Злобная реклама
    Суббота, 29.06.2013, 12:26
    Статус:
    Сообщений: 666
    Регистрация: 21.06.2013
    Польша  3ar9
    Суббота, 29.06.2013, 12:31 | Сообщение # 6305
    YOLO
    Статус:
    Бывалый:
    Сообщений: 785
    Награды: 7
    Регистрация: 28.03.2012

    Чайчело, новая игра
      Злобная реклама
    Суббота, 29.06.2013, 12:31
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2012
    Российская Федерация  ins33
    Суббота, 29.06.2013, 15:03 | Сообщение # 6306
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    Подскажите модель не разбиваемого ящика, на который может запрыгнуть ГГ.
      Злобная реклама
    Суббота, 29.06.2013, 15:03
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  elect-team
    Суббота, 29.06.2013, 15:40 | Сообщение # 6307
    Статус:
    Гость:
    Сообщений: 36
    Награды: 0
    Регистрация: 18.06.2013

    Подкинте инстирукцию по спауну нпс через СКРИПТЫ, а не с помощью all.spaun
      Злобная реклама
    Суббота, 29.06.2013, 15:40
    Статус:
    Сообщений: 666
    Регистрация: 18.06.2013
    Украина  FantomICW
    Суббота, 29.06.2013, 16:00 | Сообщение # 6308
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    elect-team, опытный модмейкер, прости, но что же ты такие вопросы банальные задаешь? Ну, вот простейшая функция спавна внесквадного нпс:
    Код
    function spawn_my_npc()     
                  if not has_alife_info("info_1") then     
                   if has_alife_info("info_2") then     
                    local p=vector(),lv,gv     
                    p.x =      
                    p.y =      
                    p.z =     
                    lv =      
                    gv =      
                    alife():create("npc_id",p,lv,gv)     
                    give_info("info_1")     
                   end     
                  end              
    end

    Вызов можно через акшион в диалоге прописать. Или через любой другой скрипт.
    Это - один из пяти тысяч вариантов спавна. Но я считаю, лучше спавнить нпс через сквад. Но тут скрипты уже могут не играть особой роли...
    Сообщение отредактировал FantomICW - Суббота, 29.06.2013, 16:02
      Злобная реклама
    Суббота, 29.06.2013, 16:00
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Украина  Gun12
    Суббота, 29.06.2013, 17:35 | Сообщение # 6309
    Статус:
    Гость:
    Сообщений: 50
    Награды: 0
    Регистрация: 08.07.2012

    Цитата
    local p=vector(),lv,gv
    Объясните пожалуйста, что вы имели в виду под lv и gv именно в этом выражении? Т.е. я не про вертексы, а про синтаксис.
    По всей видимости вы хотели объявить локальные переменные 'lv' и 'gv'?
    Сообщение отредактировал Gun12 - Суббота, 29.06.2013, 17:46
      Злобная реклама
    Суббота, 29.06.2013, 17:35
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  Scouser
    Суббота, 29.06.2013, 18:23 | Сообщение # 6310
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    Gun12, И наверное забыли их указать smile

    Добавлено (29.06.2013, 18:23)
    ---------------------------------------------
    elect-team, Используй функцию такую тоже:

    Код
    function имя_функции ()  
    alife():create("персонаж",vector():set(x,y,z),levelvertex,gamevertex)  
    end
      Злобная реклама
    Суббота, 29.06.2013, 18:23
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Украина  Gun12
    Суббота, 29.06.2013, 18:26 | Сообщение # 6311
    Статус:
    Гость:
    Сообщений: 50
    Награды: 0
    Регистрация: 08.07.2012

    Как локальные они не объявлены.
    Но скрипт работать будет, т.к. в выражении :
    Цитата
    lv =
    gv =
    они объявляются как глобальные.
    Если интересно, могу рассказать подробнее.
      Злобная реклама
    Суббота, 29.06.2013, 18:26
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Украина  FantomICW
    Суббота, 29.06.2013, 18:30 | Сообщение # 6312
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Gun12, LaRento, скажу откровенно: я этой функцией последний раз пользовался год назад. Не я ее придумал, и локальные переменные в ней не разбирал. Само построение функции более приспособлено для новичков, чтобы они не запутались в координатах и остальном наполнении. Сам пользуюсь обычно функцией, которую привели выше.

    Добавлено (29.06.2013, 18:30)
    ---------------------------------------------

    Цитата (Gun12)
    могу рассказать подробнее

    Буду рад услышать wink
      Злобная реклама
    Суббота, 29.06.2013, 18:30
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Украина  Gun12
    Суббота, 29.06.2013, 19:20 | Сообщение # 6313
    Статус:
    Гость:
    Сообщений: 50
    Награды: 0
    Регистрация: 08.07.2012

    Цитата (FantomICW)
    Буду рад услышать
    Хорошо. Тогда речь пойдёт о множественном(параллельном) присваивании.

    Как известно, каждую локальную переменную можно объявить(инициализировать) как :
    Код
    local x

    Также можно сразу присвоить ей некое значение :
    Код
    local x = 1


    Можно инициализировать несколько переменных таким образом :
    Код
    local x,y,z

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

    При таком объявлении также могут быть инициализированы :
    Код
    local x,y,z = 1,2,3

    Но гораздо более интересный пример будет выглядеть так :
    Код
    local a = 1
    local b = 2
    local c = 3

    local x,y,z = a,b,c

    Что тут происходит?
    При присваивании, lua сначала вычисляет все значения справа! от символа присваивания ('='), а за тем эти вычесленные значения присваивает переменным с именами, расположенными слева! соотвественно.
    Соответственно - значит, для данного примера, следующее :
    1) Первой объявлена переменная с именем 'x' - ей присваивается первое вычисленное значение. Это значение переменной и именем 'a', т.е. 1
    2) Второй объявлена переменная с именем 'y' - ей присваивается второе вычисленное значение. Это значение переменной и именем 'b', т.е. 2
    3) Третьей объявлена переменная с именем 'z' - ей присваивается третье вычисленное значение. Это значение переменной и именем 'c', т.е. 3

    Теперь давай разберём пример из поста :
    Код
    local p=vector(),lv,gv

    Lua вычисляет значения справа :
    1) vector() - эта функция возвращает объект 'userdata'
    2) lv - Lua ищет значение переменной с именем 'lv'. Переменной с таким именем (образно говоря - выше по коду) нет
    3) gv - то же самое

    Затем первой (и единственной) переменной слева присваивается первое значение справа, т.е. 'userdata' vector.
    И когда lua доходит до строк :
    Код
    lv =         
    gv =

    то, поскольку никаких переменных с такими именами нет и не было, инициализируются переменные с именами 'lv' и 'gv'.
    И поскольку они не объявлены явно как локальные (посредством ключевого слова 'local'), то становятся глобальными.
    Сообщение отредактировал Gun12 - Суббота, 29.06.2013, 19:21
      Злобная реклама
    Суббота, 29.06.2013, 19:20
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  Scouser
    Суббота, 29.06.2013, 19:29 | Сообщение # 6314
    Статус:
    Опытный:
    Сообщений: 1614
    Награды: 16
    Регистрация: 21.10.2012

    Gun12, Умеешь же объёмно и толково объяснить smile
      Злобная реклама
    Суббота, 29.06.2013, 19:29
    Статус:
    Сообщений: 666
    Регистрация: 21.10.2012
    Украина  FantomICW
    Суббота, 29.06.2013, 19:41 | Сообщение # 6315
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Gun12, спасибо! smile
      Злобная реклама
    Суббота, 29.06.2013, 19:41
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Поиск: