![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#726
|
|||||
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
Лекс, честно говоря, я согласен с Дамбо и сомневаюсь, что такая схема сработает. Компилятор-то ее схавает, а вот работать она будет неверно. То, что привел Дамбо - есть действительно правильный вариант.
Только объект Модуля все же мне кажется не стоит проверять, как креатора. Креатором эффекта от Зелий является тот, кто пьет это зелье. По сути он применяет эффект на самого себя. Это как обкаст OBJECT_SELF. |
||||
![]()
Сообщение
#727
|
|||||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
запустил-таки я этот гадский(потому что тормознооой) тулсет... :bad: в конструкции Lex'a типа ePCEffect==eEf1, которая почему-то навеяла на меня сомнения(которые, впрочем, через некоторое время после нажатия кнопки "Отправить", рассеялись. просто редактировать посты - не мое;) относительно компилябельности, с этой точки зрения ничего предосудительного нет. итак - краткое руководство по созданию "набора нашера": :drag: 1. на OnPlayerEquipItem вешаем:
2. на OnPlayerUnEquipItem такое:
3. создаем товарища "Nasher Adio" с тэгом Nasher и в OnUserDefined ему вешаем такое:
note: после сна эффекты снимутся. надо будет перенадевать шмотку. 2lazy... :drag: |
||||||
![]()
Сообщение
#728
|
|
Level 8 ![]() ![]() ![]() Класс: Маг Характер: Lawful Good Раса: Полуэльф ![]() |
dumbo Lex
пасибо...Туго у меня с while, но с остальным понял....Просто не знал как через уайл задать, чтоб не убирались все эййекты.... И кстати....Помнится с Дб говорили... Remove убирает только эффекты с одного скрипта...В одном теле.... Обидно :vava: |
![]()
Сообщение
#729
|
|
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
MasterMage, не понял тебя.
какие "эффекты с одного скрипта"? какие тела? :swoon: Remove убирает то, что ему говорят, независимо от того, откуда это взялось. |
![]()
Сообщение
#730
|
|
Level 1 Класс: Бледный Мастер Характер: Neutral Evil Раса: Человек ![]() |
Нужен скрипт чтобы непись давал плееру 10 лямов при базаре, просто я сам никрена в скриптах не лазею...
|
![]()
Сообщение
#731
|
|||||
![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
На ветке диалога, где нужно дать "10 лямов", переходишь на вкладку Action Taken (Совершены действия). Это справа внизу. Там нажимаешь на кнопку с иконкой красной шляпы. Далее разберешься. Либо, если хочешь готовый, то:
Пока не особо разбираешься в скриптах, юзай wizard`а (красная шляпка) и обязательно качай учебник Aiwan`а. Для новичка, ИМХО, самое лучшее. + даже если плохо знаешь англ, все равно используй lexicon. Там достаточно просто со словарем разобраться. + в редакторе скриптов, справа вверху есть фильтр. Большинство функций имеют в своем теле англ. слова. Обрати внимание на функцию выше. ДатьЗолотоСозданию. Соответсвенно в фильтре ты можешь ввести gold, и он тебе выдаст все функции, которые содержат этот набор букв (здесь gold), а это почти тоже самое, что и работают с этим набором букв (здесь золотом). |
||||
![]()
Сообщение
#732
|
|||||||||||
Level 3 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Именя вейпойнтов например WP_NAME1,WP_NAME2,WP_NAME3,WP_NAME4..., тогда WP_NAME это имя, его вписываем в скрипт в строке
Количество вейпойнтов неограничено. Потом создаёшь из Placeable Objects/Miscellaneous/Invisible Object копию, снимая флаг Static (Useable ставить необязательно), ResRef получившегося объекта вставляем в скрипт вместо invisobj001. Скрипт вешаем NPC на Action Taken в диалоге.
Можно и так, но тогда чётко ограничено количество узлов, и чтобы это хотябы заработало надо добавить пару строчек так:
, а первому НПС повесить локальную переменную RAYCHi типа int значением 1. Сообщение отредактировал Shad - Feb 17 2005, 06:57 |
||||||||||
![]()
Сообщение
#733
|
|
Level 8 ![]() ![]() ![]() Класс: Маг Характер: Lawful Good Раса: Полуэльф ![]() |
dumbo
смотри В одном скрипте создал еффект, это раз В другом ты хочешь его убрать RemoveEffect (oPC,eEf);, но он не уберет, так как не находит Но если в скрипте (смотри мой ролик в "Построение скриптовых сцен") Добавлено в [mergetime]1108621226[/mergetime] сначала создал, а потом убираешь, то убирается |
![]()
Сообщение
#734
|
|||||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Такой вопрос. Есть голем страж, который реагирует на слово произносимое игроком. Это я смог сделать(спасибо Авадону, написавший скрипт для банка :) ) Но как сделать чтобы на любое другое слово, голем произносил, например...."неверно"? Вот скрипт который я уже написал: OnSpawn
OnConversation
И еще как запирать дверь открытую ключом, обратно на тот же ключ? Сообщение отредактировал Лито - Feb 17 2005, 13:45 |
||||
![]()
Сообщение
#735
|
|||||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
MasterMage в твоем ролике все работает потому, что ты работаешь с одним и тем же экземпляром объекта эффекта(здесь и далее под словом "объект" я подразумеваю не object, а набор некоторых данных). неудобство заключается в том, что на некоторые объекты нельзя создавать ссылки. т.е. скажем ссылку на object, int, float, string, location ты можешь сохранить в локальных данных какого-либо объекта, а вот с effect, itemproperty это не проходит, а жаль... приходится их перебирать. Лито дык это... OnSpawn
OnConversation
запирание двери не зависит от условий лочки, выставленных в свойствах оной - - почитай описание SetLocked на дверь - OnOpen, OnUnlock:
Сообщение отредактировал dumbo - Feb 17 2005, 21:53 |
||||||
![]()
Сообщение
#736
|
|
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
а кстати, к вопросу о ListenPattern'ах - никто не видел (или может быть сам делал) скрипт бота с зачатками интеллекта? :am:
|
![]()
Сообщение
#737
|
|
Level 4 ![]() ![]() Класс: Волшебник Характер: True Neutral Раса: Полуэльф ![]() |
Помогите разобратся со скритами смерти и умирания при исползовании в мульти. Никак немогу избавится от проблемы когда игрок умер но изза того что у него предметы с регенерацией у него жизнь в плюсах, выходит он живой мертвец так нистранно это звучит. Приэтом он лежит и неможет сдвинутся, заклинания моднять из мертвых или воскресить недействуют в такой ситуации. (могу если нужно выложить обы скрипта,они сделаны с использованием базы данного форума).
|
![]()
Сообщение
#738
|
|||
![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
А поставить проверку наличия предмета (ключа) в инвентаре на OnClose слот . И затем запирать дверь. А если нет ключа, то только прикрыть дверь. Не то? |
||
![]()
Сообщение
#739
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Tiger Greyhawk Нет, это немного не то...С этим я уже разобрался. Теперь у меня другой вопрос, может он глупый но все же :xz:
Как сделать так чтобы при смерти игрок воскрешался без потери золота опыта и т.д , но только в определенной локе. Впринципе такой скрипт я могу написать, но куда его поставить не представляю...Это необходимо для арены |
![]()
Сообщение
#740
|
|
![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
А в слот модуля или локации OnDead? Может я конечно и туплю, но по-моему именно туда.
|
![]()
Сообщение
#741
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
У локации нет слота OnDead, а модульный слот не подойдет, он ведь действует на весь модуль
|
![]()
Сообщение
#742
|
|||
Level 5 ![]() ![]() Класс: Рейнджер Характер: Neutral Good Раса: Человек ![]() |
Если от игрока требуется подтверждение того, что он хочет воскреснуть - используйте onPlayerRespawn, если он должен воскресать автоматически - onPlayerDeath модуля. Для определения места гибели, используйте тэг локации:
Добавлено в [mergetime]1108756556[/mergetime] Посмотрите, как дефолтные онДес/Респавн сделаны... |
||
![]()
Сообщение
#743
|
|||
Ушедший на войну ![]() Класс: Маг Характер: Chaotic Good Раса: Человек NWN: Контент ![]() |
Эмм... если ты имеешь ввиду, что дверь всегда должна после закрытия отпираться только ключом, то это итак есть, т.е. если дверь залочить умением lock и в свойствах замка еще в тулсете стоит требование на клоч, то после каждого простого лока, разлочить можно только имея ключ. |
||
![]()
Сообщение
#744
|
|||
![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Сорри, попутался. Ну так ведь действительно, через проверку локи в слоте модуля. Или через OnUserDefind. Кстати, объясните мне как пользоваться этим слотом. Самый лучший вариант - ссылка на объяснение, если было такое. Я к тому, что если я хочу поставить проверку на переменную (=0) и если она выполняется, то запускать какое-то условие (переменная = 100). Далее в хербите (любом) изменять переменную с шагом запуска хербита (6 сек в идеале) на 1 вниз. И когда переменная = 0 снова запускать ЮзерДэфайнд. Это возможно? Какие будут глюки или несоответствия? (В идеале получится запуск скрипта раз в 10 минут) Наверное, я, в очередной раз, наступаю на грабли, которые уже обсуждались. |
||
![]()
Сообщение
#745
|
|||||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Нет это просто, сам знаю. Я про то что после того, как использовали ключ и открыли дверь,надо закрыть эту же дверь на тот же ключ. Но я уже все сделал...
не компилируется строчка
Сообщение отредактировал Лито - Feb 19 2005, 09:26 |
||||
![]()
Сообщение
#746
|
|||||||
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
А так? Tiger Greyhawk проще выловить значения дат. GetTimeHour() и
Но все это конечно грубо. Можно сделать таймер всего модуля и по нему раздавать на Юзердеф объектам команды. |
||||||
![]()
Сообщение
#747
|
|||
![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Да я в общем-то так сейчас и делаю. Но меня это не до конца устраивает... Это к твоему пожеланию насчет слота OnOneHoure, OnOneDay... Неужели нет ничего более сносного? Этот скрипт ведь ставиться на хербит? По крайней мере я ставлю. Раньше ставил на каждого непися и, ес-но, это очень сильно лагало. Теперь делаю проверку в одном скрипте и запускаю другие. Но это тоже не окончательный выход, имхо. Ведь есть же что-нить умнее... Я апшибаюсь? Сообщение отредактировал Tiger Greyhawk - Feb 20 2005, 03:57 |
||
![]()
Сообщение
#748
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Парни, по поводу эффектов: я делаю именно так, как написал. И трабл нету. :)
|
![]()
Сообщение
#749
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Я писать скрипты вооюще не умею и пока простенькие пытаюся создать в Визарде или в генераторе, но даже они не получаются!!!!! Вот такой я нуб... Как сделать правильно скрипт, проверки вещи в инвентаре??
И кстати с чего начать в их изучении??? Сообщение отредактировал Гиларион - Feb 19 2005, 21:12 |
![]()
Сообщение
#750
|
|||||
Восставший из пепла ![]() ![]() ![]() Класс: Бледный Мастер Характер: Neutral Evil Раса: Человек ПОДМАСТЕРЬЕ ![]() |
Для начала почитай статьи с сайта. Их ОЧЕНЬ много, а уж, если че-то будет непонятно, то задавай вопросы на форуме. Главное не стесняйся. :BB:
Что ты имеешь виду? Проверка вещи в инвенторе для чего? Опиши ситуацию по- подробнее... B) |
||||
![]() ![]() |
Текстовая версия | Сейчас: 30th April 2025 - 22:32 |