Вот самый примитив краффта через стол. Никаких проверок на навыки, 0 работа в плане стеков, не самый оптимальный вариант проверки рецепта и прочее. Короче катит только как примерчик..и то с напрягом.
В слот onClose стола
Neverwinter Script Source |
int CheckCombo1() { int C1,C2,C3,C4; object oItem = GetFirstItemInInventory(); while (GetIsObjectValid(oItem)) { if (GetTag(oItem)=="ITM_1") { C1 = TRUE; } if (GetTag(oItem)=="ITM_2") { C2 = TRUE; } if (GetTag(oItem)=="ITM_3") { C3 = TRUE; } if (GetTag(oItem)=="ITM_4") { C4 = TRUE; } oItem = GetNextItemInInventory(); } if (C1&&C2&&C3&&C4) return TRUE; return FALSE; } void Combo1() { object oItem = GetFirstItemInInventory(); while (GetIsObjectValid(oItem)) { if (GetTag(oItem)=="ITM_1") DestroyObject(oItem); if (GetTag(oItem)=="ITM_2") DestroyObject(oItem); if (GetTag(oItem)=="ITM_3") DestroyObject(oItem); if (GetTag(oItem)=="ITM_4") DestroyObject(oItem); oItem = GetNextItemInInventory(); } CreateItemOnObject("nw_it_gem012",GetLastUsedBy()); }
void main() { if(CheckCombo1()) { Combo1(); } } |
положите на стол 4 вещи с тэгами "ITM_1","ITM_2","ITM_3","ITM_4" и получите изумруд.
Убо-Сатло
Jun 10 2005, 02:00
QUOTE (Garou @ Jun 9 2005, 21:39) |
Neverwinter Script Source | GetCalendarDay()+19);/*Странно, но если поставить 20, то при узании с 1го числа идет переход в 22?!*/ |
|
Вот это действительно странно! Но может быть в этом вся проблема? Ты установил этим скриптом дату через 19 дней вместо 20, и, если ты и в 1 скрипте
Neverwinter Script Source |
void main() { object oPC = GetPCSpeaker(); int d = GetLocalInt(oPC, "data"); SetLocalInt(oPC, "data", GetCalendarDay()); if(d<=8) { SetLocalInt(GetModule(), "STRELKA", d+20); } else { SetLocalInt(GetModule(), "STRELKA", (d+20)-28); } } |
не поменял тоже 20 на 19, то события произойдут ЗАВТРА, в это же время! А почему с первого на 22 переходит, я понять не могу, единственный вариант, который можно предположить, это ты дергал рычаг в полночь ровно, но это вряд ли.
2 вариант: после первого разговора с угрозой непись куда у тебя девается? Если дестроится, то причина в этом. Тогда вместо
Neverwinter Script Source |
AssignCommand(oNPC, ActionJumpToObject(oPC)); |
нужно ставить
Neverwinter Script Source |
CreatObject(OBJECT_TYPE_CREATURE, "ResRefNPC", GetLocation(oPC), FALSE, "TagNPC"); |
если нет, то извиняюсь, этот вариант отпадает.
И еще, судя по твоему варианту скрипта, NPC не нападает сразу, а сначала начинает диалог. В таком случае лучше
Neverwinter Script Source |
SetLocalInt(oPC, "RAZBORKA", TRUE); |
это поставь в диалог на последнюю фразу диалога, но в условие if() добавь еще && !IsInConversation(oNPC). Это чтобы NPC не джампал во время диалога. А на последнюю чтобы игрок не мог уклониться от боя. И сразу там же после установки локалки начинай бой
Neverwinter Script Source |
AssignCommand(oNPC, ActionAttack(oPC)); |
Еще, попробуй на рычаг поставить там где GetCalendarDay() +1 и юзай его 20 раз. Запаристо, но можешь проследить, что там с календарем. Если ничего не поможет, попробуй все локалки("STRELKA","RAZBORKA") навесить на PC а не на модуль. Если все равно ничего не выйдет, отпости все свои показатели(календарную дату и время первого разговора, когда NPC угрожает), я попробую у себя все это воспроизвести и проверить.
Убо-Сатло
не по теме, но акцентирую ваше внимание на одном моменте - SetTime двигает время только вперед. т.е. если, скажем, в 14:00 ставить 00:00, то поставится 00:00 следущего дня.
Извиняюсь, если мой странный вопрос уже где-то есть, но как сделать чтобы при разговоре у персонажа отнималось какое-то количество одинаковых вещей?

, если вопрос повторяется, то где?
Pather
Jun 10 2005, 08:53
QUOTE (Puh @ Jun 10 2005, 07:14) |
Извиняюсь, если мой странный вопрос уже где-то есть, но как сделать чтобы при разговоре у персонажа отнималось какое-то количество одинаковых вещей? , если вопрос повторяется, то где? |
Dark@ngel
Jun 10 2005, 20:11
У меня вопрос: 2 разных гильдии, как сделать так, чтобы если НП согласится состоять в одной, во вторую его не принимали?
Lex, спасибо за: ЕЩЕ РАЗ УВИЖУ СКРИПТЫ, НАПИСАННЫЕ НЕ В NSS - СРАЗУ ПРЕД. Работает на 100%. Сразу научился использовать NSS!!! Почаще так!!! Может еще с меня и люди получатся

Теперь позвольте спросить: Недавно Aiwan выкладывал скрипт который при атаке непися превращал его в оборотня. У меня в диалоге игрока превращают в голем плоти, но единственное, что я нашел о големах :
Neverwinter Script Source |
void main() { effect eShape = EffectPolymorph(POLYMORPH_TYPE_GOLEM_AUTOMATON); object oPC = GetPCSpeaker(); if (GetLocalInt(oPC, "GOLEM_FLESH_YES") == 1) return; { SetLocalInt(oPC, "GOLEM_FLESH_YES", 1); ApplyEffectToObject(DURATION_TYPE_INSTANT, eShape, oPC); } } |
В игре этот скрипт игрока просто растворяет

! Как заменить AUTOMATON на FLESH. Да и возможно ли сделать способность надевать на игрока потом шмотки?
-fenix-
Jun 10 2005, 23:06
QUOTE |
Добрый вечер всем! Хотела поинтересоваться какой скрипт надо вешать, чтобы НПС дал НП определенный предмет. |
Neverwinter Script Source |
void main() { CreateItemOnObject("тег предмета", GetPCSpeaker(), кол-во);
} |
Tiger Greyhawk
Jun 11 2005, 06:29
QUOTE (-fenix- @ Jun 11 2005, 00:06) |
QUOTE Добрый вечер всем! Хотела поинтересоваться какой скрипт надо вешать, чтобы НПС дал НП определенный предмет.
Neverwinter Script Source void main() { CreateItemOnObject("тег предмета", GetPCSpeaker(), кол-во);
}
|
Сорри, поправочка. Если Create, то РезРеф. Но можно использовать и ActionGiveItem(oObject, oPC); oObject должен быть у непися, который его дает, и задан в скрипте: object oObject=GetObjectByTag("Здесь_именно_тэг_предмета");
QUOTE (Pather @ Jun 10 2005, 08:53) |
Lexicon отменили?
Например так:
Neverwinter Script Source | TakeNumItems(object, string, int) |
|
Имеешь ввиду функцию добавить что-ли, у м-я в тулсе таких строк нету
QUOTE (Dark@ngel @ Jun 10 2005, 20:11) |
У меня вопрос: 2 разных гильдии, как сделать так, чтобы если НП согласится состоять в одной, во вторую его не принимали? |
Попробуй к примеру так: при переходе перса в одну из гильдий добавляется запись в журнале. А у второй гильдии поставь запрет на существование этой записи у перса, к примеру через разговор, чтобы вариант предложения на вступление в гильдию не появлялся если есть запись в журнале.
У меня в диалоге непись при грубом с ней обращении должна доставать оружие. Оружие при этом находится у нее в рюкзаке. Я написал
Neverwinter Script Source |
void main() { object oNPC = GetObjectByTag("тег неписи"); object oItem = GetObjectByTag("тег итема"); AssignCommand(oNPC, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND)); } |
и повесил на ActionTaken грубой реплики игрока. Но результата нет?!
!!! Да!!! Еще, я спрашивал о превращении игрока в голем плоти..., а как потом обратно превратить в игрока?
QUOTE (Dark@ngel @ Jun 10 2005, 23:11) |
меня вопрос: 2 разных гильдии, как сделать так, чтобы если НП согласится состоять в одной, во вторую его не принимали? |
Вешай локалку на него или на предмет какой. В диалоге торжественной клятвы обществу.
Neverwinter Script Source |
SetLocalInt(oPC, "ОБЩЕСТВО_БОРЬБЫ_С_ОБОРТАМИ", 1); |
Внизу проверка на принадлежность. Ставь в диалоге на верхнюю корневую строку прием в ОБЩЕСТВО НОСИТЕЛЕЙ ПЕНИСОВ. Проверится строка и выдаст НПС фразу, типа а ты уже там состоишь! Пошел вон! МОжно это все сделать через фракции. Если тебе надо что бы одни дубасили других, то скажи, перепишу через фракции.
Neverwinter Script Source |
int StartingConditional() { if (GetLocalInt(oPC, "ОБЩЕСТВО_БОРЬБЫ_С_ОБОРТАМИ")==1); { return TRUE; } return FALSE; } |
Добавлено в [mergetime]1118477709[/mergetime]
Я писал без авроры... Так что мог ошибиться или сабыть что нить..
-fenix-
Jun 11 2005, 21:04
QUOTE |
Извиняюсь, если мой странный вопрос уже где-то есть, но как сделать чтобы при разговоре у персонажа отнималось какое-то количество одинаковых вещей? |
Neverwinter Script Source |
ActionTakeItem(объект, у кого отнять); |
minion
Jun 11 2005, 21:21
Слушай Aiwan , у нас тут с Darkot возникла идея про несколько гильдий. Нам имеет смысл делать так или нет?
Neverwinter Script Source |
int StartingConditional() { if (GetLocalInt(oPC, "ОБЩЕСТВО_БОРЬБЫ_С_ОБОРТАМИ")==1); { return TRUE; } return FALSE; } |
Почему нет? Смотря на кого вы вешаете локалки. Если у вас сингл, то делайте. Но проверка должна быть такая:
Neverwinter Script Source |
int StartingConditional() { if (GetLocalInt(oPC, "ОБЩЕСТВО_БОРЬБЫ_С_ОБОРТАМИ")==1 || GetLocalInt(oPC, "ГИЛЬДИЯ_РАЗДОЛБАЕВ")==1 || GetLocalInt(oPC, "КЛУБ_ЛЮБИТЕЛЕЙ_РЕКТАЛЬНОЙ_ТЕРАПИИ")==1) { return TRUE; } return FALSE; } |
minion
Jun 12 2005, 14:54
А может сделать допустим так: Если чел не вступил ни в какую гильдию, то на нем висит локалка типа: guild = 0, если же вступил, то другое число, а проверка:
Neverwinter Script Source |
int StartingConditional() { if (GetLocalInt(oPC, "guild") == 0); { return TRUE; } return FALSE; } |
Или что-то типа такого.
-fenix-
Jun 12 2005, 15:13
QUOTE |
А может сделать допустим так: Если чел не вступил ни в какую гильдию, то на нем висит локалка типа: guild = 0, если же вступил, то другое число, а проверка: |
Ну тады локалку надо вешать при начале модуля.
А есле есть две яростно-враждебные гильдии и типа они нападают на тебя есле ты во врождебной гильдии или не говорят с тобой и т.д.
Так что, лучше делать как Айван сказал, чтоб потом не переделывать, мало ли что потом в голову прейдет.
minion
Jun 12 2005, 15:36
Проверка написана на то что чел не вступил ни в какую гильдию. Проверки на все остальное можно сделать подобно. Предложение
Aiwana я тоже рассмотрю.
Пасибо за подсказку.
QUOTE (-fenix- @ Jun 11 2005, 21:04) |
Neverwinter Script Source | ActionTakeItem(объект, у кого отнять); |
|
Это шоб одну отнять; даже если несколько раз написать подобную строку, отнимается только одна вещь, а мне нужно несколько.
Вопрос: нужно чтоб при разговоре непись присоединялся к игроку, вроде как помощник, присоединить его получилось, но этот гад за мной бегать не хочет и команды не выполняет

, что нужно прописать чтобы получилось как в невевинтере?
QUOTE (Garou @ Jun 11 2005, 10:37) |
У меня в диалоге непись при грубом с ней обращении должна доставать оружие. Оружие при этом находится у нее в рюкзаке. Я написал
Neverwinter Script Source | void main() { object oNPC = GetObjectByTag("тег неписи"); object oItem = GetObjectByTag("тег итема"); AssignCommand(oNPC, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND)); } |
и повесил на ActionTaken грубой реплики игрока. Но результата нет?! !!! Да!!! Еще, я спрашивал о превращении игрока в голем плоти..., а как потом обратно превратить в игрока?
|
Попробуй так - на вариант ответа неписи:
Neverwinter Script Source |
void main() { object oItem = GetObjectByTag("тег итема"); ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND); } |
ЗЫ - точно не уверен...
-fenix-
Jun 13 2005, 13:32
QUOTE |
Вопрос: нужно чтоб при разговоре непись присоединялся к игроку, вроде как помощник, присоединить его получилось, но этот гад за мной бегать не хочет и команды не выполняет diablo.gif , что нужно прописать чтобы получилось как в невевинтере? |
Короче на стандартной палитре NPS -> Другое. Находишь стандартных оруженосцев, например Томи. Смотришь у него диалог и делаешь себе по аналогии. Еще на заклатке "письмена" в свойствах чела меняешь скрипты на скрипты Томи.
QUOTE (Puh @ Jun 13 2005, 06:07) |
У меня в диалоге непись при грубом с ней обращении должна доставать оружие. Оружие при этом находится у нее в рюкзаке. Я написал
Neverwinter Script Source void main() { object oNPC = GetObjectByTag("тег неписи"); object oItem = GetObjectByTag("тег итема"); AssignCommand(oNPC, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND)); }
и повесил на ActionTaken грубой реплики игрока. Но результата нет?! !!! Да!!! Еще, я спрашивал о превращении игрока в голем плоти..., а как потом обратно превратить в игрока? |
1. в диалоге НПС это OBJECT_SELF, так что 3
Neverwinter Script Source |
object oNPC = GetObjectByTag("тег неписи"); |
не нужно. Как и не нужно
Neverwinter Script Source |
AssignCommand(oNPC, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND)); |
Тут тебе Puh верно подсказал.
2.
Neverwinter Script Source |
object oItem = GetObjectByTag("тег итема"); |
не факт, что вернет тебе именно ту вещь, что у тебя в рюкзаке. Такой траблы нет, если у тебя тэг уникальный и больше нигде не используется.
Лучше юзать
Neverwinter Script Source |
object GetItemPossessedBy(object oCreature,string sItemTag); |
Dark@ngel
Jun 13 2005, 21:24
LEX твой скрипт по счет создания изумруда не получается. Почему то при смешении стол взрывается!
Как заставить НПС сидеть на стуле?
Dark@ngel, да быть того не может

взрываться он может только в случае наложения EffectDeath(), чего в скрипте не наблюдается.
ДемонстрационнаяPS: не пугайся exe. Это самораспаковывающийся архив 7зип.
ммм может она инвентарь стола очень сильно закрыла

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

?)
QUOTE (Dark@ngel @ Jun 14 2005, 00:24) |
Почему то при смешении стол взрывается! |
QUOTE |
Звонок в автомастерскую: - Ало, у меян машина вся дрожит, как переваливает спидометр за 80. - Хм, не знаю. Приезжайте глянем на ваше чудо. А что за марка? - Запорожец! |
А часом спелл армагеддон не накладывается?

Или одни заготовки в столе?
QUOTE (Lex @ Jun 14 2005, 00:36) |
PS: не пугайся exe. Это самораспаковывающийся архив 7зип. |
Пора всем обзавестись 7 zip архиватором.
У кого есть тайлсет приличного болота?

Дайте ссылочку пожалуйста.
Leon PRO
Jun 14 2005, 23:46
О сенк

. А что на счет возвышеностей в лесном тайсете и холмов для деревни(Rural кажется...)?

P.S. Если честно не нашел подходящей темы для того чтобы задавать подобные вопросы. Есть тема ссылки, но там только модерам постить можно
QUOTE |
Пора всем обзавестись 7 zip архиватором.
|
не обязательно...последние версиии винрара(с 3.40 и выше) уже распознает 7 zip
Айван: Распознает и УПАКОВЫВАЕТ это не одно и то же
Equilibrium
Jun 17 2005, 15:01
Извиняюсь, что немного не по форуму, за то в тему...
Вобщем очень хочется поднять ограничение по уровню до 120-160 уровня. Что придется кучу всего расписывать я знаю. Но сделать сие у меня все равно не получилось! Добираюсь до 40-левела и все - дальше опыт не идет!
(Хочу нормально раскачать мультика - Колдун\Волшебник\Священник

)
DBColl: Манч... 40 левелов - ограничение ДВИЖКА. Ты с этим ничего не сделаешь.
Friedrich
Jun 17 2005, 21:34
Нафиг тебе такой Эльминстер понадобился?
Хотя 160 левела!? Рядом с этим чудом, боюсь Мистра - школьница. (Кто-нить знает, кстати, какой у ней левел?)
Equilibrium
Jun 18 2005, 00:50
Вопрос - кто такая Мистра?
Вобще-то максимальный уровень - 60 (в HotU), но только у НПС... =(
Нафиг тебе такой Эльминстер понадобился?Хочу стать Архимагом.
Добавлено в [mergetime]1119045531[/mergetime] Как спаунить созданий по Тегу, а не РесРеву?
Как изменить РесРеф?
Что такон РесРеф?
Tiger Greyhawk
Jun 18 2005, 03:14
QUOTE (Equilibrium @ Jun 18 2005, 01:50) |
Как спаунить созданий по Тегу, а не РесРеву? Как изменить РесРеф? Что такон РесРеф? |
Наверное, вопросы в обратном порядке должны быть. По крайней мере я буду отвечать так.
1. РезРеф (ResRef) уникальное имя предмета в палитре.
2. Путем edit© из палитры или при на установленном в локации предмете пр. кн. мыши и добавить в палитру. Там на вкладке Addvanced первый пункт и есть ResRef.
3. По идее этот вопрос отпадает уже. Именно по РезРефу и креатиться существо. Т.е. пишешь РезРеф в скриптах. (там надо внимательно в функциях смотреть, что требуется: РезРеф или Тег)
З.Ы. внимателнее: РезРеф чувствителен к регистру и не может быть написан заглавными буквами (он сам исправит на строчные). Так что и в скриптах тоже надо указывать его строчными.
Equilibrium
Jun 18 2005, 03:53
Спасибо большое. А по тегу значит ни как? Жалко... Ладно, будем осваивать резреф!
Мефистофель
Jun 18 2005, 04:21
Не, я всегда использую, тег в скрипте. GetobjectByTeg!, и ненадо заморачиватся с ресрефом. За исключением, особенных.
Equilibrium
Jun 18 2005, 04:57
object CreateObject(int nObjectType, string sTemplate, location lLocation, int bUseAppearAnimation=FALSE, string sNewTag="")
string sTemplate - Это имя нашего объекта. Здесь просят указать его РезРеф. Вернуть РезРеф по тегу нельзя. Ну и как ты это сделаешь?
Tiger Greyhawk
Jun 18 2005, 05:31
QUOTE (Мефистофель @ Jun 18 2005, 05:21) |
Не, я всегда использую, тег в скрипте. GetobjectByTeg!, и ненадо заморачиватся с ресрефом. За исключением, особенных. |
это два разных "имени". Если по простоте, то РезРеф - "имя" (идентификатор) в палитре, а Тег - "имя" (идентификатор) на локации.
З.Ы. GetObjectByTag
Добавлено в [mergetime]1119062232[/mergetime]
а создание предмета/крича идет из палитры ведь.
QUOTE (Tiger Greyhawk @ Jun 18 2005, 04:14) |
З.Ы. внимателнее: РезРеф чувствителен к регистру и не может быть написан заглавными буквами (он сам исправит на строчные). Так что и в скриптах тоже надо указывать его строчными. |
в скриптах можно резреф писать заглавными.
Dik Morris
Jun 18 2005, 11:26
У меня два абсолютно глупых вопроса, если каво не затруднит пожалуйста ответьте.
1)-Как сделать чтобы при заходе игрока на тригер NPC подбегал к нему и начинал диалог при этом говоря фразу.
2)-Как самому настроить генерацию предметов, в ящиках.
1. Вопрос 1.
Neverwinter Script Source |
//::////////////////////////////////////////////// //:: OnEnter am_ten_speak_npc //:: Copyright © 2005 WRG! //::////////////////////////////////////////////// /* Текст над NPC KeyTag - Количество раз. Если 0, то бесконечно. TAG НПС приписываем к четырем знакам к TAG-у триггера. НПС SubRace - анимации, НПС Deity - Длительность анимаций. */ //::////////////////////////////////////////////// //:: Created By: Aiwan //:: Created On: 21.04.2005 //::////////////////////////////////////////////// void main() { object oPC = GetEnteringObject(); // PC object oTrig = OBJECT_SELF; string sTag = GetTag(oTrig); // Таг триггера TR_SPK_ string sNPC = GetStringRight(sTag, (GetStringLength(sTag)- 7)); // Таг НПС object oNPC = GetNearestObjectByTag(sNPC); string sSpeak = GetName(oTrig); // Фраза int i = StringToInt(GetLockKeyTag(oTrig)); // Количество раз int iSp = GetLocalInt(oTrig, "SPEAK"); int iAnim = StringToInt(GetSubRace(oNPC)); // Анимации float fAnim = StringToFloat(GetDeity(oNPC)); // Длительность анимаций if (!GetIsObjectValid(oNPC) || !GetIsPC(oPC) || iSp >= i && i!=0) { return; } AssignCommand(oNPC, ClearAllActions()); AssignCommand(oNPC, ActionDoCommand(SetFacingPoint(GetPosition(oPC)))); DelayCommand(1.0, AssignCommand(oNPC, SpeakString(sSpeak))); if (GetSubRace(oNPC)!="") { if (GetDeity(oNPC)=="") fAnim = 1.0; AssignCommand(oNPC, ActionPlayAnimation(iAnim, 1.0, fAnim)); } if (i!=0) { SetLocalInt(oTrig, "SPEAK", (iSp+1)); } } |
2. Писать сложный скрипт.
Добавлено в [mergetime]1119094731[/mergetime]
Имя триггера это строка над НПС, когда он решит к вам подойти и заговорить, типа: "Привет! Подожди!". Таг триггера это сумма тагов НПС и таг заготовки триггера: TR_CONV_ТАГ_НПС_ДЛЯ_ДИАЛОГА. Сделано это для того что бы не мучаться с происком объектов по тагу в модуле. (помятуя Каэтан с ее твадцатью триггерами с одинаковым как у нее Тэгом). Дальше, KeyTag = 1, НПС подбежит. В поле НПС "Deity" ввести константу аннимации, то он ее проиграет. Если оставить пустым то нет. Примеры констант (полный список дам позже):
int ANIMATION_FIREFORGET_HEAD_TURN_LEFT = 100;
int ANIMATION_FIREFORGET_HEAD_TURN_RIGHT = 101;
int ANIMATION_FIREFORGET_PAUSE_SCRATCH_HEAD = 102;
int ANIMATION_FIREFORGET_PAUSE_BORED = 103;
int ANIMATION_FIREFORGET_SALUTE = 104;
int ANIMATION_FIREFORGET_BOW = 105;
int ANIMATION_FIREFORGET_STEAL = 106;
int ANIMATION_FIREFORGET_GREETING = 107;
int ANIMATION_FIREFORGET_TAUNT = 108;
int ANIMATION_FIREFORGET_VICTORY1 = 109;
int ANIMATION_FIREFORGET_VICTORY2 = 110;
int ANIMATION_FIREFORGET_VICTORY3 = 111;
int ANIMATION_FIREFORGET_READ = 112;
int ANIMATION_FIREFORGET_DRINK = 113;
int ANIMATION_FIREFORGET_DODGE_SIDE = 114;
int ANIMATION_FIREFORGET_DODGE_DUCK = 115;
----------------------------------------------------------------------------------------------------
int ANIMATION_LOOPING_PAUSE = 0;
int ANIMATION_LOOPING_PAUSE2 = 1;
int ANIMATION_LOOPING_LISTEN = 2;
int ANIMATION_LOOPING_MEDITATE = 3;
int ANIMATION_LOOPING_WORSHIP = 4;
int ANIMATION_LOOPING_LOOK_FAR = 5;
int ANIMATION_LOOPING_SIT_CHAIR = 6;
int ANIMATION_LOOPING_SIT_CROSS = 7;
int ANIMATION_LOOPING_TALK_NORMAL = 8;
int ANIMATION_LOOPING_TALK_PLEADING = 9;
int ANIMATION_LOOPING_TALK_FORCEFUL = 10;
int ANIMATION_LOOPING_TALK_LAUGHING = 11;
int ANIMATION_LOOPING_GET_LOW = 12;
int ANIMATION_LOOPING_GET_MID = 13;
int ANIMATION_LOOPING_PAUSE_TIRED = 14;
int ANIMATION_LOOPING_PAUSE_DRUNK = 15;
int ANIMATION_LOOPING_DEAD_FRONT = 16;
int ANIMATION_LOOPING_DEAD_BACK = 17;
int ANIMATION_LOOPING_CONJURE1 = 18;
int ANIMATION_LOOPING_CONJURE2 = 19;
int ANIMATION_LOOPING_SPASM = 20;
Dik Morris
Jun 18 2005, 15:02
Спасибо Aiwan! Большое и искреннее !!! Щас опробую.
Добавлено в [mergetime]1119097934[/mergetime]
У меня еще вопрос, этот попроще: игрок наступает на триггер, и журнал обновляется (игрок получает квест, или наоборот выполняет его).
Ищи на форуме. Все это давно съедено. Если тебе лень искать, то мне точно влом двести пятый раз такое объяснять.
QUOTE (Dik Morris @ Jun 18 2005, 16:02) |
У меня еще вопрос, этот попроще: игрок наступает на триггер, и журнал обновляется (игрок получает квест, или наоборот выполняет его). |
Neverwinter Script Source |
AddJournalQuestEntry(string, int, object, int, int, int) |
Add an entry to a player's Journal. (Create the entry in the Journal Editor first).
Neverwinter Script Source |
void AddJournalQuestEntry( string sCategoryTag, int nEntryID, object oCreature, int bAllPartyMembers = TRUE, int bAllPlayers = FALSE, int bAllowOverrideHigher = FALSE ); |
sCategoryTag - The tag of the Journal category (case sensitive).
nEntryID - The ID of the Journal entry.
oCreature - The PC you want to receive the journal entry.
bAllPartyMembers - If TRUE, the entry is added to the journal of all of oCreature's Party. (Default: TRUE)
bAllPlayers - If TRUE, the entry will show up in the journal of all PCs in the module. (Default: FALSE)
bAllowOverrideHigher - If TRUE, override restriction that nState must be > current Journal Entry. (Default: FALSE)
PS: я уже без лексикона не просматриваю форум. Ибо 50% ответ написан там. А народ обленился в хлам.
Добавлено в [mergetime]1119107311[/mergetime]
QUOTE (Aiwan @ Jun 18 2005, 15:32) |
Текст над NPC KeyTag - Количество раз. Если 0, то бесконечно. TAG НПС приписываем к четырем знакам к TAG-у триггера. НПС SubRace - анимации, НПС Deity - Длительность анимаций. |
СОУ методы скриптига.
Сам иногда грешу, но надо бы переходить на локалки.
Dik Morris
Jun 18 2005, 19:01
Лекс и Айван, вы не думайте что я не смотрел другие темы я их тоже просматривал, кстати много полезного для себя учел, и нашел...
Айван: не обращай внимания. Мы иногда бурчим.
Friedrich
Jun 18 2005, 22:21
Рес-реф - это, вообще, имя файла без расширения (utp, utc, uti и т.п.), с прототипом объекта. Он не чувствителен к регистру, хотя по традиции пишется маленькими буквами. А тэг - это тэг.
Мистра - богиня магии в ФР. После второго уда... блин, Времен Бед отождествляется с Миднайт - чародейкой которой она перебала свою Силу и, возможно часть своей личности. Как таковая, убита Хельмом на ступенях небесной лестницы, когда шла качать права к Лорду Ао (Верховный бог ФР).
Equilibrium
Jun 19 2005, 00:44
FriedrichЯсенько. Санькс.
Еще вопрос:
Что такое Впитывание повреждений?
Предположим у нас есть мантия искателя приключений: +1 впитывание 30 поврежений
30 - это то насколько кменьшатся повреждения? Тогда что такое +1?
DBColl
Jun 19 2005, 04:49
+ 1 - это просто добавка к AC. А 30 Soak Damage - это поглощение урона, который меннее чем 30 едениц. 17, 25, 6 - все это схавается... Если же больше, допустим 37, то из этого урона будет вычитаться 30. В итоге мы нанесем лишь 7 повреждений.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.