![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#3771
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
Neverwinter Script const int PLACEABLE_QUANTITY = <количество обжектов>; ... //теги что-то вроде "object_01", "object_02", etc. Bажен только двухсимвольный номер (IMG:style_emoticons/kolobok_light/smile.gif) ... <тут прописываем, что должно происходить при юзе плейса> } Количество включая юзаемый? То есть мне, к тегам, которые есть, надо добавить порядковые номера, видом 01, 02 и т.д.? А то, что при юзе плейса - это как раз изначально стоявший OnUsed скрипт? |
![]()
Сообщение
#3772
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
gennady, скрипт, который ты привел выше, будет тормозить, и к тому же не стоит вкладывать в цикл такие вещи:
Neverwinter Script object oPlaceNew = CreateObject(OBJECT_TYPE_PLACEABLE, sResRef, Loc, FALSE, "NEW_"+sTag); без хотя бы маленькой задержки. Функция CreateObject довольно медленная, и точно также, как и DestroyObject, срабатывает не сразу, поэтому может привести к тормозу. Если бы так создавались живые объекты (НПС), то скрипт завершился бы ошибкой "Слишком много инструкций". Да, переменная nNth у тебя равна FALSE, хотя, если посмотреть саму функцию, то она по умолчанию равна 1 (сомневаюсь, что цикл сработает правильно при первом лупе). Потом, а зачем в теле цикла ты при каждом новом лупе определяешь переменные? Все это должно описываться перед циклом в самом начале кода. Lirulin, под флагами подразумеваются "переменные". Вешаются они на тот объект, с которым производится операция. Скрипт, который привел Ilerien выше, включает все нужные тебе объекты. Чтобы скрипт изменил им статус с "Use" на "Not Use", необходимо у каждого объекта сделать одинаковый тэг, в котором в самом конце изменить номер, начиная от 01 и заканчивая номером последнего объекта. Скрипт вешается на событие OnUsed каждогообъекта. Ilerien, Цитата Хы, <nss> не признаёт слово continue оно довольно редко используется в скриптах. А вообще, недочет (IMG:style_emoticons/kolobok_light/smile.gif) Кстати, скриптик прикольный. Я такими вещами часто пользуюсь, когда нужно составить из мелких символов, раскиданных по объектам нужный тэг. Коротко и сердито, и главное, нужен всегда всего лишь один скрипт (IMG:style_emoticons/kolobok_light/smile.gif) Xfans, а почему глюк? Плащ как бы закрывает крылья. Торчащие крылья через плащ, очень странное явление. То что они торчат через броню, еще страннее (IMG:style_emoticons/kolobok_light/smile.gif) Сообщение отредактировал Zirrex - Jun 29 2008, 22:14 |
![]()
Сообщение
#3773
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Цитата Количество включая юзаемый? Включая. Там в цикле специальная проверка на то, чтобы с обжектом, который мы юзаем, ничего не случилось Если нужно, её можно убрать (IMG:style_emoticons/kolobok_light/smile.gif) Вот проверка:То есть мне, к тегам, которые есть, надо добавить порядковые номера, видом 01, 02 и т.д.? А то, что при юзе плейса - это как раз изначально стоявший OnUsed скрипт? Neverwinter Script if(nNumber == nNumberSelf) Тег отдельного плейсебла должен состоять из базы (любой, в примере "object_"), одинаковой для _всех_ таких плейсеблов, и двухсимвольного номера, начиная с "01".continue; Цитата Функция CreateObject довольно медленная, и точно также, как и DestroyObject, срабатывает не сразу, поэтому может привести к тормозу. У меня такое было, когда в цикле на вейпоинтах создавались камни завала при заходе существа на триггер (IMG:style_emoticons/kolobok_light/smile.gif) Сервер-то это ещё проглотит (хотя, в зависимости от количества обжектов), а вот в сингле будут тормоза, потому что там одна машина является сервером и клиентом одновременно, да и сама машина слабее любого шардового сервера.
|
![]()
Сообщение
#3774
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
Это не глюк (IMG:style_emoticons/kolobok_light/smile.gif) Желаемый результат можно достичь редактированием cloakmodel.2da. Спасибо! Покопаем и найдем! Xfans, а почему глюк? Плащ как бы закрывает крылья. Торчащие крылья через плащ, очень странное явление. То что они торчат через броню, еще страннее (IMG:style_emoticons/kolobok_light/smile.gif) В том-то и дело, что раз уж они через броню торчат... наверное, подразумевается, что крылатые существа заказывают себе спец. броню с дырками для крыльев (IMG:style_emoticons/kolobok_light/biggrin.gif) (бывает же броня, через которую виден хвост(IMG:style_emoticons/kolobok_light/biggrin.gif) ). А если плащ прикроет крылья, будет порядочный горб. Ну ладно, это все тонкости, и уже не по теме. Просто должны же у ангела крылья торчать, чтоб было видно, что он ангел и есть. Сообщение отредактировал Xfans - Jun 30 2008, 06:07 |
![]()
Сообщение
#3775
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
У меня такое было, когда в цикле на вейпоинтах создавались камни завала при заходе существа на триггер (IMG:style_emoticons/kolobok_light/smile.gif) Сервер-то это ещё проглотит (хотя, в зависимости от количества обжектов), а вот в сингле будут тормоза, потому что там одна машина является сервером и клиентом одновременно, да и сама машина слабее любого шардового сервера. Ну, наверное создание одного паршивого NPC и убрание одной не менее паршивой статуи - это все же посильная задача для простого компа=) Вроде не виснет. Но спасибо за предупреждение, что много object'ов сразу ни destroy, ни create делать не надо. Lirulin, под флагами подразумеваются "переменные". Вешаются они на тот объект, с которым производится операция. Ну, это-то я уже усек, что флаг - это переменная. Просто вешать их пока не научился=)Но с такими подробными объяснениями скоро научусь! Сообщение отредактировал Lirulin - Jun 30 2008, 12:12 |
![]()
Сообщение
#3776
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Цитата наверное, подразумевается, что крылатые существа заказывают себе спец. броню с дырками для крылье У Ли Байерса ("Rage", "Rite", "Ritem") был эльф-авариэль, экипированный как раз такой бронёй (IMG:style_emoticons/kolobok_light/smile.gif) )Цитата Просто вешать их пока не научился=) Neverwinter Script SetLocalInt(<объект>, <название>, <значение>);
|
![]()
Сообщение
#3777
|
|
Level 3 ![]() Класс: Клерик Характер: Chaotic Good Раса: Эльф ![]() |
|
![]()
Сообщение
#3778
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
У Ли Байерса ("Rage", "Rite", "Ritem") был эльф-авариэль, экипированный как раз такой бронёй (IMG:style_emoticons/kolobok_light/smile.gif) ) Видимо, идеи носятся в воздухе! У одного из нас был сочинен мир, где тож народ с крыльями был. Так пришлось продумывать, куда девать крылья при одевании=))) (IMG:style_emoticons/kolobok_light/wacko.gif) |
![]()
Сообщение
#3779
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Хы, <nss> не признаёт слово continue Оно довольно редко используется в скриптах. А вообще, недочет Усе исправлено (IMG:style_emoticons/kolobok_light/declare.gif) Neverwinter Script if () continue;
|
![]()
Сообщение
#3780
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
|
![]()
Сообщение
#3781
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
Скажите, плиз, водится ли еще на сайте WRG прога, которая делает заставки/видюшки/титры к НВН? Вроде где-то про нее упоминали, но найти мы не можем. Если она есть, можно сюда ссылку?
|
![]()
Сообщение
#3782
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Если такая прога есть, то я о ней не слышал. Не то что бы увидеть...
|
![]()
Сообщение
#3783
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
эта прога - любая прога, которая может выдавать в результате своей работы видеофайл, пригодный для конвертации в *.bic.
У нас на сайте таких программ никогда не было. Возможно был когда-то конвектор типа avi - bic, но врядли. По крайней мере в памяти не отложилось. |
![]()
Сообщение
#3784
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
У нас на сайте таких программ никогда не было. Возможно был когда-то конвектор типа avi - bic, но врядли. По крайней мере в памяти не отложилось. Вот именно конвертор и нужен (просто выразились непонятно (IMG:style_emoticons/kolobok_light/unsure.gif) ). А чем делалась например начальная заставка к Левору? Она же тоже должна быть *.bic? Или нет? |
![]()
Сообщение
#3785
|
|
Вечно меняющийся ![]() Класс: Монах Характер: True Neutral Раса: Человек NWN: Скриптинг [Sn] ![]() |
|
![]()
Сообщение
#3786
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
*bic, bic какой же еще. *avi-> *bic Спасибо! @>- Будем пробовать! |
![]()
Сообщение
#3787
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Вот именно конвертор и нужен Правильно заданный вопрос почти 100% полученный ответ. (IMG:style_emoticons/kolobok_light/declare.gif) Я ж не знал ЧТО ТЫ ИМЕЕШЬ ВВИДУ. |
![]()
Сообщение
#3788
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
Правильно заданный вопрос почти 100% полученный ответ. (IMG:style_emoticons/kolobok_light/declare.gif) Я ж не знал ЧТО ТЫ ИМЕЕШЬ ВВИДУ. (IMG:style_emoticons/kolobok_light/sorry.gif) Сами не знали, как точно обозвать эту прогу! Пардон, в следующий раз будем точны как... как... опытный скриптер, во!;) Кстати, о скриптах - совсем уж чушь творится - компайлер молчит=( Ни сообщения об ошибке, ни сообщения о том, что все ок... просто пустое поле внизу... что сие может значить? Что пора переставить игру? Или он как-то отключился и его просто надо включить... (и где?) Сообщение отредактировал Xfans - Jul 4 2008, 22:30 |
![]()
Сообщение
#3789
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Скажите, плиз, водится ли еще на сайте WRG прога, которая делает заставки/видюшки/титры к НВН? Заставки делаются с помощью 3Дмакса, флеша, на прочих аниматорских прогах. Соотвественно у нас его на сайте не было. Все делается в AVI и КОНВЕРТИРУЕТСЯ в BIC. Это обычный конвертор каких много. Твой вопрос звучит так прога, которая делает заставки/видюшки/титры к НВН?. Кстати, о скриптах - совсем уж чушь творится - компайлер молчит=( Не все что компелится работает. (с) |
![]()
Сообщение
#3790
|
|
Level 3 ![]() Класс: Обыватель Характер: Neutral Good Раса: Человек ![]() |
Не все что компелится работает. (с) Это уже понятно=) Но все же, что с ним делать, чтобы он подавал признаки жизни? А то может он вовсе не компилирует ничего! (IMG:style_emoticons/kolobok_light/scratch_one-s_head.gif) |
![]()
Сообщение
#3791
|
|
Level 9 ![]() Класс: Вор Характер: Chaotic Good Раса: Эльф МАСТЕР Переводов ![]() |
Очередная проблема. Не хочет разговаривать плейсебл. Мне нужно, чтобы при попытке прочесть книжку в локации начинался диалог. Делаю все по инструкции - выставляю в свойствах объекта галочку Plot и Useable. Во вкладке скриптов на OnClick, OnUsed и OnDisturb выставляю вот это:
Neverwinter Script void main() { object oPC = GetClickingObject(); object oTome = OBJECT_SELF; AssignCommand(oPC,ActionStartConversation(oTome)); } Диалог присоединен. там тоже все как полагается - сначала ветка с проверкой на наличие амулета-переводчика на соответствующем слоте, потом - ветка, которая выводится, если амулет не надет. В первой части мода скрипт прекрасно работает, правда, там диалог с одной веткой без всяких проверок. Во второй - не хочет ни в какую. Что я не так делаю? |
![]()
Сообщение
#3792
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
на OnUsed
Neverwinter Script void main() { ActionStartConversation(GetLastUsedBy()); } В свойствах плэйса, на вкладке улучшенный - поставь нужный диалог в поле "разговор". GetLastUsedBy(); - это значит объект, который последним поюзал данный предмет - такое ставитсья на вкладку OnUsed. GetClickingObject(); - это тот кто просто кликнул на объект - такое ставиться на вкладку OnClick. на вкладку OnDisturb ставятся скрипты, которые производят какое-то действие или событие, если происходит воздействие на предметы в инвентаре, например: перемещение из инвен.плэйса к себе в инвен. или наоборот. |
![]()
Сообщение
#3793
|
|
Level 9 ![]() Класс: Вор Характер: Chaotic Good Раса: Эльф МАСТЕР Переводов ![]() |
Попробовала - не работает (IMG:style_emoticons/kolobok_light/sad.gif)
Сообщение отредактировал shadowdweller - Jul 5 2008, 22:11 |
![]()
Сообщение
#3794
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Мел, боюсь, что плейс не умеет выполнять ActionStartConversation, надо, наверное, на игрока перекидывать. И здесь лучше юзать BeginConversation.
Цитата Попробовала - не работает Укажи там напрямую реф диалога. И перекинь функцию на игрока:Neverwinter Script void main()
{ object oPC = GetLastUsedBy(); object oTome = OBJECT_SELF; AssignCommand(oPC, BeginConversation(oTome, "<реф диалога>")); } Сообщение отредактировал Ilerien - Jul 6 2008, 11:23 |
![]()
Сообщение
#3795
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Не надо ничего извращать.
Neverwinter Script //::////////////////////////////////////////////// //:: OnExit am_pus_dialog //:: Copyright © 2005 WRG! //::////////////////////////////////////////////// /* Скрипт использования PLC_ объектов для диалога. */ //::////////////////////////////////////////////// //:: Created By: Aiwan //:: Created On: 26.12.2005 //::///////////////////////////////////////////// void main() { object oPC = GetLastUsedBy(); object oSelf = OBJECT_SELF; AssignCommand(oPC, ClearAllActions()); ActionStartConversation(oPC); } У тебя просто ошибка где-то ищи. Небывает, что просто так в одном месте работает, в другом нет. Что то ты в настройках намудрила... Смени фракцию у плейсас с враждебной на нейтральную. Воткни строку без проверок и посомтри, ошиблась ты в скриптах или нет. Код что привел работает во всем модуле с разными объектами. Ни разу не тупило... Во вкладке скриптов на OnClick, OnUsed и OnDisturb выставляю вот это: Выстави ОДИН скрипт на OnUsed. |
![]() ![]() |
Текстовая версия | Сейчас: 10th August 2025 - 00:22 |