Помощь - Поиск - Пользователи - Календарь
Полная версия: Вопросы новичков
Город Мастеров > РЕДАКТОРЫ > Neverwinter Nights Aurora Toolset
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103
-fenix-
DEM, можно и так и так, ведь вейпоинт - это объект.
Просто GetWaypointByTag, как я понял ищет только среди вейпоинтов, а GetObjectByTag ищет среди всех объектов.
Vitalist
Спасибо за "дистанцию", но я сделал немного по-другому - больше она не нужна. Вопросик: как сделать, чтобы когда говорил NPC? другие то же что-то щебетали (типа поддакивали, но не перебивали). И второй: чтобы в разговор вклинился 3 NPC (типа втроем разговаривают)
Dik Morris
Если в корневую строку поставить тэг NPC, то его тэг будет проверкой для начала строки
пример диалога с фразой : "Ты мне не нравишься " - эта фраза будет
доступна только одному NPC с тэгом "AM_SEC_02". Теперь вставьте этот диалог на любого
другого персонажа , при попытке заговорить с ним фразу будет произносить NPC с тэгом
сделать один диалог для десяти NPC с десятью фразами и
проверками тэгов . Это будет верно , и будет работать , но объекты должны находиться на
расстоянии друг от вводится текст выбранной строки .

ЗЫ: Данный текс, из мануала, Aiwan' а.
Добавлено в [mergetime]1125243424[/mergetime]
QUOTE
типа поддакивали, но не перебивали

Можно, так:
Neverwinter Script Source
void main()
{
object oNPC = GetObjectByTag("таг непися");
AssignCommand(oNPC, SpeakString("нужное сообщение"));
}

Ставится, на строчку в диалоге yes.gif
Aiwan
QUOTE (DEM @ Aug 28 2005, 13:43)
Айван, у тебя сегодня день не задался? , это ИМХО не красиво... А не правильная формулировка вопроса, ну... Вспомни себя когда ты стал изучать ТУЛСЕТ вначале....

Прекрасно помню и что?
QUOTE (DEM @ Aug 28 2005, 13:43)
Это ставишь между "voi main ()" и скобочек...

Вот учишь человека, а d в слове войд забыл...
QUOTE (DASADA @ Aug 28 2005, 15:36)
Ну ладно тебе Aiwan  . Спать хотелось, вот и по быстрому решил вопрос написать.

Вот надо было идти спать. Выспаться, а потом вопросы задавать.
QUOTE (DEM @ Aug 28 2005, 15:47)
... тогда гадо делать прыжки из одного вэйпоинта в другой.. ну конечно если у тебя города не в одной локации

ЛОЛ lol.gif
Вешай локаклку на модуль:
LocalInt X2_SWITCH_CROSSAREA_WALKWAYPOINTS == TRUE; - (на Modules) ходят по вейпам из локации в локацию
LocalInt X2_L_WAYPOINT_SETFACING == TRUE; - (на WP) становится лицом в сторну вепоинта
Дальше расставляй вейпоинты по проядку, что бы в одном городе были первые, в другом вторые по группам.
QUOTE (DEM @ Aug 28 2005, 19:56)
Э-э-э-э... А разве вэйпоинты перечисляются через GetObjectByTag??? Я думал, через GetWaypointByTag, или так тоже можно??

Через это все можно перечислять. Но если есть функция для объекта отдельно, то лучше юзать ее. Будет быстрее и проще движку обрабатывать.




LEX: Айв, чуть терпимее будь. smile.gif
Scaled
Приветствую!..
У меня возник вот такой вопрос. Я установил систему распределения опыта в скрипт nw_c2_default7 в виде ExecuteScript("бла-бла", OBJECT_SELF);
Теперь при убивании монстра мне выдаеться нужное колво опыта. Проблема вот в чем, убиваем мостра - выдаетья, скажем, с 10хр и потом сразу еще почему-то 100. Я так понял это может быть в модуле на OnPlayerLevelUp, убрал от туда все - всеравно. В чем дело?
Заранее спасибо....
dumbo
Scaled, ты серьезно полагаешь, что после каждого монстра игроку уровень поднимают? shok.gif в настройках модуля, на вкладке Advanced(не знаю как она называется в разных кривых переводах на русский) есть ползунок XP scale - вот его то и надо скрутить на 0. wink.gif

ps. вопрос, если еще не внесен, следует внести в faq
mamuc
...ммм ... тут еще один вариант может быть, кроме упомянутый dumbo
... если просто добавил строчку в скрипт ExecuteScript("бла-бла", OBJECT_SELF);
и не закоментировал\не стер дальше давание опыта по старому..тогда тоже может вполне получится давание опыта 2 раза и новому и по старому... yes.gif

п.с. кстати - скрипты nw_c2_default7 и прочие стандартные лучше не менять, а вместо них написать свой собственный с оргинальным именем и именно его имя проставить в настройках вместо nw_c2_default7
dumbo
mamuc, устанешь сильно у всех кричей проставлять свои скрипт-сеты. к тому же, в таком случае нужно будет избегать любых проявлений стандартной палитры в модуле.
mamuc
dumbo ...ммм ну не совсем так biggrin.gif
стандартные будут работать с стандартными nw_c2_default..., а кустомные - новыми... ИМХО если делать, то делать и использовать все кустомное, ибо стандартные реакции ну очень ммм "неуклюжие" у стандартных скриптов..( да и стандартные билды монстрятника - слабоваты для наших "ушлых" плееров, так что стандартом мона в каком нить ДМовском квесте попользоваться, а на постоянный респ все таки кустомные ставить) тупые и слабые они ..а хотца и шоб сильнее противник был и АйКю поизощренее biggrin.gif diablo.gif ( как вариант - брать соотв.скрипты с ваулта и подработать под себя)
Vitalist
DikMorris, good.gif
Теперь нужен тригер, при заходе на который игрок слушает разговор м\у NPC: игрок стоит на месте и не может прервать беседу


LEX: Хм.. а ты сам то пробуешь это сделать до того, как попросить о помощи?
-fenix-
Vitalist, чем кординально это отличается от твоего первого вопроса?
В редакторе разговора, над полем Текст, есть ТЭГ говорящего, выбирай теги нужных НПС и делай разговор. Конечно все НПС должны стоять достаточно близко, чтобы получился разговор. Вместо фраз игрока можно ставить "дальше", чтобы он дослушал и не прервал, сделай режим кутсцены и снимай его на последней строчке диалога.
Если нужна перепалка фразами, когда они над головами появляются, то на тригере через DelayCommand нужно задать время появления каждой фразы.
Скажем так, ПС заходит на тригер, у него включается режим сценки и в ней НПС, чья фраза первая начинает диалог(и писать диалог надо у него).

Neverwinter Script Source
void main()
{
object oPC = GetEnteringObject();
object oNPC = GetObjectByTag("ТАГ НПС");

SetCutsceneMode(oPC, TRUE);
AssignCommand(oNPC, ActionStartConversation(oPC));
}


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

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

SetCutsceneMode(oPC, FALSE);
}
Агрессинг
Фуф - на пару дней дома!!! yahoo.gif
Вот скрипт, но при надевании предмета ПК ни чего не говорит! В чем дело?
CODE
void main()
{
  object oITM= GetPCItemLastEquipped();
object oPC = GetPCItemLastEquippedBy();
if (GetTag(oITM) =="TAG")
SpeakString("TRA LA LA");
   SetLocalInt(oPC, "DRESSED", 1);
}
Alian REXis
QUOTE (Агрессинг @ Aug 29 2005, 20:47)
Вот скрипт, но при надевании предмета ПК ни чего не говорит! В чем дело?

Я думаю, надо через AssignCommand(oPC.....);
acdcee
Здравствуйте уважаемые игроки, админы, ДМ и т.д, ну и не только smile.gif

У меня несколько вопросов и просьба есть помочь в одно не мало важном деле.

Вопросы:

1.Скрипт на куклу допустим в тренировочном зале..... как или какой скрипт нужен для того что бы ее мона аттаковать и при этом давали опыт... куда его этот скрипт вставлять, в куклу?
2. Скрипт, от которого бы Гвард в городе не просто стоял а как бы делал вид что он ходит и защищает
smile.gif
3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы smile.gif
4. если есть такой скрипт что бы в одной из лок было бы видно ворота замка...... и тоже если не трудно выложите плиззззз те скрипты из перечня.
5.скрипт такой что бы отдыхе персонаж разводил кастер как на сиале, и главное как сделать еду и воду какие скрипты нужны или разъесните как это делается smile.gifи вот когда он разводит кастер садится отдыхать приэтом всем он начинает типа есть( т.е пишут предмет вода еда потеряны)

З.Ы Да поможем мы нубом в их не легком труде smile.gif


Если не трудно то помогите прошу !!!:)



LEX: как новичку, acdcee, 1 нарушение тебе прощается. Дальше будут преды. Читай правила.
Тема совмещена с соответствующей.
Misty Dragon
QUOTE (acdcee @ Aug 30 2005, 08:35)

1.Скрипт на куклу допустим в тренировочном зале..... как или какой скрипт нужен для того что бы ее мона аттаковать и при этом давали опыт... куда его этот скрипт вставлять, в куклу?


Кукла - плэсейбл. Вставляем скрипт в слот OnDamaged.
Neverwinter Script Source
void main()
{
  object oDamager = GetLastDamager();
  if(oDamager != OBJECT_INVALID)
    GiveXPToCreature(oDamager, 1);
}


Скрипт можно разбавить условиями выдачи опыта. И вместо единички - произвольное количество опыта.

QUOTE (acdcee @ Aug 30 2005, 08:35)

2. Скрипт, от которого бы Гвард в городе не просто стоял а как бы делал вид что он ходит и защищает
smile.gif

Используй WAYPOINT в тулсете.
Пример:
Tag охранника: GUARD
WP_GUARD1 WP_GUARD2 WP_GUARD3
по этим трем вейпоинтам он должен ходить. smile.gif вроде правильно smile.gif

QUOTE (acdcee @ Aug 30 2005, 08:35)

3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы smile.gif

Тут тебе надо будет делать свои тайлсеты и редактировать 2da.

QUOTE (acdcee @ Aug 30 2005, 08:35)

4. если есть такой скрипт что бы в одной из лок было бы видно ворота замка...... и тоже если не трудно выложите плиззззз те скрипты из перечня.

Эммм... а попонятней мысль оформить слабо? smile.gif

QUOTE (acdcee @ Aug 30 2005, 08:35)

5.скрипт такой что бы отдыхе персонаж разводил кастер как на сиале, и главное как сделать еду и воду какие скрипты нужны или разъесните как это делается smile.gifи вот когда он разводит кастер садится отдыхать приэтом всем он начинает типа есть( т.е пишут предмет вода еда потеряны)

В слоте модуля OnPlayerRest вешаешь скрипт, где используешь

CreateObject(int nObjectType, string sTemplate, location lLocation, int Animation = FALSE, string sNewTag = "");

для создания костра.
Потом делаешь проверку на наличие воды-пищи HasItem(...), если присутствует, то удаляем - DestroyObject(...)


P.S. Скачай Лексикон. Там описание API Невера.
acdcee
QUOTE
QUOTE (acdcee @ Aug 30 2005, 08:35)

3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы


Тут тебе надо будет делать свои тайлсеты и редактировать 2da.



Если знаешь как это сделать и если есть возможность помочь то вот моя АСЯ 258-362-246

QUOTE
QUOTE (acdcee @ Aug 30 2005, 08:35)

4. если есть такой скрипт что бы в одной из лок было бы видно ворота замка...... и тоже если не трудно выложите плиззззз те скрипты из перечня.


Эммм... а попонятней мысль оформить слабо?


Представь что с одной локи ты входишь в город и на том месте где стоит триггер ты видишь ворота города а не просто полоску smile.gif

В слоте модуля OnPlayerRest вешаешь скрипт, где используешь

CreateObject(int nObjectType, string sTemplate, location lLocation, int Animation = FALSE, string sNewTag = "");

для создания костра.
Потом делаешь проверку на наличие воды-пищи HasItem(...), если присутствует, то удаляем - DestroyObject(...)



А вот тут чуть по понятней мона smile.gif(как ни как еще нуб в этом деле )
Aiwan
QUOTE (acdcee @ Aug 30 2005, 11:35)
Здравствуйте уважаемые игроки, админы, ДМ и т.д, ну и не только

Привет. Только давай читать правила? yes.gif Тему твою я совместил с этой. Читай правила.
Lex
QUOTE (Misty Dragon @ Aug 30 2005, 09:41)
Tag охранника: GUARD
WP_GUARD1 WP_GUARD2 WP_GUARD3

точнее WP_GUARD_XX
где XX это от 01 до 99

вообще тыкаем (праковй кнопкой мыши) в НПС, выскакивает менюшка, там выбираем CreateWayPoint и поинт появляется около НПС
Добавлено в [mergetime]1125388315[/mergetime]
QUOTE (acdcee @ Aug 30 2005, 10:44)
Если знаешь как это сделать и если есть возможность помочь то вот моя АСЯ 258-362-246

качай хаки с волта (http://nwvault.ign.com).
Там читай к ним документацию, все ессно на инглише.
Dik Morris
Блин, народ подскажите, плизз чтот не получается unsure.gif
Neverwinter Script Source
void main()
{
//Сначала, определяем тех кто нам нужен, задаем им собственные названия.
object oPC = GetEnteringObject();
object oNPC_Boss = GetObjectByTag("NPC_BOSS");
object oNPC_1 = GetObjectByTag("NPC_1");
object oNPC_2 = GetObjectByTag("NPC_2");
object oNPC_3 = GetObjectByTag("NPC_3");
object oNPC_4 = GetObjectByTag("NPC_4");
object oNPC_5 = GetObjectByTag("NPC_5");
object oWP = GetObjectByTag("WP_1");
//Поехали!
ActionDoCommand(SetCutsceneMode(oPC, TRUE));
ActionDoCommand(ActionMoveToObject(oWP, FALSE, 1.0f));
ActionDoCommand(AssignCommand(oNPC_Boss, SpeakString("фраза 1")));
ActionDoCommand(ActionWait(3.0));
ActionDoCommand(AssignCommand(oNPC_Boss, SpeakString("фраза 2")));
ActionDoCommand(ActionWait(3.0));
ActionDoCommand(AssignCommand(oNPC_Boss, SpeakString("фраза 3")));
ActionDoCommand(ActionWait(3.0));
ActionDoCommand(AssignCommand(oNPC_Boss, SpeakString("фраза 4")));
ActionDoCommand(ActionWait(3.0));
ActionDoCommand(AssignCommand(oNPC_Boss, SpeakString("фраза 5")));
ActionDoCommand(ActionWait(3.0));
ActionDoCommand(AssignCommand(oNPC_Boss, SpeakString("фраза 6")));
ActionDoCommand(DelayCommand(10.0, SetCutsceneMode(oPC, FALSE)));
}

Дело, вот в чем. НПС, не говорит, нужные фразы, по порядку. То есть, фразы, пролетают, так быстро что их даже и не увидишь smile.gif
ЗЫ: делал, по разному... и DelayCommand, и по другому.
Lex
ох... ты не туда ставишь Action
Тебе надо очередь на Боссе выстраивать.. те так:
Neverwinter Script Source
AssignCommand(oNPC_Boss, ActionSpeakString("фраза 1"));
AssignCommand(oNPC_Boss,ActionWait(3.0));
AssignCommand(oNPC_Boss, ActionSpeakString("фраза 2"));
AssignCommand(oNPC_Boss,ActionWait(3.0));
AssignCommand(oNPC_Boss, ActionSpeakString("фраза 3"));
AssignCommand(oNPC_Boss,ActionWait(3.0));
DEM
А нельзя так:

Neverwinter Script Source
DelayCommand(1,0, AssignCommand(oNPC_Boss, ActionSpeakString("Фраза1")));
DelayCommand(4,0, AssignCommand(oNPC_Boss, ActionSpeakString("Фраза2")));
DelayCommand(7,0, AssignCommand(oNPC_Boss, ActionSpeakString("Фраза3")));
Scaled
Спасибо, теперь все нормально...
Вот такой вопрос - можно как-то запретить крафт, посредством запрета кнопки крафта у персонажа? а то хочеться чтобы игроки не изменяли вид кольчуги, скажем на платье)))
Заранее спасибо...
Vhall
QUOTE (acdcee @ Aug 30 2005, 08:35)
3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы smile.gif

Скриптов нет. Есть тайлсеты
http://nwvault.ign.com/View.php?view=hakpaks.Detail&id=1497
Вишес
Scaled
кажется, это дело описано в дефаултном скрипте OnModuleLoad


у меня тут дурацкий вопрос. Допустим есть НПС, который ходит туда-сюда по своим вейпоинтам. И вдруг, он видит, как мимо идет игрок. Тогда он бросает свое патрулирование и подходить к нему и начинает говорить с ним. При чем, это должно срабатывать и в том случае, когда игрок прячется в тенях. Как это реализовать?
Мой вариант:
на OnPerception:
Neverwinter Script Source
void main()
{
object oPC=GetEnteringObject();
if (GetIsPC(oPC))
{
AssignCommand(OBJECT_SELF,ActionMoveToObject(oPC));
AssignCommand(OBJECT_SELF,ActionStartConversation (oPC));
}
}


Только не работает. Здесь, кажется, что-то простое, чего я не догоняю.
Lex
1. object oPC=GetEnteringObject(); это вошедший объект. тебе нужен
Neverwinter Script Source
object GetLastPerceived()

2. Assign не нужен тут.
3. Проверку на то, что РС в хайде забыл... вроде эту
Neverwinter Script Source
GetHasSkill(int nSkill, object oCreature=OBJECT_SELF)
acdcee
ЭЭЭЭЭ приветствую всех мастеров и не только, у меня возник вопрос косающийся самого toolset-a.

Проблема в следующем- некоторые скрипты не работают хотя они можь и правельные, дело в том что на отм месте в скрипте где русские буквы должны быть стоят одни вопросики. Как сделать так что бы toolset понимал русские буквы, а то у меня пол модуля из-за этого не пашет.


С уважением к администрации форума smile.gif
Dik Morris
QUOTE
Как сделать так что бы toolset понимал русские

Гы, качай патч, dumbo, есть на сайте. Отличная, вещь, тулсет понимает русский шрифт + букву я !!!
Daemonix
Доброе утро. Ещё немного о мишенях
А не подскажете ли, как сделать так, чтобы непись только и делал, что всёвремя атаковал мишень?
Dik Morris
Ставь, вот этот скрипт на онSpawn, НПС.
Neverwinter Script Source
void main()
{
object oMik=GetObjectByTag("Таг мишени");
ActionAttack(oMik, TRUE);
}

ЗЫ: обрати внимание, на TRUE, если ты заменишь на FALSE, непись, будет атаковать мишень в ближнем бою, а TRUE наоборот, в дальнем biggrin.gif
Lex
QUOTE (Dik Morris @ Aug 31 2005, 09:46)
QUOTE
Как сделать так что бы toolset понимал русские


Гы, качай патч, dumbo, есть на сайте. Отличная, вещь, тулсет понимает русский шрифт + букву я !!!

проблема в первую очередь в шрифтах. У тебя их нет. Тебе нужно в оверрайд закинуть русские шрифты (есть на сайте у нас)
http://www.wrg.ru/files/?f=./nwn/nwn_fonts_v2.5.zip
acdcee
QUOTE
крипт ставится на OnSpawn НПС заведующего банком

Neverwinter Script Source
    /////////////////////////////////////////
    ////// Script for Interactive ///////////
  ///////// Mini Bank System //////////////
  /////// OnSpawn NPC Banker //////////////
//////// Date: 11.07.2004 ///////////////
///////// Created by Avaddon ////////////
/////////////////////////////////////////

void main()
{
object oPC = GetLastSpeaker();
SetListening(OBJECT_SELF, 1);
SetListenPattern(OBJECT_SELF,"положить",1);
SetListenPattern(OBJECT_SELF,"забрать",2);
SetListenPattern(OBJECT_SELF,"балланс",3);
SetListenPattern(OBJECT_SELF,"да",4);
SetListenPattern(OBJECT_SELF,"нет",5);
}


Этот скрипт ставится на OnConversation НПС заведующего банком


Neverwinter Script Source
    /////////////////////////////////////////
    ////// Script for Interactive ///////////
  ///////// Mini Bank System //////////////
  /////// OnConversarion NPC Banker ///////
//////// Date: 11.07.2004 ///////////////
///////// Created by Avaddon ////////////
/////////////////////////////////////////

#include "nw_i0_tool"
void main()
{
object oPC = GetLastSpeaker();
object oOffer = GetItemPossessedBy(oPC, "bank_offer"); // bank_offer - тэг договора.
int iAmount = StringToInt (GetMatchedSubstring (0));
int iAccount = GetLocalInt(oOffer, "money");
string sBallance = IntToString(iAccount);
string sBallancePlus = IntToString(iAccount+iAmount);
string sBallanceMinus = IntToString(iAccount-iAmount);
if(HasItem(oPC, "bank_offer"))
{
  if (GetListenPatternNumber()==10 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"account")==1)
  {
    if (iAmount>0)
      {
          if (iAmount<=GetGold(oPC))
          {
          SpeakString("Вы положили на счет "+GetMatchedSubstring(0)+"золотых монет.");
          TakeGoldFromCreature(iAmount,oPC,TRUE);
          SetLocalInt(oOffer,"money",iAccount+iAmount);
          SpeakString ("Ваш баланс на счете = "+sBallancePlus+" золотых монет.");
          DeleteLocalInt(oPC,"account");
          SetListenPattern(OBJECT_SELF,"DELETED",10);
          }
          else
          {
          SpeakString("У вас нет столько золота");
          }
      }
      else
      {
      SpeakString("Вы ввели неправильную величину");
      }
  }

    if (GetListenPatternNumber()==10 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"account")==2)
  {
    if (iAmount>0)
      {

          if (iAmount<=GetLocalInt(oOffer,"money"))
          {
          SpeakString("Вы забрали зо счета "+GetMatchedSubstring(0)+" золотых монет.");
          GiveGoldToCreature(oPC,iAmount);
          SetLocalInt(oOffer,"money",iAccount-iAmount);
          SpeakString ("Ваш баланс на счете = "+sBallanceMinus+" золотых монет.");
          DeleteLocalInt(oPC,"account");
          SetListenPattern(OBJECT_SELF,"DELETED",10);
          }
          else
          {
          SpeakString("На вашем счете нет столько золота");
          }
      }
      else
      {
      SpeakString("вы ввели неправильную величину");
      }
  }

  if (GetListenPatternNumber()==1 && GetIsListening(OBJECT_SELF))
  {

      SpeakString ("Сколько денег вы хотите положить на счет?");
      SetListenPattern(OBJECT_SELF,"**",10);
      SetLocalInt(oPC,"account",1);

  }
  if (GetListenPatternNumber()==2 && GetIsListening(OBJECT_SELF))
  {
  SetListenPattern(OBJECT_SELF,"DELETED",10);
  SpeakString ("Сколько денег вы хотите забрать?");
  SetListenPattern(OBJECT_SELF,"**",10);
  SetLocalInt(oPC,"account",2);
  }

  if (GetListenPatternNumber()==3 && GetIsListening(OBJECT_SELF))
  {
  SpeakString ("Ваш баланс на счете = "+sBallance+" золотых монет.");
  }
}
else
{
  if (GetListenPatternNumber()==1 && GetIsListening(OBJECT_SELF))
  {
  SpeakString ("Хм, разве мы подписывали с вами договор? Хотите завести счет? Даю вам минуту на размышление. Просто скажите [да] или [нет]");
  SetLocalInt(oPC,"new_account", TRUE);
  DelayCommand(60.0 , DeleteLocalInt(oPC,"new_account"));
  }
  if (GetListenPatternNumber()==2 && GetIsListening(OBJECT_SELF))
  {
  SpeakString ("Хм, разве мы подписывали с вами договор? Хотите завести счет? Даю вам минуту на размышление. Просто скажите [да] или [нет]");
  SetLocalInt(oPC,"new_account", TRUE);
  DelayCommand(60.0 , DeleteLocalInt(oPC,"new_account"));
  }
  if (GetListenPatternNumber()==3 && GetIsListening(OBJECT_SELF))
  {
  SpeakString ("Хм, разве мы подписывали с вами договор? Хотите завести счет? Даю вам минуту на размышление. Просто скажите [да] или [нет]");
  SetLocalInt(oPC,"new_account", TRUE);
  DelayCommand(60.0 , DeleteLocalInt(oPC,"new_account"));
  }
  if (GetListenPatternNumber()==4 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"new_account")== TRUE)
  {
  CreateItemOnObject("bank_offer", oPC, 1);
  SetLocalInt(oOffer, "money", 0);
  SpeakString("Большое спасибо, что воспользовались услугами нашего банка! Вот ваш договор!");
  SetListenPattern(OBJECT_SELF,"DELETED",10);
  }
  if (GetListenPatternNumber()==5 && GetIsListening(OBJECT_SELF) && GetLocalInt(oPC,"new_account")== TRUE)
  {
  SpeakString ("Ну нет, так нет.");
  DeleteLocalInt(oPC,"new_account");
  }


}
}




можно вот спросить почему скрипт не работает?
-fenix-
acdcee, я думаю у тебя надо спросить smile.gif
Ты знаешь, как им управлять?
Надо разговаривать с заведующим банком через строчку"разговор", или ка она там правильно. Короче, над быстрыми слотами строчка, в ней пиши и жди ответа.
Еще на OnSpawn скрипт поставить не забудь. Мож еще, что не правельно делаешь, а сам скрипт нормальный, у меня работал.
Добавлено в [mergetime]1125485723[/mergetime]
Может, ты далеко от НПС стоишь и он тебя не слышет, мож еще что... dntknw.gif , он у тебя хоть компилится?
acdcee
А как сделать так чтобы через диалог, я сделал что ты написал типа пообчайся с ним через то то и все равно не как sad.gif так что сделать что бы он работал sad.gif?????????
-fenix-
QUOTE (acdcee @ Aug 31 2005, 14:04)
я сделал что ты написал типа пообчайся с ним через то то и все равно не как

Ну не знаю, ты что ему говорил?
Надо только одно из этого:
"положить"
"забрать"
"балланс"
"да"
"нет"
А потом ждать, что ответит НПС и опять писать соответствующую фразу из списка.
QUOTE (acdcee @ Aug 31 2005, 14:04)
А как сделать так чтобы через диалог,

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


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

как сделать эту еду и питье????


я уже понимаю что такой нуб не понимающий пока !!! надоедает но как я понял форум для этого и сделан...

И еще одно есть ли такой скрипт- у меня есть скрипт который присмерти перса переносит его типа душу в другуб локу и там стоит тело который воскрешает.... так вот как написать или помогите с скриптом на этого чувака чтоб он воскрешал... или уже живого перса переносил в локу с храмом, и еще одно чтоб он переносил в ту локу где именно ты умер или в город лил в деревню где есть храм и ты типа умер в окрестностях той деревни и ли города smile.gif надесь всем будет понятно тчо я имел ввиду.


на счет скрипта или хаков на постраение гор в локе smile.gif так вот помогите или ссылкой на хак или скриптом smile.gif

еще раз с уважением к администрации и посетителем smile.gif
Добавлено в [mergetime]1125512904[/mergetime]
QUOTE
Ну не знаю, ты что ему говорил?
Надо только одно из этого:
"положить"
"забрать"
"балланс"
"да"
"нет"
А потом ждать, что ответит НПС и опять писать соответствующую фразу из списка.



именно это я и писал после того как ты мне сказал писать в разговоре но НПС ноль эмоций.

Не каких лишних скриптов нету у него просто какая то х..... плиз подскажите как поправить smile.gif?
Lex
QUOTE (acdcee @ Aug 31 2005, 22:26)
У меня опять появился вопрос, как сделать так что бы перс приотдыхе ел еду и пил воду, разводил костер???

в соседней теме это обсуждалось и закончилось скриптом от 2_advanced в базе скриптов. Посмотри там.
Lex
QUOTE (acdcee @ Aug 31 2005, 22:26)
но как я понял форум для этого и сделан...

форум сделан для помощи тем, кто пытается понять сам и у него что-то не выходит, а не для тех, кто ищет себе готовые скрипты для модуля или просит других эти скрипты ему написать.
я тут не конкретно про тебя говорю, а вообще предлагаю подумать над этим всем новичкам.
Добавлено в [mergetime]1125513500[/mergetime]
QUOTE (acdcee @ Aug 31 2005, 22:26)
И еще одно есть ли такой скрипт- у меня есть скрипт который присмерти перса переносит его типа душу в другуб локу и там стоит тело который воскрешает.... так вот как написать или помогите с скриптом на этого чувака чтоб он воскрешал... или уже живого перса переносил в локу с храмом, и еще одно чтоб он переносил в ту локу где именно ты умер или в город лил в деревню где есть храм и ты типа умер в окрестностях той деревни и ли города smile.gif надесь всем будет понятно тчо я имел ввиду.

имено такого скрипта нет, но написать труда не составляет.
Попробуй, возникнут прроблемы - спрашивай.
могу дать пару советов:
- для воскрешения посмотри стандартный скрипт respawn в свойствах модуля. там есть функция, где идет снятие эффектов и лечение.
- для переноса в разные локации сначала подумай, как ты будешь определять, где эта локация по отношению к храмам находится.
Самый простой вариант это локальные переменные на локацию или вэйпоинты, которые будут определять, куда после смерти переносить игрока.
acdcee
Пасибо седня посматрю как свой скрипт поправить, я сделал как и чуть переделал другой скрипт вроде работает после смерти переносит вот осталось чтоб обратно.

еще раз с уважением к администрации
Wereman
Существует help по .2da таблицам?
Lex
Раздел форума, посвященный контенту (модели, текстуры, 2да, тайлсеты).
(с) Правила Раздела
Добавлено в [mergetime]1125649687[/mergetime]
а более конкретно, тебе сюда: http://www.wrg.ru/forums/index.php?showtopic=704
Daemonix
Добрый вечер, WRG! biggrin.gif
У меня тут вопросы накопились:
1. Есть ли в игре такая анимация, чтобы два непися стояли друг перед другом и жестикулировали, как они болтают друг с другом? Если есть, скажите, пожалуйста, как это сделать.
2. Как сравнить между собой две переменные? Т.е. в закладке “текст появляется при” нужно сделать так, чтобы текст появлялся только, если переменная “var1”>”var2”. Как это сделать?
3. Я сделал свой собственный предмет по типу “разнообразное маленькое”. Почему, когда я беру несколько штук этого предмета, он кладёт каждый в свою ячейку, а не “все в одну, количество в виде индекса сбоку”?
4. Как проверить, что, скажем, кол-во золота у игрока больше, чем 100?
DEM
1.Я же прошу, посмотри здесь: http://wrg.ru/old/stat_anim_npc1.htm Особенно, таблицу, там есть все анимации...


-fenix-
QUOTE (Daemonix @ Sep 2 2005, 22:32)
2. Как сравнить между собой две переменные? Т.е. в закладке “текст появляется при” нужно сделать так, чтобы текст появлялся только, если переменная “var1”>”var2”. Как это сделать?


Neverwinter Script Source
if (GetLocalInt(oObject, "Название") > GetLocalInt(oObject, "Название"))



QUOTE (Daemonix @ Sep 2 2005, 22:32)
4. Как проверить, что, скажем, кол-во золота у игрока больше, чем 100?

Neverwinter Script Source
if (GetGold(oPC) > 100)
QUOTE (Daemonix @ Sep 2 2005, 22:32)
3. Я сделал свой собственный предмет по типу “разнообразное маленькое”. Почему, когда я беру несколько штук этого предмета, он кладёт каждый в свою ячейку, а не “все в одну, количество в виде индекса сбоку”?

У типа “разнообразное маленькое” нет стека, это мелкие вещи: типа куклы, листочка...
QUOTE (Daemonix @ Sep 2 2005, 22:32)
1. Есть ли в игре такая анимация, чтобы два непися стояли друг перед другом и жестикулировали, как они болтают друг с другом? Если есть, скажите, пожалуйста, как это сделать.

Просто нужно челов повернуть друг к другу и повесить на них онимацию.
Lex
QUOTE (Daemonix @ Sep 2 2005, 22:32)
1. Есть ли в игре такая анимация, чтобы два непися стояли друг перед другом и жестикулировали, как они болтают друг с другом? Если есть, скажите, пожалуйста, как это сделать.

в базе скриптов есть мой скрипт, который я в тавернах Тсурлагола использовал.
QUOTE (Daemonix @ Sep 2 2005, 22:32)
4. Как проверить, что, скажем, кол-во золота у игрока больше, чем 100?

имено этот пример разобран в Вопросах и Ответах (ВиО).

вывод: перед тем, как спросить, гляньте хотя бы ВиО и Базу скриптов. Темы небольшие же..
Daemonix
QUOTE
вывод: перед тем, как спросить, гляньте хотя бы ВиО и Базу скриптов. Темы небольшие же..

У меня просто интернет очень медленный и его мало. Так что долго не полазишь.
Aiwan
QUOTE (Daemonix @ Sep 3 2005, 01:43)
У меня просто интернет очень медленный и его мало. Так что долго не полазишь.

А народ париться пишет темы для новичков - просто им делать нечего? dntknw.gif
nO_oadu
У меня такой вопрос - а как сделать чтобы у NPC глаза горели?
Добавлено в [mergetime]1125851182[/mergetime]
И еще вопрос - как сделать чтобы когда умираешь, кнопка РЕСПАУН нек появлялось? aggressive.gif
Aiwan
1. Глаза горят у монахов. Не помню с какого уровня.

2.
Neverwinter Script Source
// Spawn in the Death GUI.
// The default (as defined by BioWare) can be spawned in by PopUpGUIPanel, but
// if you want to turn off the "Respawn" or "Wait for Help" buttons, this is the
// function to use.
// - oPC
// - bRespawnButtonEnabled: if this is TRUE, the "Respawn" button will be enabled
//  on the Death GUI.
// - bWaitForHelpButtonEnabled: if this is TRUE, the "Wait For Help" button will
//  be enabled on the Death GUI (Note: This button will not appear in single player games).
// - nHelpStringReference
// - sHelpString
void PopUpDeathGUIPanel(object oPC, int bRespawnButtonEnabled=TRUE, int bWaitForHelpButtonEnabled=TRUE, int nHelpStringReference=0, string sHelpString="")

Твой код будет выглядеть так:
Neverwinter Script Source
PopUpDeathGUIPanel(object oPC, FALSE, FALSE)
nO_oadu
Спасибо большое! biggrin.gif
Добавлено в [mergetime]1125854597[/mergetime]
Хмммммм....... Чего-то глазоньки у монахов не горят..... aggressive.gif
baskan
Глаза будут светится только на 20 уровне монаха, и если расса человек.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2025 Invision Power Services, Inc.