Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
dsh 3 824 Опубликовано 13 Января 2016 Поделиться Опубликовано 13 Января 2016 @FonSwong, тебе вероятно для OGSE нужно? Там там есть function relation_registry.get_goodwill(who_id, to_whom_id) return GetGoodwill(who_id, to_whom_id) end function relation_registry.set_goodwill(who_id, to_whom_id, goodwill) ASSERT(db.actor, "relation_registry.set_goodwill: cannot call function") return db.actor:set_goodwill_ex(who_id, to_whom_id, goodwill) end function relation_registry.change_goodwill(who_id, to_whom_id, goodwill_change) ASSERT(db.actor, "relation_registry.change_goodwill: cannot call function") return db.actor:change_goodwill_ex(who_id, to_whom_id, goodwill_change) end Посмотри в скриптах примеры использования. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
FonSwong 33 Опубликовано 13 Января 2016 Поделиться Опубликовано 13 Января 2016 (изменено) @dsh, Эмм, а откуда цифры эти берутся? Написал: log1(relation_registry.get_goodwill(1705,0)) Это Толик, вернуло 5000 выстрелом ранил, опять вызвал функцию, получил 00 зелёным цветом Изменено 13 Января 2016 пользователем FonSwong Ссылка на комментарий
dsh 3 824 Опубликовано 13 Января 2016 Поделиться Опубликовано 13 Января 2016 а откуда цифры эти берутся? Из движка я полагаю. Собственно вот: http://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page-47#entry910319 Под спойлером Рекомендации/relation_registry вызвал функцию, получил 00 зелёным цветом Что такое 00 зеленым цветом? dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
FonSwong 33 Опубликовано 13 Января 2016 Поделиться Опубликовано 13 Января 2016 @dsh, ранил Толика, он стал врагом, запустил функцию log1(relation_registry.get_goodwill(1705,0)) В лог вывело "00" зелёным цветом ------- Дальше взял ид патрульного военных запустил: log1(relation_registry.get_goodwill(825,0)) вывело в лог "0" Ранил его, запустил снова, вывело в лог "00" зелёным цветом Ссылка на комментарий
dsh 3 824 Опубликовано 13 Января 2016 Поделиться Опубликовано 13 Января 2016 @FonSwong, ну шут его знает. Что знал - подсказал. Поэкспериментировать у меня сейчас нет возможности. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
FonSwong 33 Опубликовано 13 Января 2016 Поделиться Опубликовано 13 Января 2016 (изменено) Разобрался, благодарю В консоли, когда выводилось "-5000" из-за "-" съедалась "5", и выводилось зелёным цветом "000", но в логе всё норм Если написать: log1(" "..relation_registry.set_goodwill(1705,0,-5000)) то "-" не первый, и всё хорошо видно Читает, изменяет, и сохраняет репутацию правильно. Изменено 13 Января 2016 пользователем FonSwong Ссылка на комментарий
CRAZY__STALKER 0 Опубликовано 14 Января 2016 Поделиться Опубликовано 14 Января 2016 Доброго времени суток. Столкунулся с следующей довольно странной проблемой. Заспавнил рестриктор (речь идет в рамках ТЧ) с такой вот логикой: [7682]; cse_abstract propertiessection_name = space_restrictorname = episode_msgposition = -106.76899719238,-16.4660987854,-82.759735107422direction = -0.000350999995134771,-0.0109850000590086,0.0319279991090298id = 65535version = 118script_version = 6spawn_id = 2803; cse_alife_object propertiesgame_vertex_id = 781level_vertex_id = 780object_flags = 0xffffff3ecustom_data = <[logic]active = sr_idle@one[sr_idle@one]on_actor_inside = nil %=aground_msg1%END; cse_shape propertiesshapes = shape0shape0:type = sphereshape0:offset = 1,1,1shape0:radius = 50; cse_alife_space_restrictor propertiesrestrictor_type = 3 Как видно, при попадании в него должна вызываться ф-я, я и её приведу function aground_msg1(actor, npc)news_manager.send_tip(db.actor, "111111 ", 0, "ecolog", 10000)end Соответственно она прописана в xr_efeects.script Но проблема в том, что ничего не происходит. Я грешил на радиус сферы рестриктора,сделал его больше - не помогло. Попробовал ради интереса такую логику [logic]active = sr_idle[sr_idle]on_timer = 100| %=start_small_reject% sr_idle2[sr_idle2]on_timer = 100| %=start_small_reject% sr_idle Всё работает, (значит рестриктор по сути есть =)), но проблема то в другом, почему не регистрируеться попадание ГГ в него? Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 14 Января 2016 Поделиться Опубликовано 14 Января 2016 (изменено) 2 Winsor: Про "чудеса дедукции" в данном случае замечено вполне уместно. Когда непись в онлайне - масса ссылок на его объект где попало лежит. Когда внезапно удаляем - с этим объектом имеет право случиться все, что угодно. Но я все-ж повторюсь, что пытаясь некогда удалить именно смарт - получил массу забавных эффектов именно по удалению смарта. Изменено 14 Января 2016 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Winsor 177 Опубликовано 14 Января 2016 Поделиться Опубликовано 14 Января 2016 @Dennis_Chikin, я согласен, что куча ссылок. Вопрос в том и был - как корректно удалить нпс из онлайна? пробовал npc:kill(npc) а потом release(npc), просто release. пытался переводить в оффлайн, но судя по всему - это все происходило в рамках одного апдейта и поэтому вылазят странные глюки. Ссылка на комментарий
Max_Raf 35 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 Ребят, как отловить момент активации артефакта? Есть ли какой то другой способ, кроме как смотреть какой объект в руках и ловить его выпадение коллбеком? К примеру, возможно ли как то отловить отыгрывание анимации активации и время её завершения? ... А наше дело маленькое - с ружьём да по болотам. (с) Ссылка на комментарий
CRAZY__STALKER 0 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 Доброго времени суток. Небольшой вопрос, касательно скриптов(в рамках ТЧ) Требуется между двумя сообщениями на ПДА ГГ сделать интервал, в 5 сек. реального времени, допустим. Возможно, в LUA есть аналог sleep(); из C++ , сам просто не знаю. Вот что теоретически должно получаться. -- вызвали функциюfunction aground_msg1(actor, npc)-получаем мэссджnews_manager.send_tip(db.actor, "сообщение 1", nil, nil, 20000)--- тут надо подождать 5 сек,затем снова передать управление функцииnews_manager.send_tip(db.actor, "сообщение 2", nil, nil, 20000)end Ссылка на комментарий
Max_Raf 35 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 @CRAZY__STALKER, попробуй использовать функцию level.add_call . К примеру выдал первое сообщение, затем вызвал функцию-обработчик с проверкой на время. Условие по времени сработало - функция сама выдаст второе сообщение и вырубится. Главное правильно её написать. нашёл вроде бы ответ на свой вопрос, мало ли кому надо: http://www.amk-team.ru/forum/topic/10538-x-ray-extensions/page-45#entry953293 . ... А наше дело маленькое - с ружьём да по болотам. (с) Ссылка на комментарий
Marafon6540 765 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 @CRAZY__STALKER, function aground_msg1(actor, npc) -получаем мэссдж news_manager.send_tip(db.actor, "сообщение 1", nil, nil, 20000) --- тут надо подождать 5 сек,затем снова передать управление функции news_manager.send_tip(db.actor, "сообщение 2", 5, nil, 20000) end Третий параметр - время задержки в секундах. 1 2 1 Трилогия Апокалипсис. Упавшая звезда. Честь наемника. v. 1.2 УЗЧН v.1.3 + ОГСРх64 Последний сталкер v. 1.2 ПС v. 1.3 + ОГСРх64 Ссылка на комментарий
UnLoaded 313 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 Требуется между двумя сообщениями на ПДА ГГ сделать интервал, в 5 сек. реального времен Все просто(добавлю к сообщению Marafon6540): из одной ф-ции выдаешь подряд оба сообщения, только второе с задержкой в нужное кол-во секунд. Где ее указывать - уже подсказано... Ссылка на комментарий
Struck 61 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 Дополню, что следует учитывать факт несохранения этой переменной, отсюда вытекает факт того, что длина фриза пропорциональна возникновению бага с пропажей сообщения с фризом. Примерное решение: сохранять целиком вектор либо создавать отдельный под переменную фриза и привязывать его к текущему, ну или на сейв/лоаде целиком разбирать вектор и брать оттуда на сохранение только переменную фриза, на лоаде обратно запаковывать, но это так себе задачка. Ссылка на комментарий
CRAZY__STALKER 0 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 Третий параметр - время задержки в секундах. И действительно function send_tip(actor, news_id, timeout, sender, showtime, sender_id) ... if timeout == nil then timeout = 0 end ... Сам тайм-аут по дефолту 0, что верно. Прописал 5, и действительно, всё работает. Всем большое спасибо. Но есть еще вопрос - есть ли у кого нибудь небольшой сборник типовых ф-ций для диалогов(проверки на предмет,их выдача,удаление item-a из рюкзака,изм. отношение НПЦ к ГГ, и прочее,прочее...)? В свое время в одном моде(winter of dead quantum leap) нашел такой справочник от amik-а вроде, но я сменил ЖД давно. Был бы очень признателен за данную находку, т.к модификация в активной стадии разработки, а под рукой удобного справочника нет. И да, знаю что есть stalker inside wiki или вопросница на форуме, но донимать людей по каждой проблеме не хочется. @Struck, несохранение переменной , в моем случае, роли не играет никакой, но все равно спасибо за подробный монолог о векторах и переменных фриза Ссылка на комментарий
Marafon6540 765 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 @CRAZY__STALKER, не это, случаем? http://www.amk-team.ru/forum/topic/6458-uroki-po-modostroeniiu/?p=608838 Трилогия Апокалипсис. Упавшая звезда. Честь наемника. v. 1.2 УЗЧН v.1.3 + ОГСРх64 Последний сталкер v. 1.2 ПС v. 1.3 + ОГСРх64 Ссылка на комментарий
CRAZY__STALKER 0 Опубликовано 15 Января 2016 Поделиться Опубликовано 15 Января 2016 @Marafon6540, именно оно,большое спасибо Добавлено HellRatz, 15 Января 2016 Дабы не засорять тему/ы, "Спасибо" лучше выражать в посте того, кого хочется поблагодарить, там есть кнопка 'Рукопожатие'. Это так, на заметку Ссылка на комментарий
FonSwong 33 Опубликовано 16 Января 2016 Поделиться Опубликовано 16 Января 2016 из одной ф-ции выдаешь подряд оба сообщения, кстати когда из одной функции вызываешь две новости, у первой новости проигрывается звук а у второй нет, если поставить второй новости другой звук, то будет проигрываться от обеих новостей звук.Вопрос: как сделать так чтобы одинаковый звук проигрывался из обеих новостей? Ссылка на комментарий
Struck 61 Опубликовано 16 Января 2016 Поделиться Опубликовано 16 Января 2016 @FonSwong, в самой функции плеера есть возможность поставить фриз на начало. смотри CSoundSingle структуру. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти