bogdan.dm 0 Опубликовано 18 Ноября 2010 Поделиться Опубликовано 18 Ноября 2010 Народ кто знает как привязать к выбросу какую-нибудь функцию (например спавн плоти по координатам ..., ..., ...)? Сам скрипт спавна напишу легко, а привязать к выбросу не получается. И ещё как заспавнить в определённую точку рандромные арты? Слышал о таблицах спавна но пользоватся не умею. Ссылка на комментарий
Byurrer 0 Опубликовано 18 Ноября 2010 Поделиться Опубликовано 18 Ноября 2010 bogdan.dm, на счет выбросов не знаю, а вот про спавн рандомных артов могу подсказать, тебе нужен к примеру такой скрипт: function random_spawn() local tab_art = {} -- сюда запишешь все секции артефактов, отсюда возьмешь artefacts.ltx local sect_art = tab_art[math.random(1,#tab_art)] alife():create(sect_art, вертексы и координаты сам пропиши) end Ссылка на комментарий
Painter 3 368 Опубликовано 19 Ноября 2010 Поделиться Опубликовано 19 Ноября 2010 (изменено) bogdan.dm, создай скрипт (например spawn_surge) и напиши в него свою функцию спавна "чего-либо" (пусть она будит называться spawn_mut). Далее открой файл в scripts/surge_manager. Найди это: if(level.name()=="zaton") then xr_sound.set_sound_play(db.actor:id(), "zat_a2_stalker_barmen_surge_phase_2") elseif(level.name()=="jupiter") then xr_sound.set_sound_play(db.actor:id(), "jup_a6_stalker_medik_phase_2") elseif not has_alife_info("pri_b305_fifth_cam_end") then xr_sound.set_sound_play(db.actor:id(), "pri_a17_kovalsky_surge_phase_2") end end И поменаяй на это: if(level.name()=="zaton") then xr_sound.set_sound_play(db.actor:id(), "zat_a2_stalker_barmen_surge_phase_2") spawn_surge.spawn_mut() elseif(level.name()=="jupiter") then xr_sound.set_sound_play(db.actor:id(), "jup_a6_stalker_medik_phase_2") spawn_surge.spawn_mut() elseif not has_alife_info("pri_b305_fifth_cam_end") then xr_sound.set_sound_play(db.actor:id(), "pri_a17_kovalsky_surge_phase_2") spawn_surge.spawn_mut() end end P.S. Как-то так. Изменено 19 Ноября 2010 пользователем Jurok Портфолио Ссылка на комментарий
serega-gamer 0 Опубликовано 22 Ноября 2010 Поделиться Опубликовано 22 Ноября 2010 (изменено) Люди помогите столкнулся с такой проблемой скачал ai пак 3 в 1 с этого форума который содержит -АИ pack - xStream -AI additions - Rulix (Bak) -AI modification - Monnoroch -Собирательство. - Red75 суть проблемы добавляю некоторые амкшные скрипты и идёт вылет я их не то что добавляю я их даже в bind_stalker.script не прописал но почемуто вылетает вот с таким логом Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ... of chernobyl\gamedata\scripts\blowout_scheme.script:80: attempt to call field 'blowout_type' (a nil value) в скриптах я так что сам догнать не могу Изменено 24 Ноября 2010 пользователем n6260 Реклама любых модов бесплатно на моём сайте писать в личку Ссылка на комментарий
Disord 1 Опубликовано 22 Ноября 2010 Поделиться Опубликовано 22 Ноября 2010 (изменено) serega-gamer, Ну, в скриптах я тоже дуб дубом, но посоветовать могу лишь одно - качай пак по этой ссылке (пост №453): http://www.amk-team.ru/forum/index.php?sho...7726&st=440 И фикс к нему по этой: http://narod.ru/disk/24452881000/xrs_grenade.script.html Он более полный и лучший, чем 3 в 1. А вылетает из-за скрипта amk_mod и функции в нём blowout_type, проблема в ней... Дальше я не знаю, ибо Изменено 22 Ноября 2010 пользователем Disord Ссылка на комментарий
Valerich 34 Опубликовано 23 Ноября 2010 Поделиться Опубликовано 23 Ноября 2010 (изменено) Уважаемые, нужна помощь. И так что хочу. – через диалог спавню рюкзак тайник ( treasure_1), а в нем ЗАПИСКА.( zapisk_1) Дак вот, как сделать скриптом что б при взятии записки ГГ ( zapisk_1) из тайника ( treasure_1) спавнился следующий тайник ( treasure_2) и ещё нужна какая то проверка чтоб при вылаживании в нычку записки ( zapisk_...) и при её взятии опять – тайник ( treasure_...) НЕ СПАУНИЛСЯ. Смысл затеи в том, что б тайники (рюкзаки) появлялись постепенно при нахождении записок, если не нашел zapisk_1 , то treasure_2 не заспаунится. Не нашел zapisk_2 , то treasure_3 не заспаунится и т.д. . Всего будет пока 14 или 15 тайников, соответственно и столько записок. Я вообще в этом не понимаю, как написать такой скрипт и куда его вставлять. Конечно сделать это через диалоги проще (это могу), но не хочу задействовать НПС (всё должно зависить от игрока.) П.С. Да и на счет проверки - может инфопоршн выдавать определённый, а при взятии его спрашивать, если есть не спавнить тайник, а нету спавнить. Но это всё нужно сделать именно скриптом. Может кто знает, может где уже это реализованно - то ссылочку. А так буду рад любой помощи. Stalk15 , Garry_Galler - Спасибо (плюсы ушли в "репу"), дальше докумекаю, с помощью друга. Скрипты для меня - как покрытые мраком. Изменено 23 Ноября 2010 пользователем Valerich Ссылка на комментарий
Stalk15 27 Опубликовано 23 Ноября 2010 Поделиться Опубликовано 23 Ноября 2010 (изменено) Valerich if db.actor:object("zapisk_1") and not has_alife_info("take_zapisk_1_complete") then -- если мы взяли записку 1 тоько первый раз --/Спавним тайник 2 db.actor:give_info_portion("take_zapisk_1_complete") --/выдаем инфопоршень, чтоб при следующем взятии этой записки тайник еще раз не спавнился end if has_alife_info("take_zapisk_1_complete") and db.actor:object("zapisk_2") and not has_alife_info("take_zapisk_2_complete") then -- если мы находили записку 1 и взяли записку 2 тоько первый раз --/Спавним тайник 3 db.actor:give_info_portion("take_zapisk_2_complete") --/выдаем инфопоршень, чтоб при следующем взятии этой записки тайник еще раз не спавнился end И так же по аналогии с остальными тайниками.Не забудь создать инфопоршены take_zapisk_[номер записки]_complete.Функцию ставить на апдейт. Изменено 23 Ноября 2010 пользователем Stalk15 Ссылка на комментарий
Garry_Galler 7 Опубликовано 23 Ноября 2010 Поделиться Опубликовано 23 Ноября 2010 (изменено) Valerich Я не знаю как ты там спавнишь свои тайники - но я бы так сделал: Создаем такую вот табличку с данными: local tTreasure={ -- //в качестве ключа пишем имя тайников по секции - число тайников неограничено treasure_1 ={1,2,3,4,5}, -- //вместо пяти данных цифр в каждой субтаблице пишем последовательно координаты по x,y,z и два вертекса treasure_2 ={1,2,3,4,5}, treasure_3 ={1,2,3,4,5}, treasure_4 ={1,2,3,4,5}, } --// вызов данной функции ставим на каллбек on_take - то есть в тело метода function actor_binder:on_item_take (obj) в bind_stalker.script --// вызов должен быть в таком виде имя_файла.TreasureSpawn(obj) function TreasureSpawn(obj) --// получаем взятый объект по секции local section = obj:section() --// если наш объект и не был включен одноименный инфопоршень, то спавним тайник используя данные из таблицы if section and string.find(section, "zapisk_") and not has_alife_info(section) then local key = "treasure_"..string.sub(section, -1)+1 --// добавим +1 чтобы спавнился тайник номером на 1 больше alife():create(tTreasure[key], tTreasure[key][1], tTreasure[key][2], tTreasure[key][3], tTreasure[key][4], tTreasure[key][5]) --// включаем поршень чтобы тайник не спавнился повторно db.actor:give_info_portion(section) end end --// инфопоршни для каждого тайника должны быть одноименными с именами записок- так проще будет ими оперировать Изменено 23 Ноября 2010 пользователем Garry_Galler Ссылка на комментарий
nike 3 Опубликовано 24 Ноября 2010 Поделиться Опубликовано 24 Ноября 2010 Подскажите как править ошибку типа dbg:object_'**_***_stalker_0001':_path_walk_'**_most_camper_walk3'_has_1_waypoint,_but_has_no_flags Ссылка на комментарий
bogdan.dm 0 Опубликовано 25 Ноября 2010 Поделиться Опубликовано 25 Ноября 2010 Народ возникла проблема: Через 3Д МАКС выщитал координаты расположения аномалий (хочу сделать большую аномалию в виде пузыря). Как по XYZ посчитать lvid и gvid? Это вообще реально без беготни по локации и телепортации в каждую из 49 точек? Ссылка на комментарий
stalker.odinochka 0 Опубликовано 26 Ноября 2010 Поделиться Опубликовано 26 Ноября 2010 Здравствуйте. Ковырялся в скрипте bind_stalker Там есть функция function actor_binder:update(delta) внутри неё есть различные разделы if Я хочу вынести if travel_func ~= nil then travel_func() end в отдельный скрипт. Как это правильно сделать? Сколько я не пробовал, вылетает с ошибкой Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : .... - Зов Припяти\gamedata\scripts\v150.script:8: attempt to index global 'self' (a nil value) Срочно ищу опытного скриптёра и модельера, нужна помощь в создании мода. Готовность мода Новый мир 85%. Мод Огнемёт для ЗП v1.0 Скачать Ссылка на комментарий
ЙоЖеГ 7 Опубликовано 28 Ноября 2010 Поделиться Опубликовано 28 Ноября 2010 Люди, а каким образом можно реализовать ЕДИНИЧНОЕ высказывание сталкера при движении (Т.е. скажет он указанную фразу только 1 раз.)? Прописал "s=bridge_soldiers..." (БЕЗ |SC) , но в игре Непись идет и орет это постоянно. Обидно как бы. Ссылка на комментарий
Gektor 0 Опубликовано 28 Ноября 2010 Поделиться Опубликовано 28 Ноября 2010 Приветствую всех. Подскажите пожалуйста, как скриптово глав героя из машины выкинуть. Заранее спасибо. Команда ReWrite Team. От сталкера отошли. Пересели за другую платформу. Ссылка на комментарий
Unmerklich Jo 0 Опубликовано 28 Ноября 2010 Поделиться Опубликовано 28 Ноября 2010 serega-gamer, возьми из амк мода(amk_mod.script если память не изменяет, там переписанные нет пакеты, ещё бери логику и сам файл с секцией спавна бтра) Gektor...вроде никак, но не утверждаю Ссылка на комментарий
DiXares 1 Опубликовано 28 Ноября 2010 Поделиться Опубликовано 28 Ноября 2010 Всеми мутировавшими конечностями поддерживаю Gektor'a! Хотелось бы узнать... Ссылка на комментарий
Unmerklich Jo 0 Опубликовано 28 Ноября 2010 Поделиться Опубликовано 28 Ноября 2010 Может сделать точку/рестриктор и телепортировать ГГ в другую точку... Ссылка на комментарий
DiXares 1 Опубликовано 29 Ноября 2010 Поделиться Опубликовано 29 Ноября 2010 Unmerklich Jo, тогда ГГ телепортнёт вместе с машиной походу. Ссылка на комментарий
sapsan 336 Опубликовано 29 Ноября 2010 Поделиться Опубликовано 29 Ноября 2010 (изменено) Не подскажете как получить имя переменной как строку ? Хочу усовершенствовать функцию дампа таблицы, чтобы она выводила имя таблицы, которая передается для вывода дампа. Наверное проще добавить второй параметр и при вызове копипастить переменную-таблицу в него как строку по типу amk.dump_table(tbl, "tbl") Изменено 30 Ноября 2010 пользователем sapsan Ссылка на комментарий
Malandrinus 615 Опубликовано 29 Ноября 2010 Поделиться Опубликовано 29 Ноября 2010 sapsan, Уточни пожалуйста задачу. Ведь получить переменную, не указав её имя, невозможно. А имя - это и так строка. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Gektor 0 Опубликовано 30 Ноября 2010 Поделиться Опубликовано 30 Ноября 2010 Народ, такой вопрос: заход и выход из машины осуществляется клавишей действие, можно ли заставить сработать функцию действия без нажатия кнопки назначиной на эту функцию? Если можно, то как? Заранее спасибо. Команда ReWrite Team. От сталкера отошли. Пересели за другую платформу. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти