-fenix-
Aug 28 2005, 17:38
DEM, можно и так и так, ведь вейпоинт - это объект.
Просто GetWaypointByTag, как я понял ищет только среди вейпоинтов, а GetObjectByTag ищет среди всех объектов.
Vitalist
Aug 28 2005, 18:26
Спасибо за "дистанцию", но я сделал немного по-другому - больше она не нужна. Вопросик: как сделать, чтобы когда говорил NPC? другие то же что-то щебетали (типа поддакивали, но не перебивали). И второй: чтобы в разговор вклинился 3 NPC (типа втроем разговаривают)
Dik Morris
Aug 28 2005, 18:33
Если в корневую строку поставить тэг NPC, то его тэг будет проверкой для начала строки
пример диалога с фразой : "Ты мне не нравишься " - эта фраза будет
доступна только одному NPC с тэгом "AM_SEC_02". Теперь вставьте этот диалог на любого
другого персонажа , при попытке заговорить с ним фразу будет произносить NPC с тэгом
сделать один диалог для десяти NPC с десятью фразами и
проверками тэгов . Это будет верно , и будет работать , но объекты должны находиться на
расстоянии друг от вводится текст выбранной строки .
ЗЫ: Данный текс, из мануала, Aiwan' а.
Добавлено в [mergetime]1125243424[/mergetime]
QUOTE |
типа поддакивали, но не перебивали |
Можно, так:
Neverwinter Script Source |
void main() { object oNPC = GetObjectByTag("таг непися"); AssignCommand(oNPC, SpeakString("нужное сообщение")); } |
Ставится, на строчку в диалоге
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) |
... тогда гадо делать прыжки из одного вэйпоинта в другой.. ну конечно если у тебя города не в одной локации |
ЛОЛ
Вешай локаклку на модуль:
LocalInt X2_SWITCH_CROSSAREA_WALKWAYPOINTS == TRUE; - (на Modules) ходят по вейпам из локации в локацию
LocalInt X2_L_WAYPOINT_SETFACING == TRUE; - (на WP) становится лицом в сторну вепоинта
Дальше расставляй вейпоинты по проядку, что бы в одном городе были первые, в другом вторые по группам.
QUOTE (DEM @ Aug 28 2005, 19:56) |
Э-э-э-э... А разве вэйпоинты перечисляются через GetObjectByTag??? Я думал, через GetWaypointByTag, или так тоже можно?? |
Через это все можно перечислять. Но если есть функция для объекта отдельно, то лучше юзать ее. Будет быстрее и проще движку обрабатывать.
LEX: Айв, чуть терпимее будь.
Scaled
Aug 29 2005, 00:40
Приветствую!..
У меня возник вот такой вопрос. Я установил систему распределения опыта в скрипт nw_c2_default7 в виде ExecuteScript("бла-бла", OBJECT_SELF);
Теперь при убивании монстра мне выдаеться нужное колво опыта. Проблема вот в чем, убиваем мостра - выдаетья, скажем, с 10хр и потом сразу еще почему-то 100. Я так понял это может быть в модуле на OnPlayerLevelUp, убрал от туда все - всеравно. В чем дело?
Заранее спасибо....
Scaled, ты серьезно полагаешь, что после каждого монстра игроку уровень поднимают?

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

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

( как вариант - брать соотв.скрипты с ваулта и подработать под себя)
Vitalist
Aug 29 2005, 14:06
DikMorris,
Теперь нужен тригер, при заходе на который игрок слушает разговор м\у NPC: игрок стоит на месте и не может прервать беседу
LEX: Хм.. а ты сам то пробуешь это сделать до того, как попросить о помощи?
-fenix-
Aug 29 2005, 15:31
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); } |
Агрессинг
Aug 29 2005, 20:47
Фуф - на пару дней дома!!!
Вот скрипт, но при надевании предмета ПК ни чего не говорит! В чем дело?
CODE |
void main() { object oITM= GetPCItemLastEquipped(); object oPC = GetPCItemLastEquippedBy(); if (GetTag(oITM) =="TAG") SpeakString("TRA LA LA"); SetLocalInt(oPC, "DRESSED", 1); } |
Alian REXis
Aug 29 2005, 21:17
QUOTE (Агрессинг @ Aug 29 2005, 20:47) |
Вот скрипт, но при надевании предмета ПК ни чего не говорит! В чем дело? |
Я думаю, надо через AssignCommand(oPC.....);
acdcee
Aug 30 2005, 08:35
Здравствуйте уважаемые игроки, админы, ДМ и т.д, ну и не только

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

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

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

и вот когда он разводит кастер садится отдыхать приэтом всем он начинает типа есть( т.е пишут предмет вода еда потеряны)
З.Ы Да поможем мы нубом в их не легком труде

Если не трудно то помогите прошу !!!:)
LEX: как новичку, acdcee, 1 нарушение тебе прощается. Дальше будут преды. Читай правила.
Тема совмещена с соответствующей.
Misty Dragon
Aug 30 2005, 08:41
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. Скрипт, от которого бы Гвард в городе не просто стоял а как бы делал вид что он ходит и защищает

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

вроде правильно

QUOTE (acdcee @ Aug 30 2005, 08:35) |
3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы 
|
Тут тебе надо будет делать свои тайлсеты и редактировать 2da.
QUOTE (acdcee @ Aug 30 2005, 08:35) |
4. если есть такой скрипт что бы в одной из лок было бы видно ворота замка...... и тоже если не трудно выложите плиззззз те скрипты из перечня.
|
Эммм... а попонятней мысль оформить слабо?

QUOTE (acdcee @ Aug 30 2005, 08:35) |
5.скрипт такой что бы отдыхе персонаж разводил кастер как на сиале, и главное как сделать еду и воду какие скрипты нужны или разъесните как это делается и вот когда он разводит кастер садится отдыхать приэтом всем он начинает типа есть( т.е пишут предмет вода еда потеряны)
|
В слоте модуля OnPlayerRest вешаешь скрипт, где используешь
CreateObject(int nObjectType, string sTemplate, location lLocation, int Animation = FALSE, string sNewTag = "");
для создания костра.
Потом делаешь проверку на наличие воды-пищи HasItem(...), если присутствует, то удаляем - DestroyObject(...)
P.S. Скачай Лексикон. Там описание API Невера.
acdcee
Aug 30 2005, 09:44
QUOTE |
QUOTE (acdcee @ Aug 30 2005, 08:35)
3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы
Тут тебе надо будет делать свои тайлсеты и редактировать 2da. |
Если знаешь как это сделать и если есть возможность помочь то вот моя АСЯ 258-362-246
QUOTE |
QUOTE (acdcee @ Aug 30 2005, 08:35)
4. если есть такой скрипт что бы в одной из лок было бы видно ворота замка...... и тоже если не трудно выложите плиззззз те скрипты из перечня.
Эммм... а попонятней мысль оформить слабо?
Представь что с одной локи ты входишь в город и на том месте где стоит триггер ты видишь ворота города а не просто полоску 
В слоте модуля OnPlayerRest вешаешь скрипт, где используешь
CreateObject(int nObjectType, string sTemplate, location lLocation, int Animation = FALSE, string sNewTag = "");
для создания костра. Потом делаешь проверку на наличие воды-пищи HasItem(...), если присутствует, то удаляем - DestroyObject(...) |
А вот тут чуть по понятней мона

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

Тему твою я совместил с этой. Читай правила.
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
Aug 30 2005, 11:00
Блин, народ подскажите, плизз чтот не получается
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))); } |
Дело, вот в чем. НПС, не говорит, нужные фразы, по порядку. То есть, фразы, пролетают, так быстро что их даже и не увидишь
ЗЫ: делал, по разному... и DelayCommand, и по другому.
ох... ты не туда ставишь 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)); |
А нельзя так:
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
Aug 30 2005, 16:51
Спасибо, теперь все нормально...
Вот такой вопрос - можно как-то запретить крафт, посредством запрета кнопки крафта у персонажа? а то хочеться чтобы игроки не изменяли вид кольчуги, скажем на платье)))
Заранее спасибо...
QUOTE (acdcee @ Aug 30 2005, 08:35) |
3.Есть такие местоности, ээээээ не просто подемы а горы, настоящие горы так вот если скрипт на то чтобы горы были именно горы а не подъемы smile.gif |
Scaled
кажется, это дело описано в дефаултном скрипте OnModuleLoad
у меня тут дурацкий вопрос. Допустим есть НПС, который ходит туда-сюда по своим вейпоинтам. И вдруг, он видит, как мимо идет игрок. Тогда он бросает свое патрулирование и подходить к нему и начинает говорить с ним. При чем, это должно срабатывать и в том случае, когда игрок прячется в тенях. Как это реализовать?
Мой вариант:
на OnPerception:
Neverwinter Script Source |
void main() { object oPC=GetEnteringObject(); if (GetIsPC(oPC)) { AssignCommand(OBJECT_SELF,ActionMoveToObject(oPC)); AssignCommand(OBJECT_SELF,ActionStartConversation (oPC)); } } |
Только не работает. Здесь, кажется, что-то простое, чего я не догоняю.
1. object oPC=GetEnteringObject(); это вошедший объект. тебе нужен
Neverwinter Script Source |
object GetLastPerceived() |
2. Assign не нужен тут.
3. Проверку на то, что РС в хайде забыл... вроде эту
Neverwinter Script Source |
GetHasSkill(int nSkill, object oCreature=OBJECT_SELF) |
acdcee
Aug 31 2005, 08:22
ЭЭЭЭЭ приветствую всех мастеров и не только, у меня возник вопрос косающийся самого toolset-a.
Проблема в следующем- некоторые скрипты не работают хотя они можь и правельные, дело в том что на отм месте в скрипте где русские буквы должны быть стоят одни вопросики. Как сделать так что бы toolset понимал русские буквы, а то у меня пол модуля из-за этого не пашет.
С уважением к администрации форума
Dik Morris
Aug 31 2005, 08:46
QUOTE |
Как сделать так что бы toolset понимал русские |
Гы, качай патч, dumbo, есть на сайте. Отличная, вещь, тулсет понимает русский шрифт + букву я !!!
Daemonix
Aug 31 2005, 09:19
Доброе утро. Ещё немного о мишенях
А не подскажете ли, как сделать так, чтобы непись только и делал, что всёвремя атаковал мишень?
Dik Morris
Aug 31 2005, 09:28
Ставь, вот этот скрипт на онSpawn, НПС.
Neverwinter Script Source |
void main() { object oMik=GetObjectByTag("Таг мишени"); ActionAttack(oMik, TRUE); } |
ЗЫ: обрати внимание, на TRUE, если ты заменишь на FALSE, непись, будет атаковать мишень в ближнем бою, а TRUE наоборот, в дальнем
QUOTE (Dik Morris @ Aug 31 2005, 09:46) |
QUOTE Как сделать так что бы toolset понимал русские
Гы, качай патч, dumbo, есть на сайте. Отличная, вещь, тулсет понимает русский шрифт + букву я !!! |
проблема в первую очередь в шрифтах. У тебя их нет. Тебе нужно в оверрайд закинуть русские шрифты (есть на сайте у нас)
http://www.wrg.ru/files/?f=./nwn/nwn_fonts_v2.5.zip
acdcee
Aug 31 2005, 13:16
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-
Aug 31 2005, 13:51
acdcee, я думаю у тебя надо спросить
Ты знаешь, как им управлять?
Надо разговаривать с заведующим банком через строчку"разговор", или ка она там правильно. Короче, над быстрыми слотами строчка, в ней пиши и жди ответа.
Еще на OnSpawn скрипт поставить не забудь. Мож еще, что не правельно делаешь, а сам скрипт нормальный, у меня работал.
Добавлено в [mergetime]1125485723[/mergetime] Может, ты далеко от НПС стоишь и он тебя не слышет, мож еще что...

, он у тебя хоть компилится?
acdcee
Aug 31 2005, 14:04
А как сделать так чтобы через диалог, я сделал что ты написал типа пообчайся с ним через то то и все равно не как

так что сделать что бы он работал

?????????
-fenix-
Aug 31 2005, 14:42
QUOTE (acdcee @ Aug 31 2005, 14:04) |
я сделал что ты написал типа пообчайся с ним через то то и все равно не как |
Ну не знаю, ты что ему говорил?
Надо только одно из этого:
"положить"
"забрать"
"балланс"
"да"
"нет"
А потом ждать, что ответит НПС и опять писать соответствующую фразу из списка.
QUOTE (acdcee @ Aug 31 2005, 14:04) |
А как сделать так чтобы через диалог, |
Надо диалог писать и скрипт делить на части и пихать их на соответствующие фразы в диалоги, скрипт еще и подкорректировать надо будет, для разговора.
Может у тебя в слотах еще скрипты стоят, которые мешают???
acdcee
Aug 31 2005, 21:26
Приветствую всех кто есть и кто будет на форуме.
У меня опять появился вопрос, как сделать так что бы перс приотдыхе ел еду и пил воду, разводил костер???
как сделать эту еду и питье????
я уже понимаю что такой нуб не понимающий пока !!! надоедает но как я понял форум для этого и сделан...
И еще одно есть ли такой скрипт- у меня есть скрипт который присмерти перса переносит его типа душу в другуб локу и там стоит тело который воскрешает.... так вот как написать или помогите с скриптом на этого чувака чтоб он воскрешал... или уже живого перса переносил в локу с храмом, и еще одно чтоб он переносил в ту локу где именно ты умер или в город лил в деревню где есть храм и ты типа умер в окрестностях той деревни и ли города

надесь всем будет понятно тчо я имел ввиду.
на счет скрипта или хаков на постраение гор в локе

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

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

?
QUOTE (acdcee @ Aug 31 2005, 22:26) |
У меня опять появился вопрос, как сделать так что бы перс приотдыхе ел еду и пил воду, разводил костер??? |
в соседней теме это обсуждалось и закончилось скриптом от 2_advanced в базе скриптов. Посмотри там.
QUOTE (acdcee @ Aug 31 2005, 22:26) |
но как я понял форум для этого и сделан... |
форум сделан для помощи тем, кто пытается понять сам и у него что-то не выходит, а не для тех, кто ищет себе готовые скрипты для модуля или просит других эти скрипты ему написать.
я тут не конкретно про тебя говорю, а вообще предлагаю подумать над этим всем новичкам.
Добавлено в [mergetime]1125513500[/mergetime]
QUOTE (acdcee @ Aug 31 2005, 22:26) |
И еще одно есть ли такой скрипт- у меня есть скрипт который присмерти перса переносит его типа душу в другуб локу и там стоит тело который воскрешает.... так вот как написать или помогите с скриптом на этого чувака чтоб он воскрешал... или уже живого перса переносил в локу с храмом, и еще одно чтоб он переносил в ту локу где именно ты умер или в город лил в деревню где есть храм и ты типа умер в окрестностях той деревни и ли города надесь всем будет понятно тчо я имел ввиду. |
имено такого скрипта нет, но написать труда не составляет.
Попробуй, возникнут прроблемы - спрашивай.
могу дать пару советов:
- для воскрешения посмотри стандартный скрипт respawn в свойствах модуля. там есть функция, где идет снятие эффектов и лечение.
- для переноса в разные локации сначала подумай, как ты будешь определять, где эта локация по отношению к храмам находится.
Самый простой вариант это локальные переменные на локацию или вэйпоинты, которые будут определять, куда после смерти переносить игрока.
acdcee
Aug 31 2005, 22:18
Пасибо седня посматрю как свой скрипт поправить, я сделал как и чуть переделал другой скрипт вроде работает после смерти переносит вот осталось чтоб обратно.
еще раз с уважением к администрации
Wereman
Sep 2 2005, 07:53
Существует help по .2da таблицам?
Daemonix
Sep 2 2005, 21:32
Добрый вечер, WRG!
У меня тут вопросы накопились:
1. Есть ли в игре такая анимация, чтобы два непися стояли друг перед другом и жестикулировали, как они болтают друг с другом? Если есть, скажите, пожалуйста, как это сделать.
2. Как сравнить между собой две переменные? Т.е. в закладке “текст появляется при” нужно сделать так, чтобы текст появлялся только, если переменная “var1”>”var2”. Как это сделать?
3. Я сделал свой собственный предмет по типу “разнообразное маленькое”. Почему, когда я беру несколько штук этого предмета, он кладёт каждый в свою ячейку, а не “все в одну, количество в виде индекса сбоку”?
4. Как проверить, что, скажем, кол-во золота у игрока больше, чем 100?
1.Я же прошу, посмотри здесь:
http://wrg.ru/old/stat_anim_npc1.htm Особенно, таблицу, там есть все анимации...
-fenix-
Sep 2 2005, 22:12
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. Есть ли в игре такая анимация, чтобы два непися стояли друг перед другом и жестикулировали, как они болтают друг с другом? Если есть, скажите, пожалуйста, как это сделать. |
Просто нужно челов повернуть друг к другу и повесить на них онимацию.
QUOTE (Daemonix @ Sep 2 2005, 22:32) |
1. Есть ли в игре такая анимация, чтобы два непися стояли друг перед другом и жестикулировали, как они болтают друг с другом? Если есть, скажите, пожалуйста, как это сделать. |
в базе скриптов есть мой скрипт, который я в тавернах Тсурлагола использовал.
QUOTE (Daemonix @ Sep 2 2005, 22:32) |
4. Как проверить, что, скажем, кол-во золота у игрока больше, чем 100? |
имено этот пример разобран в Вопросах и Ответах (ВиО).
вывод: перед тем, как спросить, гляньте хотя бы ВиО и Базу скриптов. Темы небольшие же..
Daemonix
Sep 2 2005, 22:43
QUOTE |
вывод: перед тем, как спросить, гляньте хотя бы ВиО и Базу скриптов. Темы небольшие же.. |
У меня просто интернет очень медленный и его мало. Так что долго не полазишь.
QUOTE (Daemonix @ Sep 3 2005, 01:43) |
У меня просто интернет очень медленный и его мало. Так что долго не полазишь. |
А народ париться пишет темы для новичков - просто им делать нечего?
nO_oadu
Sep 4 2005, 19:21
У меня такой вопрос - а как сделать чтобы у NPC глаза горели?
Добавлено в [mergetime]1125851182[/mergetime] И еще вопрос - как сделать чтобы когда умираешь, кнопка РЕСПАУН нек появлялось?
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
Sep 4 2005, 20:07
Спасибо большое!
Добавлено в [mergetime]1125854597[/mergetime] Хмммммм....... Чего-то глазоньки у монахов не горят.....
Глаза будут светится только на 20 уровне монаха, и если расса человек.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.