Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

 Правила этого форума ПРАВИЛА РАЗДЕЛА
135 страниц V  « < 26 27 28 29 30 > »   
Ответить в эту темуОткрыть новую тему
> ОДИНОЧНЫЙ ВОПРОС, на любую тулсетовскую тему
zmey
сообщение Jul 21 2005, 15:14
Сообщение #676


Level 4
**

Класс: Маг
Характер: Chaotic Evil
Раса: Дракон



Fenixу, вечно живому и из пепла возрождающемуся! Спасибо! Но ты это, раскладку клавиатуры менять не ленись, З.Ы - этокак- то странно смотрится...
Добавлено в [mergetime]1121949907[/mergetime]
Вопрос номер следующий: я хочу добавит в игру новые иконки (кольца, амулеты и т д.) создаю рисунки в формате tga засовываю их в hak и... ничего не работает.

а иконки, выдранные из других hak-ов и засунутые в один новый прекрасно отображаются. НЕ ВРУБЛЮСЬ, В ЧЁМ ДЕЛО? Вроде размеры соблюдены...

и ещё... у меня в модуле 50 различных иконок колец. Достал ещё несколько (HAk) подключил... а их нет. Больше 50 нельзя, что - ли? Ведь заменить их получается. :crazy:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Jul 21 2005, 17:46
Сообщение #677


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



zmey надо править baseitems.2da там есть столбец отвечающий за кол-во иконок.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Loxness
сообщение Jul 21 2005, 21:42
Сообщение #678


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Подскажите пожалуйста пример скрипта вставляемых в диалог что бы персонаж
1.падал и дрых
2.Герой получал ХР за получение вещи (в диалоге передали и с трупа взяли)
3.Герой получает ХР за финальную фразу
4.Герой менял свой пол
5.Как перейти в область что бы наемники не перешли с главным героем ?
6.как перейти в диалоге последней фразой в новый модуль и соотв. в новом модуле активировать старого перса?

Также как задать в области тригггер что бы при наступлении на него героем появились NPS но не нападающие на героя?

Как регулировать фразы в диалогах - как сделать так что бы в первый раз когда подошли к персонажу была одна фраза а во второй другая?


Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение Jul 22 2005, 01:24
Сообщение #679


Level 9
Иконки Групп

Класс: Фея
Характер: Chaotic Evil
Раса: Тварь
NWN: Скриптинг [PW]



QUOTE (Loxness @ Jul 21 2005, 22:42)
1.падал и дрых

не совсем понятно, что ты имеешь ввиду. самое простое:
Neverwinter Script Source
AssignCommand(GetPCSpeaker(), ActionPlayAnimation(ANIMATION_LOOPING_DEAD_BACK, 1.0, 9999.0));// 9999 - длительность в секундах

QUOTE (Loxness @ Jul 21 2005, 22:42)
2.Герой получал ХР за получение вещи (в диалоге передали и с трупа взяли)

обратно не понять тебя - с какого трупа? что значит в "диалоге передали"? если я правильно понимаю процесс окончания стандартного квеста "пойди-принеси-пошелнахнемешай", то на строку PC "на тебе вещь" проверку типа:
Neverwinter Script Source
return  GetIsObjectValid(GetItemPossessedBy(GetPCSpeaker(), "тэг мегавещи"));
и Actions Taken типа:
Neverwinter Script Source
DestroyObject(GetItemPossessedBy(GetPCSpeaker(), "тэг мегавещи"));
GiveXPToCreature(GetPCSpeaker(), 1000);

QUOTE (Loxness @ Jul 21 2005, 22:42)
3.Герой получает ХР за финальную фразу

мда. опять же, только по предположениям о том, что ты имел ввиду - на строку("финальную") повесь Actions Taken:
Neverwinter Script Source
GiveXPToCreature(GetPCSpeaker(), 1000);

QUOTE (Loxness @ Jul 21 2005, 22:42)
4.Герой менял свой пол

ура! четко и ясно. но. буу. это невозможно. ;) можно только поменять вид игрока(SetCreatureAppearance), но пол останется неизменным.
QUOTE (Loxness @ Jul 21 2005, 22:42)
5.Как перейти в область что бы наемники не перешли с главным героем ?

отцепить их - RemoveHenchman. либо корректировать стандартные скрипты хенчей. может и есть такая возможность в изначальном варианте, но я насчет такого не в курсе(не смотрел).
QUOTE (Loxness @ Jul 21 2005, 22:42)
6.как перейти в диалоге последней фразой в новый модуль и соотв. в новом модуле активировать старого перса?

Neverwinter Script Source
//для шарда
ActivatePortal(GetPCSpeaker(), "nwn.blabla.ru:5151", "пароль",
              "ВЭЙПОИНТ В НОВОМ МОДУЛЕ(только верхний регистр)", TRUE);
//для сингла
StartNewModule("имя файла нового модуля(без расширения)");

QUOTE (Loxness @ Jul 21 2005, 22:42)
Также как задать в области тригггер что бы при наступлении на него героем появились NPS но не нападающие на героя?

простой single-shot encounter. NPC фракции Commoner, но в свойствах encounter'а фракция должна быть Hostile - иначе не сработает.
QUOTE (Loxness @ Jul 21 2005, 22:42)
Как регулировать фразы в диалогах - как сделать так что бы в первый раз когда подошли к персонажу была одна фраза а во второй другая?

сто пятьдесят тысяч раз уже жевали. в скриптах на фразах надо ставить/проверять локальные переменные.

ps. устал. уехал в иные страны на моря. B) :mamba: :alko:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Loxness
сообщение Jul 22 2005, 02:01
Сообщение #680


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Прошу прощения за неточные вопросы и за дельные ответы
итак продолжим

1.Как сделать так что бы после сказанной фразы - произошел мультик вызова какой нибудь зверюги
(не помощника а например Демона из круга...там скалы из земли лезут )?
2.Как сделать так что бы наемник сам отделялся , отказываясь далее идти (наступив на триггер какой нибудь)?
3.Предположим сделаны 3 одинаковых персонажа , поместив их в одну локацию и создать точки маршрута , все трое туда ломятся, как сделать так что бы ходил один а остальные стояли?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jul 22 2005, 09:56
Сообщение #681


Вечно меняющийся
Иконки Групп

Класс: Монах
Характер: True Neutral
Раса: Человек
NWN: Скриптинг [Sn]



1. Не помню :D
2. Дык вот скриптик на onEnter тригерра: (попозже выложу)
3. Нет ничего проще! Просто сделай этим персам уникальные (свои разные тэги) тэги, и все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 22 2005, 12:24
Сообщение #682


Level 19
Иконки Групп

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE (Loxness @ Jul 22 2005, 02:01)
1.Как сделать так что бы после сказанной фразы - произошел мультик вызова какой нибудь зверюги (не помощника а например Демона из круга...там скалы из земли лезут )?

Тут надо сценку писать! А для этого либо ты сам в них разбераешься, с задаванием вопросов, либо досконально объясняешь, что тебе точно нужно - может кто тут напишет.
QUOTE (Loxness @ Jul 22 2005, 02:01)
2.Как сделать так что бы наемник сам отделялся , отказываясь далее идти (наступив на триггер какой нибудь)?

Loxness, тут уже спрашивали

QUOTE (zmey @ Jul 21 2005, 11:01)
Люди! Мне нужна такая хреновина: Например, с моим персом идет напарник. Мне надо, чтобы в определенном месте он остановился, и сказав типа "Я дальше не пойду" выбыл из компаниии уже НЕ ПРИСОЕДИНЯЛСЯ НИКОГДА.


QUOTE (-fenix- @ Jul 21 2005, 12:07)


zmey, есть функция
Neverwinter Script Source
void RemoveHenchman(object oMaster, object oHenchman=OBJECT_SELF)


где
oMaster - это тот от кого уходит хенчмен
oHenchman - это хенчмен, каторый уходит

То, что ты хочешь можно сделать с помощью тригера и скрипта на нем проверяющего кто наступил. Рисуешь тригер и на ОнЭнтер ставишь скрипт

Neverwinter Script Source
void main()
{
object oMaster = GetEnteringObject();
object oHenchman = GetHenchman(oMaster);

if (GetIsPC (oMaster) && !GetLocalInt(OBJECT_SELF, "TRIGER") == 1)
  {
  AssignCommand(oHenchman, ActionSpeakString("Я дальше не пойду"));
  RemoveHenchman(oMaster, oHenchman);
  SetLocalInt(OBJECT_SELF, "TRIGER", 1);
  SetLocalInt(oHenchman, "TRUS", 1); // устанавливаем локалку, а на ветке  
  // диалога, где хенча можно обратно взять, ставим проверку на эту локалку
  }
}



Сообщение отредактировал -fenix- - Jul 22 2005, 13:39
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Loxness
сообщение Jul 22 2005, 19:45
Сообщение #683


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Вопрос по скрипту об удалении из гурппы наемника
я попробовал что то не получается
взял тестовую локацию вставил туда наемника Alex с тегом 123 - далее диалог = он со мной
ставлю триггер (настраиваемый ) в onenter добавляю заранее созданный скрипт как написано
выше ) запускаю игру ...все хорошо только наемник пробегает местность где триггер и ничго..не уходит:(
что я делаю не так?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 22 2005, 21:32
Сообщение #684


Level 19
Иконки Групп

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [Sn]



У меня все работает!!!

Не знаю ,какой настраиваем, наверное перевод разный - у меня называется новый общий.
QUOTE (Loxness @ Jul 22 2005, 19:45)
с тегом 123

Плохой тег, мож из-за него?
QUOTE (Loxness @ Jul 22 2005, 19:45)
далее диалог

Диалог, чтоб он присоеденился?

Тут должен наступить ты, а не хэнчмен!

--------------------------
Есть функции
Neverwinter Script Source
void SetPCDislike(object oPlayer, object oTarget)
void SetPCLike(object oPlayer, object oTarget)

А как понять устаналивает oPlayer и oTarget , чтобы испытывать неприязнь/приязнь друг к другу. В чем заключается эта неприязнь/приязнь.

Сообщение отредактировал -fenix- - Jul 22 2005, 22:14
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 22 2005, 22:57
Сообщение #685


Level 9
Иконки Групп

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



-fenix- они должны менять отношение одного персонажа к другому персонажу. Данная опция работает только в онлайновом режиме. Если ты обратил внимание, то при нажатии на кнопку "P", появляется список персонажей, в данный момент играющих на шарде. Там же есть иконка "любит, не любит". При ее переключении твой персонаж может стать врагом выбранному персонажу.

Эти функции должны скриптовым путем переключать это отношение. Я в свое время пробовал их использовать даже на хартбите, проверяя, если персонаж отвечает требованиям низкой репутации, то выставить автоматически для всех находящихся персонажей на сервере отрицательное отношение. Почему-то не получается. Либо я не то делал, либо эти функции так не работают.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 23 2005, 04:35
Сообщение #686


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



Эмм....может я чего то не до конца понимаю, везде, где я использую локальные переменные или "базы данных" а ля SetCampaigin[впиши недостающее], они прилично проглюкивают, гдето не считываются, или не записываются... хз, я логически размышляя пришел к выводу, что эти функции должны сохранять то, что тебе нужно, вроде сохраняют, но далеко не всегда.
Расскажите пожалуйста об этом как можно поподробнее и как могут себя повести вункции установки переменных и работы с базами данных с тех или иных случаях.

З.Ы. у меня он лайн модуль, потому нужно какое то сохранение некоторых данных.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
wolverine
сообщение Jul 23 2005, 10:30
Сообщение #687


Level 1


Класс: Бард
Характер: Neutral Evil
Раса: Полуэльф



Многоуважаемое комьюнити :) Возник на досуге вопрос животрепещущий. Как отключить меню крафта (изменения вида вещей) в кастомном модуле ? Т.к. хочется все таки уникальность вида вещей сделать, а то иначе все будут либо в мантия бегать , либо доспехи рыцарские одевать.
Зарание большое сенкс.

С уважением , Wolv
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 23 2005, 14:37
Сообщение #688


Level 9
Иконки Групп

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



wolverine очень просто, находишь диалог "x0_skill_ctrap", и либо удаляешь его, оставляя пустым, либо добавляешь новый раздел диалога, например "Крафт отключен". Теперь при попытке активации всегда будет выводиться эта фраза.

Batkom ты их постоянно что ли используешь? Дело в том, что эти функции нужны 1 раз. Они создают запись в файл базы, а дальше ты уже просто изменяешь ее содержимое. Т.е., тебе надо создать уникальный файл, куда записать переменную, а потом ее изменять, но не создавать каждый раз файл заново.

Например, входит на шард первый раз игрок, ему присуждается номер, который сохраняется в уже существующий файл базы данных. Далее, когда он перезайдет, этот номер просто считается, а не создастся новый номер на одного и того же персонажа.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 23 2005, 14:55
Сообщение #689


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



ну допустим крафт
сначала считывается навык игрока
а = GetCampaignInt("craft", "Weapon" + GetName(oPC))
если ничего такого нет, то помоему а = 0
а далее при удачных обстоятельствах навык может прокачаться тогда

SetCampaignInt("craft", "Weapon" + GetName(oPC), a+1)

Zirrex
я тебя не совсем понял, у меня не получилось с установкой флажка смерти игроку и дальнейшей телепортации в фугу при заходе
игрок либо все время варпалсяв фугу при любом положении флажка, либо вообще оставался стоять на месте
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 23 2005, 15:24
Сообщение #690


Level 9
Иконки Групп

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



Batkom это лишь говорит о том, что у тебя флажок не изменяется. Т.е., если у тебя персонаж воскрес, то флажок должен стать равным нулю, и не иначе. Если у тебя он не записался при этом в базу, значит что-то не так делаешь.

Например, как у меня, при входе серия скриптов, там идет проверка, был ли воскрешен персонаж, определенные цифры одной переменной, если нет, то дальше идет проверка, если персонаж жив, соответствующая цифра переменной равная нулю, то дополнительная проверка, а верно ли, что он жив, и тут вступает в силу еще одна переменная, если она равна 1, то персонаж умирает и переносится в фугу, а его труп размещается на кладбище, чтобы могли воскресить другие игроки. Переменная, которая отвечает за проверку, жив или мертв персонаж, у меня сохраняется на предмет, который постоянно носит с собой каждый из персонажей, и соответственно не затирается с рестартом.

Функция SetCampaignInt у меня сработала 1 раз, когда только персонаж создавался, потом она уже не используется, а все значения берутся с предмета. Конечно, если ты не хочешь смешивать переменные в одном месте, то создавай разные базы.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Batkom
сообщение Jul 23 2005, 17:38
Сообщение #691


Level 4
**

Класс: Клерик
Характер: Lawful Good
Раса: Человек



то есть SetCampaign лучге не пользоваться?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 23 2005, 20:13
Сообщение #692


Level 9
Иконки Групп

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



Batkom нет, его использовать можно, но верно, а не работать как с переменной, которую надо часто перезаписывать.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Larrel
сообщение Jul 24 2005, 21:47
Сообщение #693


Level 1


Класс: Убийца
Характер: Neutral Evil
Раса: Человек



Какой скрипт нужно юзать, чтобы переместить НПС по окончании диалога к конкретному вэйпоинту и обратно?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nick Parker
сообщение Jul 25 2005, 02:49
Сообщение #694


Level 5
**

Класс: Ученик Дракона
Характер: Lawful Good
Раса: Человек



Меня стал мучить один вопрос. Можно сделать так, чтобы играть в модуле можно было только за одну рассу? В ПЛ, если уровень больше был, то Game Over, тут наверное также: если не человек, то GoodBye. Но как это сделать?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Tiger Greyhawk
сообщение Jul 25 2005, 04:21
Сообщение #695



Иконки Групп

Класс: Обыватель
Характер: Chaotic Good
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE (Larrel @ Jul 24 2005, 22:47)
Какой скрипт нужно юзать, чтобы переместить НПС по окончании диалога к конкретному вэйпоинту и обратно?

Это обсуждалось по отдельности уже немерено раз. Смотри FAQ по Aurora Toolset Вопросы и ответы и читай темы "Скрипты" и "Вопросов новичков"
На последней ветке диалога, во вкладке "Action Taken" (Совершены действия) пишешь скрипт:
Neverwinter Script Source
void main()
{
object oPC=GetPCSpeaker();
object oWP=GetObjectByTag("TAG_WP");
location lCurrent=GetLocation(oPC);
AssignCommand(oPC, ActionJumpToObject(oWP));
AssignCommand(oPC, ActionWait(5.0));
AssignCommand(oPC, ActionJumpToLocation(lCurrent));
}

Это к вейпу и через пять сек обратно. Естественно, должен существовать вейп с тагом: TAG_WP

QUOTE (Nick Parker @ Jul 25 2005, 03:49)
Меня стал мучить один вопрос. Можно сделать так, чтобы играть в модуле можно было только за одну рассу? В ПЛ, если уровень больше был, то Game Over, тут наверное также: если не человек, то GoodBye. Но как это сделать?

Дык, на OnClientEnter ставишь проверку на расу...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DEM
сообщение Jul 26 2005, 09:03
Сообщение #696


Level 7
**

Класс: Маг
Характер: Lawful Neutral
Раса: Эльф



Помогите, если это возможно!! :shout: Можно ли свернуть окно скрипта... Я понимаю это глупый вопрос, но просто так мешает когда не можешь свернуть окно скрипта и разместить что нить в локе, посмотреть тег и т.д. :swoon:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
zmey
сообщение Jul 26 2005, 13:02
Сообщение #697


Level 4
**

Класс: Маг
Характер: Chaotic Evil
Раса: Дракон



Здрасьте, это снова Я! Посидел я пару деньков, (ВЫРЕЗАНО ЦЕНЗУРОЙ), и возникла у меня вопросов куча немеряная:

1. У меня установлены Тени и Орды. Как можно сделать, чтобы в моем модуле перс не мог создавать оружие, броню, зелья и свитки из материалов?

2. Как сделать, чтобы непись утром выходил из дома, а но ночь возвращался в дом и закрывал дверь?

3. Как предмету присваивается уникальная сила?
НАПРИМЕР:
а) нужно, чтобы при использовании уникальной силы предмета игрок получал один из трех предметов случайным образом? (Сила используется 1 раз в день)
Пусть тег предмета с уникальной силой: UN, Рес реф : un

теги получаемых предметов: ITEM1 , ITEM2, ITEM3
Рес реф-ы :item1, item2 ,item3



б) нужно, чтобы три раза можно было вызвать существо. (после чего предмет исчезает)

Пусть тег предмета с уникальной силой : UN , рес реф: un

тег существа : CREATURE

ОЧЕНЬ ПРОШУ, ОБЪЯСНИТЕ ПОДРОБНО. :crazy:
Добавлено в [mergetime]1122372681[/mergetime]
ишо пара глупостей: как сделать, чтобы при наличии в инвентаре перса определённого предмета время от времени происходило что - то?

ПОЯСНЯЮ: например, если у перса в инвентаре есть предмет с ТЕГОМ: ITEM и рес реф-ом :item , ето каждый день в его инвентаре появляется один предмет с тегом: PREDMRT и рес реф-ом :predmet

это еще не всё!

как сделать, чтобы предмет, если он экиперован, нельзя было снять, пока lokal int A=1
пример: кольцо имеет тег :RING и рес реф ring
Добавлено в [mergetime]1122383052[/mergetime]
Аваддону

QUOTE
zmey надо править baseitems.2da там есть столбец отвечающий за кол-во иконок.


уже нашёл. Но за помощь - спасибо! :crazy:
Добавлено в [mergetime]1122387559[/mergetime]
..............
нужон скрипт, при котором если НЕПИСЬ отойдет от объекта на определённое расстояние, то подохнет. Поделитесь, ежели не жалко! :crazy:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Jul 26 2005, 21:04
Сообщение #698


Level 4
**

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Обьясните, плиз, шаг за шагом, как создать триггер, при прохождение которого перс скажет нужную мне фразу?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 26 2005, 22:43
Сообщение #699


Level 9
Иконки Групп

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



zmey краткие ответы:

1. Самое простое, запретить все. С крафтом просто, удаляется диалог "x0_skill_ctrap" или дописывается еще одна ветка диалога, где пишется, что "крафт выключен", чтобы избежать вопросов. Не создавать материалы при убийстве монстров, убрав строчку " craft_drop_items(oKiller);". Посмотреть файл "nw_o2_coninclude" и убрать из генерации вещей пустые листки для заклинаний.

2. Посмотри скрипт "nw_c2_default9", там все написано.

3. На модульном эвенте "OnActivateItem" делаешь такой скрипт:

а)
Neverwinter Script Source
void main()
{
    object oItem = GetItemActivated();
    object oPC = GetItemActivator();
    string sItemTag = GetTag(oItem);

    if ((sItemTag == "un"))
    {
        if (GetLocalInt(oPC, "UnDay") == FALSE)
        {
            int iRandom = d2() + 1;
            float fHour = HoursToSeconds(24);

            switch (iRandom)
            {
                case 1: CreateItemOnObject("item_1", oPC); break;
                case 2: CreateItemOnObject("item_2", oPC); break;
                case 3: CreateItemOnObject("item_3", oPC); break;
            }
            SetLocalInt(oPC, "UnDay", TRUE);
            DelayCommand(fHour, SetLocalInt(oPC, "UnDay", FALSE));
        }
    }
}

Уникальную силу надо делать на себя.

б) В свойствах каждой вещи добавляешь требуемое заклинание, и устанавливаешь, сколько раз можно использовать вещь. Ставишь не больше 3-х раз.

4. Ставишь на эвент модуля "OnHeartbeat" сей скрипт:

Neverwinter Script Source
void main()
{
    object oPlayer = GetFirstPC();

    while (GetIsObjectValid(oPlayer))
    {
        if (GetLocalInt(oPlayer, "ItemDay") == FALSE)
        {
            if (GetItemPossessedBy(oPlayer, "item1") != OBJECT_INVALID &&
                GetItemPossessedBy(oPlayer, "item2") == OBJECT_INVALID)
            {
                CreateItemOnObject("item2", oPlayer);
                SetLocalInt(oPlayer, "ItemDay", TRUE);
                DelayCommand(fHour, SetLocalInt(oPlayer, "ItemDay", FALSE));
            }
        }
        oPlayer = GetNextPC();
    }
}


5. На эвентах модуля "OnPlayerUnEquipItem" и "OnUnAcquireItem" делаешь такие скрипты:

На эвент "OnUnAcquireItem":

Neverwinter Script Source
void main()
{
    object oItem = GetModuleItemLost();
    object oPC = GetModuleItemLostBy();

    if (GetTag(oItem) == "ring")
    {
        CopyObject(oItem, GetLocation(oPC), oPC);
        DestroyObject(oItem);
        AssignCommand(oPC, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTRING));
    }
}

На эвент "OnPlayerUnEquipItem":

Neverwinter Script Source
void main()
{
    object oPC = GetPCItemLastUnequippedBy();
    object oItem = GetPCItemLastUnequipped();

    if (GetTag(oItem) == "ring")
    {
        AssignCommand(oPC, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTRING));
    }
}


6. На хартбите НПС делаешь проверку:

Neverwinter Script Source
void main()
{
    object oPlace = GetNearestObjectByTag("place");

    if (GetDistanceBetween(OBJECT_SELF, oPlace) > 1.0)
    {
        effect eDeath = EffectDeath(FALSE, FALSE);
        ApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, OBJECT_SELF);
    }
}

Надеюсь, не ошибся. Сам не проверял, но по идее должно работать. Требует проверки.

Vitalist, самое простое, создать триггер, на его эвенте "OnEnter" повесить такой скрипт:

Neverwinter Script Source
void main()
{
    object oPC = GetEnteringObject();

    if (GetIsPC()
    {
        if (GetLocalInt(oMod, "Trigger") == FALSE)
        {
            SetLocalInt(oMod, "Trigger", TRUE);
        }
    }
}

Далее, на хартбите НПС сделать такой скрипт:

Neverwinter Script Source
void main()
{
    if (GetLocalInt(oMod, "Trigger") == TRUE)
    {
        AssignCommand(OBJECT_SELF, ActionSpeakString("Сообщение НПС", TALKVOLUME_TALK));
        SetLocalInt(oMod, "Trigger", FALSE);
    }
}


Сообщение отредактировал Zirrex - Jul 26 2005, 22:50
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Jul 27 2005, 09:16
Сообщение #700


Level 4
**

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Zirrex, как я понял, эту фразу скажет NPC, да? А мне хотелось бы что бы это вякнул игрок, типа мысли вслух...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

135 страниц V  « < 26 27 28 29 30 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28th April 2024 - 03:47