Помощь - Поиск - Пользователи - Календарь
Полная версия: Скрипты
Город Мастеров > РЕДАКТОРЫ > 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
MasterMage
Neverwinter Script Source
AssignCommand(oNPC,ActionForceFollowObject(oNPC1,1.0));

NPC1-за кем следовать
][umepa
2 master mege пасибки lol.gif diablo.gif ещё вопрос это где эту команду надо вставить NPC1 это напирмер имя моего чара?
MasterMage
туда, после чего ты хочешь его направить за собой... К примеру в диалог... NPC - ты или другой чар
][umepa
спасибо только вот последняя просьба.Я силшком тупой походу для этого пожалуйста опиши весь этот процесс на конкретном примере и пожалуйста опиши чем куда ставить.
P.S если я тебя ещё не достал со своими ламерскими вопросами diablo.gif
Friedrich
[QUOTE=][umepa, Mar 14 2005, 22:45]Я силшком тупой походу для этого пожалуйста опиши весь этот процесс на конкретном примере и пожалуйста опиши чем куда ставить.[/QUOTE]
Ну тысячу раз наверное это описывали. Достань "Лексикон", скачай статьтьи с этого сайта, посмотри факи... (если еще этого не сделеал).

Вставь в редакторе диалогов на вкалдке Action Taken (присоединенное дествие) соответствующей ветки следующий скрипт:

Neverwinter Script Source
void main()
{
   object oPC = GetPCSpeaker();
   ActionForceFollowObject(oPC, 1.0);
}

Добавлено в 23:29
И ник у тебя неправильный! crazy.gif
Потому что содержит закрвающую скобку тега ']'
][umepa
это почему неправильный? crazy.gif
Добавлено в [mergetime]1110912904[/mergetime]
уважаемый Friedrich а вы не могли бы подкинуть ссылочку на статю по моему вопросу? crazy.gif
Добавлено в [mergetime]1110912939[/mergetime]
и вопрос что такое факи?
drag.gif
Lex
QUOTE (Хumepa @ Mar 15 2005, 21:47)
и вопрос что такое факи?

FAQ - Часто Задаваемые Вопросы.

Щас гляну твой вопрос.


глянул...ответили уже.
Статьи на нашем сайте в разделе СТАТЬИ. + в теме ССЫЛКИ и в теме ВОПРОСЫ И ОТВЕТЫ глянь.
Lex
[n]dumbo[/b], по поводу эффектов я был не прав. Проверил отдельным скриптом, не работает так, как я написал. Хех, а у меня в Тсурле работает по другой причине.
Archangel
Приветствую всех. У мня есть вопросик по написанию скрипта: моно ли сделать так, чтобы в зависимости от расы игрока, он прыгал к разным точкам.
Ну, вообще-то это мне надо для мода, т.е., если ПС, к примеру, в начале игры выбрал рассу 'эльф', то он телепортируется в деревню эльфов, если же он орк, то в город орков... biggrin.gif
ЗЫ
А куда делись 'вопросы новичков'? Хорошая тема была...
this.gif
slavaz
Скрипт писать не буду, дам алгоритм.
В нужных местах расставляешь вэйпоинты и даёшь им тэги, например, wp_start_DWARF, wp_start_ORK, ...
Затем функцией GetRacialType() Получаешь расу (одну из RACIAL_TYPE_*).
И дальше перебираешь при помощи switch(...) {case :} расы и скачешь к нужному вэйпоинту. Например:
ActionJumpToObject(GetWaypointByTag("wp_start_DWARF"));
Archangel
Slavaz, а так нельзя(просто ща тулсета под рукой нет):
Neverwinter Script Source
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC))
return;
if(GetRacialType(oPC)==RACIAL_TYPE_DWARF)
ActionJumpToObject(GetWaypointByTag("wp_start_DWARF"));
if(GetRacialType(oPC)==RACIAL_TYPE_ELF)
ActionJumpToObject(GetWaypointByTag("wp_start_ELF"));
if(GetRacialType(oPC)==RACIAL_TYPE_GNOME)
ActionJumpToObject(GetWaypointByTag("wp_start_GNOME"));
if(GetRacialType(oPC)==RACIAL_TYPE_HALFELF)
ActionJumpToObject(GetWaypointByTag("wp_start_HALFELF"));
if(GetRacialType(oPC)==RACIAL_TYPE_HALFLING)
ActionJumpToObject(GetWaypointByTag("wp_start_HALFLING"));
if(GetRacialType(oPC)==RACIAL_TYPE_HALFORC)
ActionJumpToObject(GetWaypointByTag("wp_start_HALFORC"));
if(GetRacialType(oPC)==RACIAL_TYPE_HUMAN)
ActionJumpToObject(GetWaypointByTag("wp_start_HUMAN"));
}
this.gif
DBColl
Archangel
Конечно можно. Но скрипт твой несколько не эстетично выглядит.
Neverwinter Script Source
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC))
return;
int nRace = GetRacialType(oPC);
string sWP;
if(nRace == RACIAL_TYPE_DWARF)
    sWP = "wp_start_DWARF";
if(nRace == RACIAL_TYPE_ELF)
    sWP = "wp_start_ELF";
if(nRace == RACIAL_TYPE_GNOME)
    sWP = "wp_start_GNOME";
if(nRace == RACIAL_TYPE_HALFELF)
    sWP = "wp_start_HALFELF";
if(nRace == RACIAL_TYPE_HALFLING)
    sWP = "wp_start_HALFLING";
if(nRace == RACIAL_TYPE_HALFORC)
    sWP = "wp_start_HALFORC";
if(nRace == RACIAL_TYPE_HUMAN)
    sWP = "wp_start_HUMAN";
ActionJumpToObject(GetWaypointByTag(sWP));
}
Archangel
Спасибо вам о великие мастера.... smile.gif
slavaz
Neverwinter Script Source
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC))
return;
int iRace = GetRacialType(oPC);
string sWP;

switch (iRace){
  case RACIAL_TYPE_DWARF:
    sWP = "wp_start_DWARF";
    break;
  case RACIAL_TYPE_ELF:
    sWP = "wp_start_ELF";
    break;
  case RACIAL_TYPE_GNOME:
    sWP = "wp_start_GNOME";
    break;
  case RACIAL_TYPE_HALFELF:
    sWP = "wp_start_HALFELF";
    break;
  case RACIAL_TYPE_HALFLING:
    sWP = "wp_start_HALFLING";-
    break;
  case RACIAL_TYPE_HALFORC:
    sWP = "wp_start_HALFORC";
    break;
  case RACIAL_TYPE_HUMAN:
    sWP = "wp_start_HUMAN";
    break;
  default:
  // Можно перечислить не все расы, а только те, для которых есть уникальные точки входа.
  // тогда остальные расы будут прыгать к wp с тэгом wp_start_OTHER
  sWP = "wp_start_OTHER";
}
ActionJumpToObject(GetWaypointByTag(sWP));
}

Алексашка
Хочу сделать скрипт. Но я не программист и вообще с программированием первые опыты в тулсете NWN. Мой скрипт работает, но только с живыми существами, а хотелось, чтобы с дверями. Нужно, чтобы дверь можно было разбить заклинанием или оружием ближнего боя, но не из лука или арбалета. Ниже мой скрипт. Подскажите, как приспособить его к дверям и сундукам.
Neverwinter Script Source
#include "nw_i0_generic"
void main()
{
    object oAttacker = GetLastAttacker();


    if(GetWeaponRanged(GetLastWeaponUsed(oAttacker)))
    {

    SetLocalInt(OBJECT_SELF, "NW_L_FEEDBACK",10) ;
    SpeakOneLinerConversation();
    ActionDoCommand(SetLocalInt(OBJECT_SELF, "NW_L_FEEDBACK",0));
    int nHeal = GetMaxHitPoints(OBJECT_SELF) - GetCurrentHitPoints(OBJECT_SELF);
        effect eHeal = EffectHeal(nHeal);
        {
        if (nHeal > 0)
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, OBJECT_SELF);
         }

      }
      }



LEX: Перенес твой топик в нужную тему. Перед тем, как создавать свою посмотри, может уже есть тема, которая тебе подходит.
Lex
точно скажу, что с лечением там не покатит, сам пробовал.

Есть вариант с влоте НА АТАКУ поставить скрипт
Neverwinter Script Source
void main()
{
    object oAttacker = GetLastAttacker();


    if(GetWeaponRanged(GetLastWeaponUsed(oAttacker)))
      SetPlotFlag(OBJECT_SELF,TRUE);
    else 
      SetPlotFlag(OBJECT_SELF,FALSE);
}

но это не выход. Будут бить дверь 2ое, 1 с луком, другой с мечем и будет потеха еще та. smile.gif

Алексашка
LexСпасибо за ответ. Честно говоря очень рад, что нашел ваш сайт. Прошу прощения, что вляпал не в ту тему. А что вдвоем лупить будут не страшно, главное чтобы ловушка нахаляву не разряжалась. biggrin.gif biggrin.gif
Zik
Приветствую вас!

Вот тут скрипт

CODE
void main()
{
object oChest = GetObjectByTag("chest1");
object oItem = GetFirstItemInInventory(oChest);
while GetIsObjectValid(oItem)
 {
 DestroyObject(oItem);
 oItem = GetNextItemInInventory(oChest);
 }
}


на строчке

CODE
while GetIsObjectValid(oItem)


выдает ошибку- NO LEFT BRACKET ON EXPRESSION
Я что то никак не могу понять куда он ее требует поставить? dntknw.gif Помогите пожалуйста?
Lex
while (GetIsObjectValid(oItem))

так надо
Алексашка
Есть варианты сделать ограничение в диалоге? Хочу сделать ограничение по форме. Смешно смотрится, когда Шифтер в облике мантикоры мирно беседует с неписями. Обязательно в скрипте перечислять все его возможные формы или можно это сделать как-то по другому?
Lex
попробуй это...экспромт такой.

Neverwinter Script Source
int StartingConditional()
{
int RACE = GetRacialType(GetPCSpeaker());
int APP;
switch (RACE)
  {
  case RACIAL_TYPE_HUMAN:
       APP = APPEARANCE_TYPE_HUMAN;
      break;
  case RACIAL_TYPE_DWARF:
       APP = APPEARANCE_TYPE_DWARF;
      break;
///  и так далее все возможные рассы игрока
  }
return (GetAppearanceType(GetPCSpeaker())!=APP);
}

возврат TRUE если игрок не выглядит так, как должен выглядеть согласно своей рассе.
Хэнтан
Помогите плиzzzzzz!! shout.gif
Я вообще в этом деле лузер,но хочу научиться:
1.Как сделать так чтобы на локе моно было качаться до определенного количества опыта?
2.Как сделать так чтобы моно было качаться на манекенах:тоесть бьешь маникена получаешь за каждый удар н-ое количество опыта,но при этом маникен не уничтожаеться.
3.Еще один ламерский вопрос:Что то я немогу врубиться в респауны,как их делать и при помощи чего?

unsure.gif unsure.gif
Заранеее Спасиба!!!С уважением Хэнтан
Aiwan
Такс. Сперва почитай мануалы, что бы мы не пересказывали одно и то же сто раз. Ок? Потом задашь вопросы.
Хэнтан
Я какбы немного не .......Ну да ладно я вот хотел спросить......А что такое Мануалы и где их моно почитать? shout.gif
DBColl
http://www.wrg.ru/forums/index.php?showtopic=246
Смотри. Здесь много ссылок.
Добавлено в [mergetime]1111275649[/mergetime]
Мануалы - учебники (статьи).
Алексашка
Начитался ваших интересных советов и стал пробовать, но возникли новые вопросы. biggrin.gif Что такое 2-DA редактор и где его взять? В рекомендациях по вставке портретов упоминается папка source. Нет у меня в игре такой папки. dntknw.gif
Baal
QUOTE (Алексашка @ Mar 20 2005, 06:04)
Что такое 2-DA редактор и где его взять?

В качестве 2DA редактора может служить обычный блокнот.
Lex
как это нет папки source????? Значит у тебя версия где-то 1.11 - 1.15 что-ли?
Aiwan
Алексашка забудь про 2Да. Это не для новичков. Потом сам поймешь когда созреешь что надо. Не трать себя на большой облом, начни с малого. drag.gif
Lex
Neverwinter Script Source
int StartingConditional()
{
int RACE = GetRacialType(GetPCSpeaker());
int APP;
switch (RACE)
  {
  case RACIAL_TYPE_HUMAN:
       APP = APPEARANCE_TYPE_HUMAN;
      break;
  case RACIAL_TYPE_DWARF:
       APP = APPEARANCE_TYPE_DWARF;
      break;
///  и так далее все возможные рассы игрока
  }
return (GetAppearanceType(GetPCSpeaker())!=APP);
}


Поправил скрипт, вставив забытые мною breakи

Спасибо SlavaZ за то, что нашел ошибку.


ЗЫ: все равно не работает так как надо. Полиморф меняет Racial_type
Friedrich
Есть подозрение, что полиморф будет менять и RACIAL_TYPE тоже.
Lex
да, ты прав. Думаем еще.

Есть вариант в начале игры, при входе в модуль присвоить персу локалку RACE
типа
SetLocalInt(GetFirstPC(),"RACE",GetRacialType(GetFirstPC()));

и сверять ее с АРР.
Алексашка
(LEX)Версия у меня 1.30 но папки нет. Нет ее и в отдельно установленном "Проклятии Левора".Я даже, не веря своим глазам, поискал через поиск. НЕТУ-У!
(Aiwan) Я представляю нынешний предел своих возможностей. black eye.gif Ничего сверхестественного не планировал. Хотел в свой модуль вставить несколько сюжетных портретов. yes.gif
Lex
QUOTE (Алексашка @ Mar 20 2005, 16:12)
(LEX)Версия у меня 1.30 но папки нет. Нет ее и в отдельно установленном "Проклятии Левора".Я даже, не веря своим глазам, поискал через поиск. НЕТУ-У!

хм..в 1.30 тоже могут не быть они. В 1.32 точно есть.
В Леворе убрано, потому что они на самом деле продублированы в бифе.

Раз у тебя нет папки, то придется работать как старый контентщик:

Качай это. Открывай. В проводнике будет списочек. Тебе надо NWN: SoU Main data. Там выбирай data\xp1.bif , а дальше Game Data.
Вот ты попал в список всех 2да ресурсов.
Экспортируй, что нужно тебе. Правь.
Потом либо вставляй в хак, либо в оверрайд, сам решай. (первое лучше, так как это затронет только те модули, к которым ты подключил хак)

Удачи
Friedrich
QUOTE (Lex @ Mar 20 2005, 14:41)
Есть вариант в начале игры, при входе в модуль присвоить персу локалку RACE
типа
SetLocalInt(GetFirstPC(),"RACE",GetRacialType(GetFirstPC()));


А почему бы просто не проверять RACIAL_TYPE на доступные для PC значения, типа
Neverwinter Script Source
int StartingConditional()
{
  object oPC = GetFirstPC();
  int nRace = GetRacialType(oPC);
  // вернуть TRUE - если игрок не монстр
  return !(nRace > 6);
}
slavaz
QUOTE (Friedrich @ Mar 20 2005, 20:14)
А почему бы просто не проверять RACIAL_TYPE на доступные для PC значения, типа
Neverwinter Script Source
return !(nRace > 6);

На такое закладываться опасно - нет гарантии, что после очередного биоваревского апдейта не поменяются значения констант. Хотя, могу и ошибаться...
Lex
Не, константы они врядли сменят, это действительно хороший выход из ситуации. smile.gif
Friedrich
Ну можно все расы перечислить:
(nRace == RACIAL_TYPE_DWARF)||(nRace == RACIAL_TYPE_ELF)|| и т.д.
Так короче просто... smile.gif
QUOTE (slavaz @ Mar 20 2005, 19:25)
На такое закладываться опасно - нет гарантии, что после очередного биоваревского апдейта не поменяются значения констант.

Не, думаю, те что есть не поменяются. Если только новые добавят. Если б они и значения констант меняли, то пришлось после каждого апдейта все модули перекопилировать crazy.gif .
Хэнтан
QUOTE (Aiwan @ Mar 20 2005, 02:04)
Такс. Сперва почитай мануалы, что бы мы не пересказывали одно и то же сто раз. Ок? Потом задашь вопросы.

Я почитал мануалы,тока я все равно там не че непонял.Может подскажите что там искать именно?
Vhall
Хэнтан
А что тебя именно интересует? Не работа в Тулсете, случайно? smile.gif
Lex
Вал, хорош стебаться. biggrin.gif

Хэнтан, тебе что конкретно надо?
Но учти, если это разобрано в Вопросах и Ответах или в статье, то я буду не сильно рад. smile.gif
Хэнтан
QUOTE (Хэнтан @ Mar 20 2005, 02:00)
Помогите плиzzzzzz!! shout.gif
Я вообще в этом деле лузер,но хочу научиться:
1.Как сделать так чтобы на локе моно было качаться до определенного количества опыта?
2.Как сделать так чтобы моно было качаться на манекенах:тоесть бьешь маникена получаешь за каждый удар н-ое количество опыта,но при этом маникен не уничтожаеться.
3.Еще один ламерский вопрос:Что то я немогу врубиться в респауны,как их делать и при помощи чего?

unsure.gif unsure.gif
Заранеее Спасиба!!!С уважением Хэнтан

Вот меня что интересует biggrin.gif
Lex
QUOTE (Хэнтан @ Mar 21 2005, 16:33)
1.Как сделать так чтобы на локе моно было качаться до определенного количества опыта?

Хм..первое что на ум приходит это в скрипте на смерть моба проверять локацию и опыт того, кто убил моба. Если лока с нужным тэгом и экспы больше, чем надо, то скидывать на мах. значение для данной локи.
что-то типа того:
Neverwinter Script Source
object oKiller = GetLastDamager();
int XP = GetXP(oKiller);
if (GetTag(GetArea(OBJECT_SELF))=="тут тэг твоей локации")
   {
    if (XP>10000) // к примеру
            SetXP(oKiller,10000);
   }


QUOTE (Хэнтан @ Mar 21 2005, 16:33)
2.Как сделать так чтобы моно было качаться на манекенах:тоесть бьешь маникена получаешь за каждый удар н-ое количество опыта,но при этом маникен не уничтожаеться.

дамми. Все просто. Для начала дамми должен быть creature, а не placeable. Есть у кричей такой внешний вид.
На дамаж объекта написать скрипт дачи экспы и наложение heal (чтоб не убили). И естественно поставить флаг immortale

что-то типа того:
Neverwinter Script Source
void main()
{
int DMG = GetMaxHitPoints(OBJECT_SELF) - GetCurrentHitPoints(OBJECT_SELF);
if (DMG==0) return;
GiveXPToCreature(GetLastDamager(),DMG); // кол-во экспы сам расчитывай как хошь
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectHeal(GetMaxHitPoints(OBJECT_SELF)),OBJECT_SELF);
}


QUOTE (Хэнтан @ Mar 21 2005, 16:33)
3.Еще один ламерский вопрос:Что то я немогу врубиться в респауны,как их делать и при помощи чего?

Вот про это не знаю. Есть готовые респ-системы с описанием что и как. Я таким вопросом не заморачивался ни разу.
Споси у шардовиков в разделе ШАРДЫ.
Tarron
Народ жду помощи плз.Столкнулся со следующими проблемами
1- Как сделать изменение Алаймента? Меня интересует скрипт при старте чтобы игрок мог выбрать алаймент
Стандартный НВНовский двигает на 5 очков в сторону например ЗЛа а мне надо чтобы двигал на 100.
2- Мб ктонить знает конечно это не по теме но ПОЧЕМУ ДМ не может менять алаймент игроков и как вобщеэто решить? НУ например Доброго за злой поступок окунуть в ивил.Мб какойнить предмет ему дать? pardon.gif
3- Главный вопрос можно ли сделать систему захвата замка? ЧТо именно надо
-Есть босс замка при его убийстве замок меняет алаймент .Т.е Замок злых становиться Добрым и наоборот.
Сил только 2 Добро и Зло.Респом босса можно не заморачиваться.
-В замке есть респ монстров по дефолту через НВН спавнер группами. Как сделать что при изменении алаймента замка начинали спавниться мобы другого типа.Например у злых респяться Орки как только переменная Арены сменилась начинают спавниться Люди .В спавн групп можно просто засунуть 2 вида мобов но вот как сделать чтобы между ними было переключение вот это мне не ясно.
4- Задумал сделать Реморт игроков.СМЫСЛ после 40 можно начать жизнь заного взяв себе какойнить перк со старой или заклинание.ну собстно хотябы обрисуйте возможно ли такое? Просто перки можно например давать шмотом но список не полон.А с заклинаниями даже не представляю.
ПОЖАЛУСТА на вопрос с Алайментом дайте плз скрипт я в коде 0 а наш кодер уехал а скрипт нужен прямо щас-)
Зарание спасибо.

Добавлено в [mergetime]1111413617[/mergetime]
Да и еще вопрос Как сделать сундук который хранит вещи после рестарта сервака ну или там НПЦ да хоть что угодно.Плз дайте скрипт если лень то не заморачивайтесь советами типа опиши тут так а там вот такpardon.gif
Я без претензий просто сам по-любому не напишу.
Извините но у меня осталось 2 метра трафа потому нигде не смотрел мб такое гденить и есть на форуме.
Lex
QUOTE (Tarron @ Mar 21 2005, 16:55)
1- Как сделать изменение Алаймента? Меня интересует скрипт при старте чтобы игрок мог выбрать алаймент
Стандартный НВНовский двигает на 5 очков в сторону например ЗЛа а мне надо чтобы двигал на 100.


Вот нужная функция:
Neverwinter Script Source
// Adjust the alignment of oSubject.
// - oSubject
// - nAlignment:
//   -> ALIGNMENT_LAWFUL/ALIGNMENT_CHAOTIC/ALIGNMENT_GOOD/ALIGNMENT_EVIL: oSubject's
//      alignment will be shifted in the direction specified
//   -> ALIGNMENT_ALL: nShift will be added to oSubject's law/chaos and
//      good/evil alignment values
//   -> ALIGNMENT_NEUTRAL: nShift is applied to oSubject's law/chaos and
//      good/evil alignment values in the direction which is towards neutrality.
//     e.g. If oSubject has a law/chaos value of 10 (i.e. chaotic) and a
//          good/evil value of 80 (i.e. good) then if nShift is 15, the
//          law/chaos value will become (10+15)=25 and the good/evil value will
//          become (80-25)=55
//     Furthermore, the shift will at most take the alignment value to 50 and
//     not beyond.
//     e.g. If oSubject has a law/chaos value of 40 and a good/evil value of 70,
//          then if nShift is 15, the law/chaos value will become 50 and the
//          good/evil value will become 55
// - nShift: this is the desired shift in alignment
// * No return value
void AdjustAlignment(object oSubject, int nAlignment, int nShift)

Если вдруг проблемы с английскми, то вот пример работы:
Neverwinter Script Source
object oPC = GetEnteringObject(); // это если скрипт стоит на входе в модуль
AdjustAlignment(oPC,ALIGNMENT_EVIL,100); /// 100 очков в сторону зла

Добавлено в [mergetime]1111414488[/mergetime]
QUOTE (Tarron @ Mar 21 2005, 16:55)
2- Мб ктонить знает конечно это не по теме но ПОЧЕМУ ДМ не может менять алаймент игроков и как вобщеэто решить? НУ например Доброго за злой поступок окунуть в ивил.Мб какойнить предмет ему дать?

сделать тогда надо через палку. (а вообще на волте наверняка набор палок для ДМа есть хороший.)
Но если совсем никак, то вот:
создать вещь с ТЭГОМ "ITM_DM_EVIL_5". Дать уникальное свойство (это в заклинаниях) - бесконечное кол-вор раз.
В скрипте onItemActivated сделать такую добавку:
Neverwinter Script Source
void main()
{
object oItem = GetItemActivated();
object oActivator = GetItemActivator();
object oTarget = GetItemActivatedTarget();
location lPlace = GetItemActivatedTargetLocation();
if (GetTag(oItem)=="ITM_DM_EVIL_5"
  {
  AdjustAlignment(oTarget ,ALIGNMENT_EVIL,5); 
  }

В итоге эта палка будет сдвигать на 5 в ивел тех, кого ей ткнут (через уникальное свойство)
Добавлено в [mergetime]1111414619[/mergetime]
QUOTE (Tarron @ Mar 21 2005, 16:55)
3- Главный вопрос можно ли сделать систему захвата замка? ЧТо именно надо
-Есть босс замка при его убийстве замок меняет алаймент .Т.е Замок злых становиться Добрым и наоборот.
Сил только 2 Добро и Зло.Респом босса можно не заморачиваться.
-В замке есть респ монстров по дефолту через НВН спавнер группами. Как сделать что при изменении алаймента замка начинали спавниться мобы другого типа.Например у злых респяться Орки как только переменная Арены сменилась начинают спавниться Люди .В спавн групп можно просто засунуть 2 вида мобов но вот как сделать чтобы между ними было переключение вот это мне не ясно.

я не знаком с системой респа от Биовар. Я вообще с респ-системами не вожусь.

QUOTE (Tarron @ Mar 21 2005, 16:55)
4- Задумал сделать Реморт игроков.СМЫСЛ после 40 можно начать жизнь заного взяв себе какойнить перк со старой или заклинание.ну собстно хотябы обрисуйте возможно ли такое? Просто перки можно например давать шмотом но список не полон.А с заклинаниями даже не представляю.

Только через вещи. Скриптами дать персу фит нельзя, как и закл.
Но тот список фитов, что есть у вещей можно расширить...это к контентщикам-2дашникам в соседней разделе.

Добавлено в [mergetime]1111414698[/mergetime]
QUOTE (Tarron @ Mar 21 2005, 16:55)
Да и еще вопрос Как сделать сундук который хранит вещи после рестарта сервака ну или там НПЦ да хоть что угодно

система банка есть. В топике "ССЫЛКИ" в посте ПРОЧИЕ есть на нее ссылка.

Про другие такие вещи не знаю, это к шардовикам соседнего раздела.
Tarron
Спасибо за помощь.
Насчет штурма замка - от Биоварей система респа проста.Тригером.Выделяеться гобласть при захождении в нее игрок активирует респоун в списке можно выбрать каких монсторов спавнить.Например туда можно сунуть Орка и человека.ОН будет их спавнить но Рендомно на выбор или в зависимости от уровня перса активировавшего тригер.МБ ктонить скажет какже сделать чтобы при убийстве босса менялась переменная и начинали при ее смене спавниться другие монстры.Накрайняк не сложно сделать разные спавнилки для Орков и Людей но вот как сделать чтобы активировались те которые надо а которые не надо не активировались?
Ну думаю что из этой путаницы чтонить ясно -)
Еще раз спасибо за ответы !
Lex
QUOTE (Tarron @ Mar 21 2005, 18:23)
Накрайняк не сложно сделать разные спавнилки для Орков и Людей но вот как сделать чтобы активировались те которые надо а которые не надо не активировались?


Есть на энкаунтере (это так называется) флаг active
Убили боса Орка - все энкаунтеры орков отключились, а людские включились. И наоборот.
примерно так: (на смерть боссов обоих)
Neverwinter Script Source
// ENC_ORCS - спавнеры орков
// ENC_HUMANS - спавнеры людей
// ORC_BOSS - ТЭГ босса орков
// HUMAN_BOSS - ТЭГ босса людей

void main()
{
object oSpawner;
int i = 0;
int STATUS;
if (GetTag(OBJECT_SELF)=="ORC_BOSS") STATUS = FALSE;
else if (GetTag(OBJECT_SELF)=="HUMAN_BOSS") STATUS = TRUE;
else return;

oSpawner = GetObjectByTag("ENC_ORCS",i);
while (GetIsObjectValid(oSpawner ))
          {
          SetEncounterActive(STATUS ,oSpawner);
          i++;
          oSpawner = GetObjectByTag("ENC_ORCS",i);
          }
i = 0;
oSpawner = GetObjectByTag("ENC_HUMANS",i);
while (GetIsObjectValid(oSpawner ))
          {
          SetEncounterActive(!STATUS ,oSpawner);
          i++;
          oSpawner = GetObjectByTag("ENC_HUMANS",i);
          }
}


это навскидку. Не тестил, но идея такая примерно.
Tarron
Сенкс.
Да еще вопрос ПОдскажите плз скриптю на дроп рэндомного предмета из того что одето на персе.
Примерно я наверно понимаю как сделать копию слота на землю потом дестракт .ЕСЛИ лень весь скрипт писать то плз неполенитесь напишите без описывания всех слотов на персе вроде их там 14 а только чисто функцию дропа.
просто сегодня я сел править все баги потому столько вопростов
Биг СЕНК Lex !
Lex
QUOTE (Tarron @ Mar 21 2005, 18:50)
Да еще вопрос ПОдскажите плз скриптю на дроп рэндомного предмета из того что одето на персе.
Примерно я наверно понимаю как сделать копию слота на землю потом дестракт .ЕСЛИ лень весь скрипт писать то плз неполенитесь напишите без описывания всех слотов на персе вроде их там 14 а только чисто функцию дропа.
просто сегодня я сел править все баги потому столько вопростов

эх..
вот так примерно (на смерть РС):
Neverwinter Script Source
void main()
{
object oPlayer = GetLastPlayerDied();
object oItem = GetItemInSlot(Random(14),oPC);
CopyObject(oItem,GetLocation(oPC));
DestroyObject(oItem);
}


не тестил.

Верните вашего скриптера из командировки.
Tarron
Вопрос а как там oItem описать?
Добавлено в [mergetime]1111423773[/mergetime]
object oItem = GetPCItemLastEquipped - наверно так?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2024 Invision Power Services, Inc.