sneik 341 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 @dukekan, Для чего конкретно тебе это надо? Ссылка на комментарий
dukekan 5 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 На детекторе сделать светящиеся кнопки, в зависимости от настроек на что он должен реагировать Ссылка на комментарий
sneik 341 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 @dukekan, Подмена модели детектора на каждую настройку и применение анимации .seq для мигания светящихся кнопочек, не понимаю зачем изобретать новые методы подмены текстуры? Ссылка на комментарий
dukekan 5 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 Мне нужно не мигание, а именно то, что кнопка загорается при выполнении какого-то скриптового условия, так что seq не пройдёт. Вариаций условий может быть много, поэтому подменой модели хоть и можно, но на дворе 2016 год, может надо уже делать потехнологичнее? Ссылка на комментарий
Сталкер Лом 356 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 dukekan, На дворе 2016 год, а двиг 2006 года. Как все - импровизируй, делай как возможно. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Ссылка на комментарий
Kanekki 0 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 Ребят, а можно ли как нибудь изменить дальность камеры при виде от 3го лица? Ссылка на комментарий
Overfirst 630 Опубликовано 29 Марта 2016 Поделиться Опубликовано 29 Марта 2016 Народ, в ЗП можно скриптово спавнить рестрикторы и lc? Если да, то просветите, пожалуйста. Ранее был известен под ником BoBaH_671. Ссылка на комментарий
naxac 2 437 Опубликовано 30 Марта 2016 Поделиться Опубликовано 30 Марта 2016 @BoBaH_671, конечно можно, точно так же, как в ТЧ. Но есть одно отличие - запись/чтение здесь приходится принудительно ставить в начало пакета при его создании: local pk = net_packet() -- создаем пакет pk:w_begin(0) -- ставим запись на начало и записываем 2 байта sobj:STATE_Write(pk) -- считываем данные из объекта pk:r_seek(2) -- ставим чтение на начало с учетом записанных ранее двух байтНу а дальше как и в ТЧ. 2 Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
e1_nin0 3 Опубликовано 31 Марта 2016 Поделиться Опубликовано 31 Марта 2016 (изменено) А кто знает как сделать, чтобы, если условие не выполняется, то действие возвращается в начало функции? Вот кусок для наглядности: function zat_give_treasure_to_actor(first_speaker, second_speaker) local a = math.random(1,3) if a == 1 then if not has_alife_info("zaton_give_treasure1_done") then spawn_treasure.random_spawn_zaton_1() give_info("zaton_give_treasure1_done") else return a end if a == 2 then if not has_alife_info("zaton_give_treasure2_done") then spawn_treasure.random_spawn_zaton_2() give_info("zaton_give_treasure2_done") else return a end if a == 3 then if not has_alife_info("zaton_give_treasure3_done") then spawn_treasure.random_spawn_zaton_3() give_info("zaton_give_treasure3_done") else return a end end Тут "return a" я так понимаю не то, что нужно. Изменено 31 Марта 2016 пользователем e1_nin0 Ссылка на комментарий
naxac 2 437 Опубликовано 31 Марта 2016 Поделиться Опубликовано 31 Марта 2016 (изменено) @e1_nin0, не совсем понятно, что ты хочешь этой функцией сделать. Выдать сразу все три тайника (или чего там)? Так это можно в менее извращенной форме сделать. А вызов функцией самой себя делается так же, как и обычно. В твоем случае: else zat_give_treasure_to_actor(first_speaker, second_speaker) Изменено 31 Марта 2016 пользователем naxac 1 Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
e1_nin0 3 Опубликовано 31 Марта 2016 Поделиться Опубликовано 31 Марта 2016 (изменено) naxac, я тут "end"ы потерял. Хочу рандомно выдавать разные тайники до тех пор, пока они не закончатся. function zat_give_treasure_to_actor(first_speaker, second_speaker) local a = math.random(1,3) if a == 1 then if not has_alife_info("zaton_give_treasure1_done") then spawn_treasure.random_spawn_zaton_1() give_info("zaton_give_treasure1_done") else return a end end if a == 2 then if not has_alife_info("zaton_give_treasure2_done") then spawn_treasure.random_spawn_zaton_2() give_info("zaton_give_treasure2_done") else return a end end if a == 3 then if not has_alife_info("zaton_give_treasure3_done") then spawn_treasure.random_spawn_zaton_3() give_info("zaton_give_treasure3_done") else return a end end end Вот только return - совсем не то. ____________________________________________________________________________________________________Все, я понял. Вызов функции самой себя, спасибо Изменено 31 Марта 2016 пользователем e1_nin0 Ссылка на комментарий
naxac 2 437 Опубликовано 31 Марта 2016 Поделиться Опубликовано 31 Марта 2016 (изменено) @e1_nin0, сначала проверяй выданные по поршням, а потом рандомно выбирай один из невыданных. Что-то вроде этого: function zat_give_treasure_to_actor(first_speaker, second_speaker) local t = {} for i=1, 3 do -- кол-во тайников if not has_alife_info("zaton_give_treasure"..i.."_done" then t[#t+1] = i end end if #t == 0 then return end -- тайники закончились local n = t[math.random(#t)] spawn_treasure["random_spawn_zaton_"..n]() end Изменено 31 Марта 2016 пользователем naxac 1 Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
e1_nin0 3 Опубликовано 31 Марта 2016 Поделиться Опубликовано 31 Марта 2016 (изменено) naxac, А где мне прописать выдачу поршней? Добавил выдачу поршня в конец функции. Запуск через диалог. Ничего не спавнит. function zat_give_treasure_to_actor(first_speaker, second_speaker) local t = {} for i=1, 5 do -- кол-во тайников if not has_alife_info("zaton_give_treasure"..i.."_done" then t[#t+1] = i end end if #t == 0 then return end -- тайники закончились local n = t[math.random(#t)] spawn_treasure["random_spawn_zaton_"..n]() give_info("zaton_give_treasure"..n.."_done") end Скобка потерялась всего-то Изменено 31 Марта 2016 пользователем e1_nin0 Ссылка на комментарий
e1_nin0 3 Опубликовано 3 Апреля 2016 Поделиться Опубликовано 3 Апреля 2016 А как запустить звук через скрипт? Ссылка на комментарий
UnLoaded 313 Опубликовано 3 Апреля 2016 Поделиться Опубликовано 3 Апреля 2016 (изменено) А как запустить звук через скрипт? Обыкновенно: глянуть в "Справочнике по ф-циям и классам" ф-ции для работы со звуком, глянуть готовые примеры в исходных скриптах ПЫСов, запустить и радоваться... Изменено 3 Апреля 2016 пользователем UnLoaded Ссылка на комментарий
SK0RPY0N_O89O 341 Опубликовано 3 Апреля 2016 Поделиться Опубликовано 3 Апреля 2016 Как раздать подствольники НПС? Ссылка на комментарий
warwer 900 Опубликовано 3 Апреля 2016 Поделиться Опубликовано 3 Апреля 2016 , В профиль нужному нпс прописываешь: [spawn] \n device_torch \n wpn_abakan = 1, scope, silencer, launcher \n - это для примера. HARDWARM☢D Ссылка на комментарий
e1_nin0 3 Опубликовано 3 Апреля 2016 Поделиться Опубликовано 3 Апреля 2016 (изменено) UnLoaded, Ссылка на "Класс sound_object. (проигрывание звуков в игре в произвольном месте, от произвольного объекта, в голове актора)" битая. Нашел нужный скрипт xr_sound.script, функция function set_sound_play(npc_id, sound, faction, point). xr_sound.set_sound_play(db.actor:id(),"нужный_звук"). Изменено 3 Апреля 2016 пользователем e1_nin0 Ссылка на комментарий
UnLoaded 313 Опубликовано 3 Апреля 2016 Поделиться Опубликовано 3 Апреля 2016 (изменено) Нашел нужный скрипт xr_sound.script, функция function set_sound_play Данная ф-ция(если я не ошибаюсь), предназначена для проигрывания зарегистрированных в файле sound_theme.script "звуковых тем". Если надо проиграть одиночный звук из файла, то это все-же проще сделать ф-циями класса sound_object. Насчет битой ссылки - думаю поправят... Изменено 3 Апреля 2016 пользователем UnLoaded Ссылка на комментарий
Akcok 164 Опубликовано 9 Апреля 2016 Поделиться Опубликовано 9 Апреля 2016 Решил перенести монстров из ЧН в ЗП. В ЗП были удалены многие анимации, некоторые заменены, а некоторые и вовсе новые. Да и как-то старый видочек полигонажей у монстров поприятнее\ТСС. Приходилось через СДК добавлять новые анимации методом копипаста старых и переименовании в новых. Всех монстров адаптировал... Кроме бюрера. В чём проблема: Когда Бюрер отбегает, он решает, я так понял, использовать анимацию stand_power_attack_0. При этом должен воспроизвести звук... Но беда. В итоге вылет: FATAL ERROR [error]Expression : assertion failed [error]Function : CSoundPlayer::play [error]File : D:\prog_repository\sources\trunk\xrGame\sound_player.cpp [error]Line : 187 [error]Description : sound_single.m_bone_id != BI_NONE stack trace: В конфиге кости другие указал, в capture то-же, в анимациях проблему не заметил. Есть идеи? Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти