• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в конкурсе квент 2025!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык

Результаты поиска

  1. Jr13San

    Вопросы по скриптингу

    ElderGamer, вот есть ещё такой вариант. Он немножко получше.
  2. Jr13San

    Вопросы по скриптингу

  3. Jr13San

    Вопросы по скриптингу

    Вот тебе небольшой примерчик в качестве подсказки: func void rename_Gorn() { //если ГГ познакомился с текущим персонажем, узнав его имя в одной из реплик диалога, то if (Npc_KnowsInfo(hero, DIA_Gorn_First) == TRUE) { //присваиваем НПС оригинальное имя self.name[0] =...
  4. Jr13San

    Вопросы по скриптингу

    Интересно было бы посмотреть на полную реализацию вашей идеи. :) Пока я вижу только счётчик с четырёхсекундной задержкой.
  5. Jr13San

    Вопросы по скриптингу

    Ну здесь же нет ни одной AI-команды.:confused: Всё равно не правильно работает. Я выяснил, что RefuseTalk устанавливается в "1" после "загрузки игры" не зависимо от того, что мы пишем команду на ожидание "Npc_SetRefuseTalk(hero,1);" внутри функции "B_SetCurrentLevel()". Скорей всего отказ от...
  6. Jr13San

    Вопросы по скриптингу

    Я пробовал сделать так. В итоге вместо перехода пишет: "Загрузка", а вместо загрузки, наоборот, пишет: "Переход". Сейчас ещё раз попробую. Не, не правильно работает. После загрузки игры RefuseTalk висит в "1"(в единице), поэтому и не даёт пройти условию: else if((CurrentLevel == NewLevel) &&...
  7. Jr13San

    Вопросы по скриптингу

    Так и есть. Но вот хотелось бы уточнить, в каком именно месте Вы хотели вызвать счётчик отказа от диалога? Т.е. функцию Npc_SetRefuseTalk(hero,1); Кстати, тоже интересный подход, потому что из той же оперы, что и "hero.name". :) Я решил подвести небольшой итог, собрав всё воедино, но с...
  8. Jr13San

    Вопросы по скриптингу

    НастасьСанна, вот смотрите. У вас при переходе на другую локацию выполнятся оба условия в теле функции "B_SetCurrentLevel" - это и условие загрузки и условие перехода. Если хотите, - можете проверить. PS: Спасибо программистам Пираний за их "сюрпризы".*thumbs up*
  9. Jr13San

    Вопросы по скриптингу

    НастасьСанна, я конечно понимаю, что написано "в торопях", но всё же, уточните пожалуйста. У Вас не написано где присваиваются значения переменной "CurrentLevel". Остаётся принять её во внимание из оригинальных скриптов. К тому же названия функций разнятся: "B_SetWordl" и "B_SetCurrentLevel"...
  10. Jr13San

    Вопросы по скриптингу

    Ну хорошо, а вы можете привести код для нескольких локаций? Ну, чтобы не быть голословным. Для примера можно взять: WORLD1, WORLD2, WORLD3, WORLD4, WORLD5. Стартовый - WORLD1. Переходить можно с любого на любой. Потому что на словах одно, а на деле может быть сооовсем другое.;) За ранее благодарен!
  11. Jr13San

    Вопросы по скриптингу

    Это хорошо.:) Ну допустим. Дело то это не меняет. Например, ГГ перешёл из OLDWORLD.ZEN на NEWWORLD.ZEN. После перехода, сразу же сохранился. Загрузился. ElderGamer, Ваши предположения?
  12. Jr13San

    Вопросы по скриптингу

    Переменная как переменная. Вижу только что в функции "B_ValidateOther()" ей присваиваются значения TRUE и FALSE в определённых случаях, а в остальных функциях идёт только использование этой переменной. Dimus, Вы мне конкретный пример приведите, раз уверены, что этот aivar[AIV_LOADGAME] работает...
  13. Jr13San

    Вопросы по скриптингу

    Dimus, это смотря применительно к чему этот aivar использовать. Например, "hero.aivar[AIV_LOADGAME]" постоянно возвращает 0.
  14. Jr13San

    Вопросы по скриптингу

    Забавно-то забавно, но как вы определите такой момент. Срабатывает INIT-функция. Игрок находится в месте появления на определённой локации. Какими будут ваши предположения? а) игрок только что перешёл на новую локацию. б) он просто сохранился в месте появления на этой новой локации и вот сейчас...
  15. Jr13San

    Вопросы по скриптингу

    У меня тогда срабатывало в двух случаях: 1) После загрузки из уже загруженной локации. 2) После "начала новой игры", также, из уже загруженной локации. Ну вообщем-то это не самый надёжный способ, как показывает практика. Я попробую рассказать про другой - более интересный и надёжный способ. Он...
  16. Jr13San

    Вопросы по скриптингу

    alexel, попробуй написать условия внутри тела инстанции "PC_Hero". Она ведь тоже загружается при каждой загрузке ваших сохранений. Можешь протестировать её ещё после перехода на новый ZEN-уровень. Попробуй сначала c простейшей функцией вывода текста на экран, т.е. примерно так:
  17. Jr13San

    Вопросы по скриптингу

    Для точного расчёта времени. А что, если точка отсчёта начнётся в 23:50 условно-первого дня? НПС скажет, приходи не раньше, чем через день. А условно-второй день наступит через 10 минут. Если в этом случае использовать функцию Wld_GetDay(), то день для НПС пролетит за 10 минут. А если перевести...
  18. Jr13San

    Вопросы по скриптингу

    Тогда в условие, кроме проверки на время нужно добавить ещё и проверку на полученную информацию. А функция Npc_KnowsInfo(c_npc self, int infoInstance) как раз и поможет в этом деле. В ней infoInstance - это тот блок информации, где задаётся точка начала отсчёта для данного случая, миссии или...
  19. Jr13San

    Вопросы по скриптингу

    Товарищ Dimmel, не придирайтесь к словам kraw. Ведь сами прекрасно знаете, что в дальнейшем расчёт идёт относительно значения переменной, а не относительно конкретного числа. И не важно сколько там будет - 0, 1, 2 или 102.
  20. Jr13San

    Важно Зимний модостроительный смотр

    Думаю, не получится. Можно сделать "гляделку в прицел", а выбор целей осуществлять через подсветку врага или с помощью вывода партикль-частиц над головой цели. Но согласитесь, это же смешно выглядит.:)
Сверху Снизу