![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1986
|
|||||||||
Level 6 ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить NWN: Скриптинг [PW] ![]() |
меняеш апиренс, вешаеш айтем\шкуру..ф-ции:
и
ну и
тулсета под рукой нету, так что как то так:
по желанию вставиш ефекты и т.д. ф-ции так..для общего развития глянь еще инслюд nw_i0_transform Сообщение отредактировал [MoF]Darth_Nick - Feb 23 2006, 07:04 |
||||||||
![]()
Сообщение
#1987
|
|
Level 1 Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
void main()
{ object Player = GetEnteringObject(); string WW = GetTag(GetArea(Player)); string sCDKEY = GetPCPublicCDKey(Player); string sName = GetName(Player); string sPCName = GetPCPlayerName(Player); string sID = "(("+sPCName+"))"+sName; if (GetIsDM(Player)) return; string sReadID = GetCampaignString("Security",sID); if (!GetLocalInt(GetModule(),"SecurityDisable") && GetIsObjectValid(GetItemPossessedBy(Player,"mg_bootstone"))) { BootPC(Player); return; } if (sReadID =="" || GetLocalInt(GetModule(),"SecurityDisable")) { SetCampaignString("Security",sID,sCDKEY); return; } if (sReadID != sCDKEY && !GetLocalInt(GetModule(),"SecurityDisable") ) { BootPC(Player); SendMessageToAllDMs("Security: Error! "+sName+" :["+sPCName+"]: with key ="+sCDKEY+ " != "+sReadID); WriteTimestampedLogEntry("Security: Error! "+sName+" :["+sPCName+"]: with key ="+sCDKEY+ " != "+sReadID); return; } все компилируется,но почему-то не работает,или тулсет тупит или не знаю... так извеняюсь ,не то скопировал...поищу свой еще. Да и этот который я только что нашел,как сделать чтобы сдкей записывался в шмотку в инвентаре,а не в базу?В моем он просто не записывает правильно. |
![]() ![]()
Сообщение
#1988
|
|||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Equalizer, чертовски знакомый код, только вот модуль, в котором этот код использовался, не для широкого использования. Откуда он у тебя? Работу скрипта не проверял, но вроде должно работать:
Сообщение отредактировал Zirrex - Feb 20 2006, 22:12 |
||
![]() ![]()
Сообщение
#1989
|
|
Level 5 ![]() ![]() Класс: Друид Характер: Neutral Good Раса: Человек ![]() |
Кто знаит скрипт для поевления текста один рас в день пожалуйста напишыте или хотябы подскажыте где его можно взять. (IMG:style_emoticons/kolobok_light/unsure.gif)
|
![]()
Сообщение
#1990
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Цитата Кто знаит скрипт для поевления текста один рас в день пожалуйста напишыте или хотябы подскажыте где его можно взять. Правильно поставленный вопрос и сформулированная задача, уже половина ответа. Вопрос неконкретный. Например, текст появляется у швабры над головой? Раз в день? Или у НПС? Или в диалоге? |
![]()
Сообщение
#1991
|
|
Level 5 ![]() ![]() Класс: Маг Характер: Lawful Good Раса: Тварь ![]() |
Hi All!Сорри давно небыл просто.
Накапилась куча вопросов. 1. Как сделать проверку. Входиш в локу если в Журнале есть заметка с квестом, то идёт Кат-сценка. если нет то нет. 2. Делаю Непися Невидемым, а снать невидимость некак, я уж и так и сяк. Некак. Делаю его Невидемым через Триггер, и в Идеале бы хотелось снять невидимость в Диалоге. |
![]()
Сообщение
#1992
|
|||
Level 6 ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить NWN: Скриптинг [PW] ![]() |
1. а повесить на чара локалку нельзя? 2. к примеру так...(я вешал сначала инвиз, потом через пару сек убирал его)(если ты конено, о кат сценовом инвизе):
в других случаях может и не получиться, тогда проверку сделать надо... Сообщение отредактировал [MoF]Darth_Nick - Feb 21 2006, 09:55 |
||
![]() ![]()
Сообщение
#1993
|
|
Level 5 ![]() ![]() Класс: Друид Характер: Neutral Good Раса: Человек ![]() |
кто знаит скрипт для поевления текста один рас в день в диологе пожалуйста напишыте или хотябы подскажыте где его можно взять. (IMG:style_emoticons/kolobok_light/unsure.gif)
|
![]() ![]()
Сообщение
#1994
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
Цитата кто знаит скрипт для поевления текста один рас в день в диологе пожалуйста напишыте или хотябы подскажыте где его можно взять. (IMG:style_emoticons/kolobok_light/mosking.gif) ....мммм Артем возможно вам сначало надо немного освоить правописание, а потом уже заняться работой с тулсетом... ..а сделать то, что вы хотите можно с помощью навешивания локальной переменной(= время, если надо 1 раз в день или что-то типа TRUE\FALSE если надо, что бы это происходило вообще только один раз) на НПСя с которым говорит игрок и проверки значения этой переменной перед началом соотв.ветки диалога Сообщение отредактировал mamuc - Feb 21 2006, 10:24 |
![]()
Сообщение
#1995
|
|||
Level 2 ![]() Класс: Вор Характер: Lawful Evil Раса: Карлик ![]() |
Спасибо всем, кто помогал. Я уже решил проблему, все гораздо проще. Вот код:
Этот скрипт делает именно то, что мне нужно, а именно: - если в правой руке игрока находится нужный предмет (тег CD_IT_WBLDAGPG), и рядом есть (полу)эльфы, кинжал светится красным. - если рядом нет (полу)эльфов, кинжал не светится. |
||
![]()
Сообщение
#1996
|
|
Level 5 ![]() ![]() Класс: Маг Характер: Lawful Good Раса: Тварь ![]() |
[MoF]Darth_Nick
Я чо такой Душный как кажуся (IMG:style_emoticons/kolobok_light/smile.gif) Конечно я делал это, но фига. Лаг наверное в том что я Делаю Чара невидемым триггером, а пытаюсь снять в диалоге. 2. Локалка Чото непашит, 100 раз пробовал. (IMG:style_emoticons/kolobok_light/smile.gif) |
![]()
Сообщение
#1997
|
|||
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
поевления текста один рас в день
|
||
![]() ![]()
Сообщение
#1998
|
|||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Проклятье, ну почему у персонажа игрока нет нормальных скриптов кроме "default", к которым можно было бы привязаться? Из-за этой ерунды приходиться мучаться с его копией, к которой не знаешь как подступиться. Идея такая. Входит персонаж на локацию, выбирает себе одного или несколько противников у инструктора арены, и после этого ступает на Арену. В момент входа на арену в противоположном углу появляется зеркальная копия персонажа, который вошел на арену. В хартбите локации висит скрипт, который проверяет, есть ли в локации персонаж с тэгом, который совпадает с пабликом персонажа, если нет, удалить копию, если да, то оставить до победы. Все работает идеально, пока на арене один персонаж, стоит войти второму персонажу, как скрипт начинает считать, что на арене нет персонажа, с которого создался противник. Посоветуйте, чтобы еще добавить в этот скрипт, чтобы избежать переключения ключа в момент боя персонажа с его противником.
|
||
![]()
Сообщение
#1999
|
|
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
Zirrex, ты бы описал конкретнее, что ты хочешь сделать. из предыдущих обрывков фраз я, например, ничегошеньки не понял.
прошу пардона, но скрипт запутан, неоптимален и содержит ошибки. (IMG:style_emoticons/kolobok_light/wacko.gif) (IMG:style_emoticons/kolobok_light/unknw.gif) |
![]()
Сообщение
#2000
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
dumbo, гм, ну что тут не ясного? На Арену входит персонаж, сражается со своей зеркальной копией, а в это время скрипт на хартбите локации постоянно проверяет, совпадают ли паблик персонажа и часть тэга копии персонажа. Если не совпадают, копия персонажа удаляется с Арены.
А проблема, которую я уже описал выше, проста. Когда на Арене больше 1 персонажа, то копия исчезает, потому что ключ 'nCreature' переключается на TRUE, даже если в этот момент на Арене присутствует персонаж, у которого совпадает паблик с тэгом своей копии. Если уж ошибки в скрипте, то показал бы мне их, а то я с ним уже замучился. |
![]()
Сообщение
#2001
|
|
Level 11 ![]() Класс: Вор Характер: Neutral Evil Раса: Эльф NWN: Скриптинг [PW] Validor2 ![]() |
совершенно не понятно зачем все это вешать на харбит...
ставишь на арене переключатель, который при первом юзе спавнит копию, а при втором ее удаляет... хочешь, все, что есть а арене, хочешь - только свою, и тогда у каждого плеера на арене есть возможность вызвать свою копию... Сообщение отредактировал Vanes - Feb 22 2006, 09:30 |
![]()
Сообщение
#2002
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Vanes, а опыт ты как будешь получать за убитое существо? Потом, а вдруг сражающийся персонаж покинет Арену, и что же будут делать остальные игроки? Если все это делать через переключатель, то на него надо вешать переменную, которая будет срабатывать только тогда, когда ты заплатишь за использование Арены. Только вот ведь какая загвоздка, Арена то используется тем игроком, который покинул сервер.
Идея Арены такая, чтобы на ней за раз мог сражаться только один игрок, а остальные просты бы могли подождать. |
![]()
Сообщение
#2003
|
|
Level 6 ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить NWN: Скриптинг [PW] ![]() |
вешаеш переменую на чара и рычаг(имя_фамилия)
когда чар выходит(exit area), сравниваеш его переменую с переменой рычага если тру - убиваеш копию так нельзя чтоле? запутался что-то Сообщение отредактировал [MoF]Darth_Nick - Feb 22 2006, 10:36 |
![]()
Сообщение
#2004
|
|||||||||
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
Zirrex, вот несколько идей по твоему скрипту: - Во-первых проверка
в переборе
будет происходить только один раз только для первого объекта, и первым обьектом в области может быть и не существо, тогда цикл вообще не станет выполняться, а если и будет выполняться, то без нужных проверок. Внеси проверку внутрь цикла, например так:
, то же самое для перебора в конце Кстати, куча лишних комментариев только затрудняют понимание кода. -
Если первый зашедший на сервер персонаж не на арене, то скрипт вообще перестанет выполняться. Сообщение отредактировал azathoth - Feb 22 2006, 11:25 |
||||||||
![]()
Сообщение
#2005
|
|||||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
azathoth, проверка на тип объекта у меня стоит внутри цикла. Это я в этом примере вынес наружу, чтобы убедиться, что это неверно (IMG:style_emoticons/kolobok_light/smile.gif) Комментариев в оригинальном скрипте у меня нет. Я их добавил тут для того, чтобы сторонний наблюдатель мог разобраться в скрипте. В этом коде:
достаточно убрать 'return', и изменить скрипт на:
как все должно заработать. Какие еще ошибки? Это то я исправлю, но суть проблемы не изменится. [MoF]Darth_Nick, нельзя так. Вся информация о персонаже становится недоступной, когда он выходит с сервера. Да и запутался я в этих переменных, вроде бы все верно, а работать не желает. Даже пробовал присваивать переменную копии, а потом уж по ней выявлять существ, и все равно не работало. Смотри, самый простой пример, вешаю переменную на персонажа в момент активации сражения. Переменная становится равной 1. Персонаж резко выходит с модуля. На выходе с локации стоит скрипт, который проверяет, висит ли эта переменная на выходящем существе или нет, если висит, то сбросить на 0. Только вся беда в том, что когда персонаж покидает не локацию, а модуль, то скрипт не успевает проверить переменную. Почему? Я не знаю. Зачем вообще делать действие LeaveModule, если оно не умеет правильно работать с выходящими персонажами? |
||||
![]()
Сообщение
#2006
|
|||||||||||
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
Комментариев в оригинальном скрипте у меня нет. Я их добавил тут для того, чтобы сторонний наблюдатель мог разобраться в скрипте. Мало помогают, вместо того, чтобы писать, что делает каждая отдельная команда (что и так ясно из ее названия) лучше написать, что делает тот или иной блок команд, например, что ищет тот или иной цикл. Что означает nCreature я так и не понял =) Но почему он устанавливается в ТRUE скажу:
Первый проход цикла: Паблик первого персонажа совпал, переменная FALSE, второй проход - паблик не совпал, переменная в TRUE, и монстр удаляется. Избежать можно например так:
А вообще слишком запутанно, вот так вроде бы логичнее (алгоритм тот же), написал пока разбирал:
P.S. проверка
будет всегда верна, так как пройдет если существо ИЛИ ни дм ИЛИ не игрок, что-нибудь да и верно, по-видимому нужно так:
Сообщение отредактировал azathoth - Feb 22 2006, 15:55 |
||||||||||
![]() ![]()
Сообщение
#2007
|
|||||||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
azathoth, спасибо за помощь, но я успел перекроить код и немного его оптимизировать. Вот что получилось. Столько лишнего кода оказалось (IMG:style_emoticons/kolobok_light/smile.gif) Второй цикл поиска существа я убрал, потому что можно работать и без него с объектом 'oEnemy = oCreature;'. Сразу этого не заметил, а одна строчка сильно разгружает код.
Просмотрел твою редакцию кода, и вижу что немного не понял сути. 'bDestroy = FALSE' будет до тех пор, пока на Арене не появится персонаж с условием:
Условие отрицания не сработает, и ключ 'bDestroy' останется 'TRUE'. Далее, если персонаж с условием
войдет на Арену, то появившийся враг тут же пропадет. А если быстро выйдет, до срабатывания хартбита, то враг останется на Арене (IMG:style_emoticons/kolobok_light/smile.gif) Переменную 'SetLocalInt(oMod, "WorkArena", FALSE);' мне нельзя делать 'FALSE' сразу после убийства врага, потому что врагов может быть двое или трое. Сообщение отредактировал Zirrex - Feb 23 2006, 04:03 |
||||||
![]() ![]()
Сообщение
#2008
|
|||
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
посмотрел я заметил (как мне кажеться) вот что - в скрипте не с того угла танцуете (IMG:style_emoticons/kolobok_light/biggrin.gif) ..ведь первое, что надо проверить - это есть ил и нет игрок на арене, а потом уже смотрет какие кричи, что там делают ну и в итоге вот что получилось
Сообщение отредактировал mamuc - Feb 23 2006, 15:46 |
||
![]()
Сообщение
#2009
|
|||||
Level 5 ![]() ![]() Класс: Маг Характер: Lawful Good Раса: Тварь ![]() |
Всё Мужики Помираю срочно Хелп. Вот такая Проблемка. 1. Ставлю локалку на ондед Босса.
2. В скрипте Кат Сценки Проверяю на Локалку. И канечно же ничо не Пашит Хелп. плиз.
|
||||
![]()
Сообщение
#2010
|
|
Level 5 ![]() Класс: Волшебник Характер: Chaotic Good Раса: Дракон NWN: Скриптинг [Sn] ![]() |
Опиши ситуацию подробнее...у тебя сценка должена запускаться когда босс жив или все же когда погибает.
|
![]() ![]() |
Текстовая версия | Сейчас: 30th April 2025 - 08:40 |