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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 90 91 92 93 94 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Dik Morris
сообщение May 16 2006, 17:34
Сообщение #2261


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

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



gennady
QUOTE
DestroyObject(oByTag); // удалим триггер


ИМХО, стоит ввести небольшую задержку в 0.3, 0.5 - вдруг триггер удалится раньше. (IMG:style_emoticons/kolobok_light/smile.gif)

Nashman

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

NSS
void RemoveEffectImmunity(object oCreature){
   effect eEffect = GetFirstEffect(oCreature);
    while (GetEffectType(eEffect) == EFFECT_TYPE_IMMUNITY){   
     eEffect = GetNextEffect(oCreature);
      if (GetIsEffectValid(eEffect)){
       RemoveEffect(oCreature, eEffect);}}}


PS: код ставь перед основной фун-цией. (void main() ), заместо oCreature ставь игрока.

Сообщение отредактировал Dik Morris - May 16 2006, 18:14
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 16 2006, 20:37
Сообщение #2262


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



QUOTE(Nashman @ May 16 2006, 20:06) [snapback]81970[/snapback]
Как убрать имунитет к замедлению? Если он есть

Вот тебе функция. Узнай есть ли на нем такой эффект и убери. Уберешь так:

NSS
RemoveTypeEffect(oPC, EFFECT_TYPE_SLOW);


NSS
// УДАЛЯЕМ ВЫБРАННЫЙ ТИП ЕФФЕКТОВ iType(EFFECT_TYPE_ ) НА ОБЪЕКТЕ oCreature
void RemoveTypeEffect(object oCreature, int iType);

void RemoveTypeEffect(object oCreature, int iType)
{
    effect eEffect = GetFirstEffect(oCreature);
    while(GetIsEffectValid(eEffect))
    {
    if (GetEffectType(eEffect) == iType)
      {
        RemoveEffect(oCreature, eEffect);
      }
        eEffect = GetNextEffect(oCreature);
    }
}


Блин я не совсем вкурил вопрос, но думаю ты разберешься с кодом. Тебе ИММУН надо...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 16 2006, 21:23
Сообщение #2263


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

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



нееее... Айв, речь совсем не о том.
Вот, нашел в закромах

NSS
//******************************************************************************
// inc_effects
// Effects Library
// Lex, -=WRG!=- Team 2004
//******************************************************************************

// удаление всех эффектор по длительности (DURATION_TYPE)
void E_DeleteEffectsByDuration(object oObject, int nDuration);
// удаление всех эффектов, наложенных oCreator'ом
void E_DeleteEffectsByCreator(object oObject, object oCreator);
// удаление всех эффектов определенного типа (EFFECT_TYPE_*)
void E_DeleteEffectsByType(object oObject, int nType);
// удаление всех эффектов определенного подтипа (SUBTYPE_*)
void E_DeleteEffectsBySubType(object oObject, int nSubType);
// удаление особого эффекта, соотв. всем параметрам (создатель, длительность, тип, подтип)
// nAllEffects = TRUE - будут удалены все эффекты, попадающие под условия. FALSE - только первый
void E_DeleteSpecificEffect(object oObject, object oCreator = OBJECT_INVALID,int nEffectType = -1,int nEffectSubType = -1,int nEffectDurationType = -1, int nAllEffects = FALSE);

//******************************************************************************

void E_DeleteEffectsByDuration(object oObject, int nDuration)
{
effect eOE = GetFirstEffect(oObject);
while (GetIsEffectValid(eOE))
   {
   if (GetEffectDurationType(eOE)==nDuration)
       {
       RemoveEffect(oObject,eOE);
       }
   eOE = GetNextEffect(oObject);
   }
}
//******************************************************************************
void E_DeleteEffectsByCreator(object oObject, object oCreator)
{
effect eOE = GetFirstEffect(oObject);
while (GetIsEffectValid(eOE))
   {
   if (GetEffectCreator(eOE)==oCreator)
       {
       RemoveEffect(oObject,eOE);
       }
   eOE = GetNextEffect(oObject);
   }
}
//******************************************************************************
void E_DeleteEffectsByType(object oObject, int nType)
{
effect eOE = GetFirstEffect(oObject);
while (GetIsEffectValid(eOE))
   {
   if (GetEffectType(eOE)==nType)
       {
       RemoveEffect(oObject,eOE);
       }
   eOE = GetNextEffect(oObject);
   }
}
//******************************************************************************
void E_DeleteEffectsBySubType(object oObject, int nSubType)
{
effect eOE = GetFirstEffect(oObject);
while (GetIsEffectValid(eOE))
   {
   if (GetEffectSubType(eOE)==nSubType)
       {
       RemoveEffect(oObject,eOE);
       }
   eOE = GetNextEffect(oObject);
   }
}
//******************************************************************************
void E_DeleteSpecificEffect(object oObject, object oCreator = OBJECT_INVALID,int nEffectType = -1,int nEffectSubType = -1,int nEffectDurationType = -1, int nAllEffects = FALSE)
{
effect eEffect = GetFirstEffect(oObject);
int PassCreator = (oCreator==OBJECT_INVALID);
int PassEffectType = (nEffectType==-1);
int PassEffectSubType = (nEffectSubType==-1);
int EffectDurationType = (nEffectDurationType==-1);

while (GetIsEffectValid(eEffect))
   {
   if ((GetEffectCreator(eEffect)==oCreator)||(PassCreator))
       {
       if ((GetEffectType(eEffect)==nEffectType)||(PassEffectType))
           {
           if ((GetEffectSubType(eEffect)==nEffectSubType)||(PassEffectSubType))
               {
               if ((GetEffectDurationType(eEffect)==nEffectDurationType)||(EffectDurationType))
                   {
                   RemoveEffect(oObject,eEffect);
                   if (!nAllEffects)
                        return;
                   }
               }
           }
       }
   eEffect = GetNextEffect(oObject);
   }
}
//******************************************************************************
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение May 17 2006, 05:55
Сообщение #2264


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

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



QUOTE(Dik Morris @ May 16 2006, 18:34) [snapback]81977[/snapback]
ИМХО, стоит ввести небольшую задержку в 0.3, 0.5 - вдруг триггер удалится раньше.

Дик, задержка не нужна - триггер уже свое отработал. Первый скрипт стоит на триггере, а второй в диалоге перса, и последние команды идут из стека этого перса.

Вопрос к Aivan. Вы недавно приводили интересный скрипт секретного объекта. На версии 1.32, проверка локалки не работает, пробовал подобрать проверку на эффект GetEffectType(), не смог подобрать нужный. Замучили буквоеды! Так какая включается локалка в режиме обнаружения, или какой налагается эффект замедления на героя?

NSS
if(GetGameDifficulty() == GAME_DIFFICULTY_EASY || !GetLocalInt(GetModule(), "DEBAG_PC"))
SendMessageToPC(oPC, "<cу >ВКЛЮЧИТЕ РЕЖИМ ОБНАРУЖЕНИЯ.</c>");
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 17 2006, 07:12
Сообщение #2265


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Генадий, это просто я сделал для своих тестеров для дебага. Вы можете удалить кусок кода с локалкой:
NSS
if(GetGameDifficulty() == GAME_DIFFICULTY_EASY)
SendMessageToPC(oPC, "<cу >ВКЛЮЧИТЕ РЕЖИМ ОБНАРУЖЕНИЯ.</c>");

Тогда предупреждение будет выдавать только игрокам играющим на сложности EASY. Можете вообще убрать.
Если вы спрашиваете в каком режиме это происходит, то при спавне по умолчанию забанена кнопка F2.
По поводу того что может не работать... Дело в том что написано это на 1.66, соотвесвенно может некоторые функции имеют другие внутренние механизмы движка или их вообще нет. Но это вряд ли, тогда бы не скомпелировался код. Насколько я понимаю, у вас СОУ, соотвественно вы задать локалки или стринги на триггере заранее НЕ МОЖЕТЕ. Значит скрипт настроить нормально вашими средствами нельзя. Ставьте ХОТУ. (IMG:style_emoticons/kolobok_light/yes3.gif)

2 Лекс. Сенькс, за код, надо библу себе добить будет (IMG:style_emoticons/kolobok_light/biggrin.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение May 17 2006, 09:39
Сообщение #2266


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

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



Спасибо вам Aiwan за ответ. Скрипт конечно не компелировался, пришлось выкинуть все локалки и стринги, и заточить под собственные нужды. Фразу - «ВКЛЮЧИТЕ РЕЖИМ ОБНАРУЖЕНИЯ.», оставил при любом режиме, пусть колбасит игрока, но это немного некорректно, когда этот режим включен. Перейти на 1.66 нет возможности, да и нет необходимости, пока игра не дописана. Поэтому пробовал через эффект, но не нашел оный. Спасибо Лексу за библиотеку. Интересно, никто не делал библиотеку эффектов? Я попытался, описал полторы сотни, работает нормально, но не все еще внес. Если еще подключить библиотеку Лекса, то это облегчит работу по скриптам с эффектами. В общем идея такая:

NSS
// *********** БИБЛИОТЕКА ЭФФЕКТОВ ************    #include "effect_one"

effect e1i = EffectVisualEffect(VFX_FNF_DISPEL);
// Воронка синего тумана 1
effect e2i = EffectVisualEffect(VFX_FNF_DISPEL_DISJUNCTION);
// Воронка синего тумана 2
effect e3i = EffectVisualEffect(VFX_FNF_DISPEL_GREATER);
// Воронка синего тумана 3
effect e4i = EffectVisualEffect(VFX_FNF_IMPLOSION);
// ЖелтаЯ воронка
effect e5i = EffectVisualEffect(VFX_FNF_LOS_EVIL_10);
// НегативнаЯ энергиЯ Красный круг 1
effect e6i = EffectVisualEffect(VFX_FNF_LOS_EVIL_20);
// НегативнаЯ энергиЯ Красный круг 2
effect e7i = EffectVisualEffect(VFX_FNF_LOS_EVIL_30);
// НегативнаЯ энергиЯ Красный круг 3
effect e8i = EffectVisualEffect(VFX_FNF_LOS_HOLY_10);
// круг желтый 1
effect e9i = EffectVisualEffect(VFX_FNF_LOS_HOLY_20);
// круг желтый 2
effect e10i = EffectVisualEffect(VFX_FNF_LOS_HOLY_30);
// круг желтый 3
effect e11i = EffectVisualEffect(VFX_FNF_NATURES_BALANCE);
// Зеленый круг животных
effect e12i = EffectVisualEffect(VFX_FNF_PWKILL);
// Красный круг пентаграммы
effect e13i = EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_2);
// ФиолетоваЯ спираль и круг
effect e14i = EffectVisualEffect(VFX_FNF_HOWL_MIND);
// Страх синий круг
effect e15i = EffectVisualEffect(VFX_FNF_HOWL_ODD);
// Страх фиолетовый круг
effect e16i = EffectVisualEffect(VFX_FNF_HOWL_WAR_CRY);
// Страх белый круг
  effect e17i = EffectVisualEffect(VFX_IMP_PULSE_FIRE);
// Огненный импульсный круг
  effect e18i = EffectVisualEffect(VFX_IMP_PULSE_COLD);
// синий импульсный круг

// ***********  ИНТЕРЕСНЫЕ  **********
effect e19i = EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_3);
// ГолубаЯ  звезда под ногами
effect e20i = EffectVisualEffect(VFX_FNF_WORD);
// БольшаЯ желтаЯ звезда под ногами
effect e21i = EffectVisualEffect(VFX_FNF_SUMMON_CELESTIAL);
// Врата Призыва синий луч
effect e22i = EffectVisualEffect(VFX_FNF_SUMMON_GATE);
// Врата Призыва огненный взрыв
effect e23i = EffectVisualEffect(VFX_FNF_WAIL_O_BANSHEES);
// Девка
effect e24i = EffectVisualEffect(VFX_FNF_WEIRD);
// Змей двуглавый
effect e25i = EffectVisualEffect(VFX_IMP_DISPEL);
// Голубое облако
  effect e26 = EffectVisualEffect(VFX_DUR_PROT_PREMONITION);
// Глазастое синее облако

// ***********  ВЗРЫВНЫЕ  **********
effect e27i = EffectVisualEffect(VFX_FNF_FIREBALL);
// Большой огненный взрыв
effect e28i = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_ACID);
// Взрыв газа зеленый
effect e29i = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_EVIL);
// Взрыв газа красный
effect e30i = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_FIRE);
// Огненный взрыв
effect e31i = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_GREASE);
// Взрыв газа черный
effect e32i = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_MIND);
// Взрыв газа синий
effect e33i = EffectVisualEffect(VFX_FNF_BLINDDEAF);
// Большой серебристый взрыв
effect e34i = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_NATURE);
// Взрыв газа болотный
effect e35i = EffectVisualEffect(VFX_FNF_LOS_NORMAL_10);
// Звуковой взрыв 1
effect e36i = EffectVisualEffect(VFX_FNF_LOS_NORMAL_20);
// Звуковой взрыв 2
effect e37i = EffectVisualEffect(VFX_FNF_LOS_NORMAL_30);
// Звуковой взрыв 3
effect e38i = EffectVisualEffect(VFX_FNF_SOUND_BURST);
// Большой звуковой взрыв
effect e39i = EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_1);
// Серебристый взрыв
effect e40i = EffectVisualEffect(VFX_FNF_SUMMON_UNDEAD);
// Серебристый малый взрыв и голос страха
effect e41i = EffectVisualEffect(VFX_COM_CHUNK_RED_LARGE);
// Большой взрыв красные кости
effect e42i = EffectVisualEffect(VFX_COM_CHUNK_RED_MEDIUM);
// взрыв красные кости
effect e43i = EffectVisualEffect(VFX_COM_CHUNK_RED_SMALL);
// взрыв красные кости
effect e44i = EffectVisualEffect(VFX_COM_CHUNK_GREEN_MEDIUM);
// Взрыв зеленые кости
effect e45i = EffectVisualEffect(VFX_COM_CHUNK_GREEN_SMALL);
// Взрыв зеленые кости
effect e46i = EffectVisualEffect(VFX_COM_CHUNK_YELLOW_MEDIUM);
// Взрыв желтые кости
effect e47i = EffectVisualEffect(VFX_COM_CHUNK_YELLOW_SMALL);
// Взрыв желтые кости
effect e48i = EffectVisualEffect(VFX_COM_CHUNK_BONE_MEDIUM);
// Взрыв костей нежить
effect e49i = EffectVisualEffect(VFX_COM_HIT_ACID);
// Малый зеленый взрыв
effect e50i = EffectVisualEffect(VFX_COM_HIT_FIRE);
// МалаЯ огненнаЯ вспышка
effect e51i = EffectVisualEffect(VFX_DUR_CALTROPS);
// Взрыв ежиков

// ***********  ЗАКЛИНАНИЕ  ***********
effect e52i = EffectVisualEffect(VFX_FNF_HORRID_WILTING);
// Увeдание Аб-ма
effect e53i = EffectVisualEffect(VFX_FNF_ICESTORM);
// Ледeной шторм
effect e54i = EffectVisualEffect(VFX_FNF_METEOR_SWARM);
// Метеорный дождь
effect e55i = EffectVisualEffect(VFX_FNF_FIRESTORM);
// Огненный шторм
effect e56i = EffectVisualEffect(VFX_FNF_TIME_STOP);
// Часы
effect e57 = EffectVisualEffect(VFX_DUR_BIGBYS_CLENCHED_FIST);
// Рука Бигли
effect e58 = EffectVisualEffect(VFX_DUR_BIGBYS_CRUSHING_HAND);
// Захват Бигли
effect e59 = EffectVisualEffect(VFX_DUR_BIGBYS_INTERPOSING_HAND);
// Вращ рука Бигли
effect e60 = EffectVisualEffect(VFX_DUR_WEB);
// Паутина удержание
effect e61 = EffectVisualEffect(VFX_DUR_WEB_MASS);
// Паутина удержание под ногами
effect e62 = EffectVisualEffect(VFX_DUR_PROT_BARKSKIN);
// Кожа кора
effect e63 = EffectVisualEffect(VFX_DUR_PETRIFY);
// КаменнаЯ кожа
effect e64 = EffectVisualEffect(VFX_DUR_PROT_SHADOW_ARMOR);
// ЧернаЯ кожа
effect e65 = EffectVisualEffect(VFX_DUR_GHOSTLY_PULSE);
// Теневой режим
effect e66 = EffectVisualEffect(VFX_DUR_GHOSTLY_VISAGE);
// Призрачный вид
  effect e67 = EffectVisualEffect(VFX_DUR_ETHEREAL_VISAGE);
// Фиолетовый вид
  effect e68 = EffectVisualEffect(VFX_DUR_BLUR);
// Телесное мерцание
effect e69i = EffectVisualEffect(VFX_FNF_SCREEN_BUMP);
// Толчки 1
effect e70i = EffectVisualEffect(VFX_FNF_SCREEN_SHAKE);
// Толчки 2
effect e71i = EffectVisualEffect(VFX_IMP_KNOCK);
// ПульсирующаЯ голубаЯ звезда  (взлом замка)

// ***********  ЛУЧИ  ***********
effect e72i = EffectVisualEffect(VFX_FNF_SUNBEAM);
// Большой желтый луч
effect e73i = EffectVisualEffect(VFX_IMP_DIVINE_STRIKE_FIRE);
// Огненный луч
effect e74i = EffectVisualEffect(VFX_IMP_HEALING_X);
// Синий луч
effect e75i = EffectVisualEffect(VFX_IMP_LIGHTNING_M);
// Молнии луч

// ***********  ПОД НОГАМИ  ***********
effect e76i = EffectVisualEffect(VFX_IMP_SUPER_HEROISM);
// Доспехи супер героЯ
effect e77 = EffectVisualEffect(VFX_DUR_ANTI_LIGHT_10);
// Чернота под ногами (тьма)
effect e78 = EffectVisualEffect(VFX_DUR_ELEMENTAL_SHIELD);
// Огненный круг под ногами
effect e79 = EffectVisualEffect(VFX_DUR_SPELLTURNING);
// Синий круг под ногами
effect e80 = EffectVisualEffect(VFX_DUR_FREEDOM_OF_MOVEMENT);
// Зеленый круг под ногами
effect e81i = EffectVisualEffect(VFX_COM_SPARKS_PARRY);
// Искры у ног
effect e82i = EffectVisualEffect(VFX_IMP_LIGHTNING_S);
// Малый взрыв электричества под ногами
effect e83 = EffectVisualEffect(VFX_DUR_TENTACLE);
// Черные нити
effect e84 = EffectVisualEffect(VFX_DUR_ENTANGLE);
// Папоротник
effect e85i = EffectVisualEffect(VFX_FNF_SMOKE_PUFF);
// Пар
effect e86 = EffectVisualEffect(VFX_DUR_FLAG_BLUE);
// Флаг синий
effect e87 = EffectVisualEffect(VFX_DUR_FLAG_GOLD);
// Флаг фиолетовый
effect e88 = EffectVisualEffect(VFX_DUR_FLAG_PURPLE);
// Флаг желтый
effect e89 = EffectVisualEffect(VFX_DUR_FLAG_RED);
// Флаг красный

// ***********  У ГОЛОВЫ  ***********
effect e90 = EffectVisualEffect(VFX_DUR_BARD_SONG);
// Музыка и ноты
effect e91i = EffectVisualEffect(VFX_IMP_DOOM);
// Гроза над головой
effect e92i = EffectVisualEffect(VFX_IMP_HEAD_ACID);
// Зеленый взрыв над головой
effect e93i = EffectVisualEffect(VFX_IMP_HEAD_COLD);
// Голубой взрыв над головой
effect e94i = EffectVisualEffect(VFX_IMP_HEAD_ELECTRICITY);
// Электрический взрыв над головой
effect e95i = EffectVisualEffect(VFX_IMP_HEAD_EVIL);
// Красный взрыв над головой
effect e96i = EffectVisualEffect(VFX_IMP_HEAD_FIRE);
// Огненный взрыв над головой
effect e97i = EffectVisualEffect(VFX_IMP_HEAD_HEAL);
// Сине-желтый взрыв над головой
effect e98i = EffectVisualEffect(VFX_IMP_HEAD_HOLY);
// Желтый взрыв над головой
effect e99i = EffectVisualEffect(VFX_IMP_HEAD_MIND);
// Фиолетовый взрыв над головой
effect e100i = EffectVisualEffect(VFX_IMP_HEAD_NATURE);
// Желто-зеленый взрыв над головой
effect e101i = EffectVisualEffect(VFX_COM_HIT_FIRE);
// Малый oгненный взрыв у головы
effect e102i = EffectVisualEffect(VFX_COM_BLOOD_SPARK_LARGE);
// Радужные брызги у головы
effect e103i = EffectVisualEffect(VFX_COM_BLOOD_SPARK_MEDIUM);
// Радужные брызги
effect e104i = EffectVisualEffect(VFX_COM_BLOOD_CRT_RED);
// Красный шар взрыв у головы
effect e105i = EffectVisualEffect(VFX_COM_BLOOD_CRT_YELLOW);
// Желтый шар взрыв у головы
effect e106i = EffectVisualEffect(VFX_IMP_STUN);
// Ледeной взрыв над головой
effect e107i = EffectVisualEffect(VFX_IMP_HEALING_G);
// Маг радужное облако
effect e108 = EffectVisualEffect(VFX_DUR_MAGICAL_SIGHT);
// Замешательство облако
effect e109 = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_DISABLED);
// Замешательство птички
effect e110 = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_DOMINATED);
// Замешательство нимб голубой
effect e111 = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_FEAR);
// Страх
effect e112 = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_NEGATIVE);
// Замешательство спираль
effect e113 = EffectVisualEffect(VFX_DUR_PARALYZED);
// Замешательство круг кинжалов

// ***********  ПРОЧИЕ  ***********
effect e114i = EffectVisualEffect(VFX_FNF_PWSTUN);
// КраснаЯ спираль
effect e115 = EffectVisualEffect(VFX_DUR_PARALYZE_HOLD);
// БольшаЯ белаЯ спираль
effect e116 = EffectVisualEffect(VFX_DUR_AURA_COLD);
// Аура голубаЯ
effect e117i = EffectVisualEffect(VFX_IMP_DIVINE_STRIKE_HOLY);
// ОгненнаЯ спираль
effect e118i = EffectVisualEffect(VFX_IMP_HEALING_L);
// Фонтан голубой спиральный
effect e119i = EffectVisualEffect(VFX_IMP_HEALING_M);
// Малый столб света
effect e120i = EffectVisualEffect(VFX_IMP_HEALING_S);
// МалаЯ голубаЯ спираль
effect e121 = EffectVisualEffect(VFX_DUR_DARKNESS);
// МалаЯ тьма
effect e122 = EffectVisualEffect(VFX_DUR_GLOBE_INVULNERABILITY);
// Маг сфера
effect e123 = EffectVisualEffect(VFX_DUR_GLOBE_MINOR);
// ПризрачнаЯ маг сфера
effect e124 = EffectVisualEffect(VFX_DUR_MAGIC_RESISTANCE);
// Маг рваннаЯ сфера
effect e125 = EffectVisualEffect(VFX_DUR_PROTECTION_EVIL_MAJOR);
// Красный дождь
effect e126 = EffectVisualEffect(VFX_DUR_PROTECTION_EVIL_MINOR);
// Малый красный дождь
effect e127 = EffectVisualEffect(VFX_DUR_PROTECTION_GOOD_MAJOR);
// Желтый дождь
effect e128 = EffectVisualEffect(VFX_DUR_PROTECTION_GOOD_MINOR);
// Малый желтый дождь
effect e129 = EffectVisualEffect(VFX_DUR_SANCTUARY);
// БольшаЯ синеЯ спираль
effect e130 = EffectVisualEffect(VFX_DUR_PROTECTION_ELEMENTS);
// Желтый маг дождь
effect e131 = EffectVisualEffect(VFX_DUR_LIGHT_YELLOW_15);
// Свет желтый
effect e132 = EffectVisualEffect(VFX_DUR_LIGHT_WHITE_15);
// Свет белый
effect e133 = EffectVisualEffect(VFX_DUR_LIGHT_RED_15);
// Свет красный
effect e134 = EffectVisualEffect(VFX_DUR_LIGHT_BLUE_15);
// Свет голубой
effect e135 = EffectPetrify();
// Окаменение - статуЯ
effect e136 = EffectAppear();
// Прыжок с неба
effect e137 = EffectDisappear();
// Прыжок в небо и уничтожение объекта
effect e138 = EffectCharmed();
// Эффект зачаровывает цель - (не может говорить)
effect e139 = EffectCutsceneParalyze();
// Эффект парализации
effect e140 = EffectVisualEffect(VFX_DUR_CUTSCENE_INVISIBILITY);
// ПолнаЯ невидимость
effect e141i = EffectDeath();
// Эффект смерти
effect e142 = EffectHaste();
// Эффект ускорение
effect e143 = EffectEntangle();
// Эффект запутывание
effect e144i = EffectResurrection();
// Эффект воскрешениe
effect e145 = EffectSleep();
// Эффект сон
effect e146 = EffectVisualEffect(VFX_IMP_SLEEP);
// Эффект сон
effect e147 = EffectSlow();
// Эффект замедление - цель затормаживает на 50%
effect e148 = EffectCurse(3,3,3,3,3);
// ПРОКЛЯТИЕ
//**************************
//=============== НАЛОЖИТЬ ЭФФЕКТ ==============================================
void EffectOnPC(object oObject, effect eOne, float iTime, int iNUM)
{
location lEffect = GetLocation(oObject);
if (iNUM == 1) ApplyEffectToObject(DURATION_TYPE_INSTANT, eOne, oObject);
if (iNUM == 2) ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eOne, oObject, iTime);
if (iNUM == 3) ApplyEffectToObject(DURATION_TYPE_PERMANENT, eOne, oObject);
if (iNUM == 4) ApplyEffectToObject(DURATION_TYPE_TEMPORARY, SupernaturalEffect(eOne), oObject, iTime);
if (iNUM == 5) ApplyEffectToObject(DURATION_TYPE_PERMANENT, SupernaturalEffect(eOne), oObject);
if (iNUM == 6) ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eOne, lEffect);
}
//=============== СНЯТЬ ВСЕ ЭФФЕКТЫ ============================================
void DelEffectOnPC(object oObject)
{
effect eOne = GetFirstEffect(oObject);
while (GetIsEffectValid(eOne))
{
  RemoveEffect(oObject, eOne);
  eOne = GetNextEffect(oObject);
}
}
//=============== СНЯТЬ ЭФФЕКТ =================================================
void DelOneEffectOnPC(object oObject, int iOne)
{
effect eEffect = GetFirstEffect(oObject);
while (GetIsEffectValid(eEffect))
{
  if (GetEffectType(eEffect) == iOne)
  RemoveEffect(oObject, eEffect);
  eEffect = GetNextEffect(oObject);
}
//  int iOne -  EFFECT_TYPE_...
}


Эффекты сгруппировал по визуальному восприятию, если кого не устраивает описание, пишите свое. Если после номера эффекта стоит «i» - то этот эффект только «INSTANT» (может где и ошибся, извиняйте).

Сообщение отредактировал gennady - May 21 2006, 06:08
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Noah
сообщение May 17 2006, 11:06
Сообщение #2267


Level 5
**

Класс: Убийца
Характер: Chaotic Neutral
Раса: Полуэльф



Привет!Пытаюсь сделать триггер для повышения навыка(любого),типа вы скрылись в тени бонус к hide+6,а когда выидешь,чтобы бонус исчезал. Кроме того нужно чтоб бонусы не складывались.Кто знает как напишите.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 17 2006, 11:27
Сообщение #2268


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

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Триггер скиловой модификации. Для всех, и игрока и НПС.
(по аналогии можно сделать и модификацую атаки, АС и прочее)

lx_ten_skillmod - на ентер триггера

NSS
void main()
{
int mod = GetLocalInt(OBJECT_SELF,"MOD");
if (mod == 0) return;
object oPC = GetEnteringObject();
int skill = GetLocalInt(OBJECT_SELF,"SKILL");

string Comment = GetName(OBJECT_SELF);
effect eEffect;
if (mod > 0)
    {
    eEffect = SupernaturalEffect(EffectSkillIncrease(skill,mod));
    }
else
    {
    eEffect = SupernaturalEffect(EffectSkillDecrease(skill,-mod));
    }
if (GetLocalInt(OBJECT_SELF,"MSG"))
    SendMessageToPC(oPC,"*"+Comment+"*");
ApplyEffectToObject(DURATION_TYPE_PERMANENT,eEffect,oPC);
}




lx_tex_skillmod на экзит триггера
NSS
#include "inc_effects" // библа написана выше на пару постов
void main()
{
int mod = GetLocalInt(OBJECT_SELF,"MOD");
if (mod == 0) return;
object oPC = GetExitingObject();
int TYPE = 0;
if (mod > 0)
    {
    TYPE = EFFECT_TYPE_SKILL_INCREASE;
    }
else
    {
    TYPE = EFFECT_TYPE_SKILL_DECREASE;
    }
E_DeleteSpecificEffect(oPC,OBJECT_SELF,TYPE,SUBTYPE_SUPERNATURAL,DURATION_TYPE_PERMANENT);
}


делаем триггер, ставим эти 2 скрипта в слоты. Вешаем локалки
MOD, которая хранит значение модификации. Модификация может быть как положительной так и отрицательной.
MSG Это флаг того, будет ли выдаваться игроку сообщение (сообщение при входе это имя триггера).
SKILL номер скила, который меняется

int SKILL_ANIMAL_EMPATHY = 0;
int SKILL_CONCENTRATION = 1;
int SKILL_DISABLE_TRAP = 2;
int SKILL_DISCIPLINE = 3;
int SKILL_HEAL = 4;
int SKILL_HIDE = 5;
int SKILL_LISTEN = 6;
int SKILL_LORE = 7;
int SKILL_MOVE_SILENTLY = 8;
int SKILL_OPEN_LOCK = 9;
int SKILL_PARRY = 10;
int SKILL_PERFORM = 11;
int SKILL_PERSUADE = 12;
int SKILL_PICK_POCKET = 13;
int SKILL_SEARCH = 14;
int SKILL_SET_TRAP = 15;
int SKILL_SPELLCRAFT = 16;
int SKILL_SPOT = 17;
int SKILL_TAUNT = 18;
int SKILL_USE_MAGIC_DEVICE = 19;
int SKILL_APPRAISE = 20;
int SKILL_TUMBLE = 21;
int SKILL_CRAFT_TRAP = 22;
int SKILL_BLUFF = 23;
int SKILL_INTIMIDATE = 24;
int SKILL_CRAFT_ARMOR = 25;
int SKILL_CRAFT_WEAPON = 26;
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Kavin
сообщение May 17 2006, 14:35
Сообщение #2269


Level 8
***

Класс: Паладин
Характер: Lawful Good
Раса: Полуэльф
ПОДМАСТЕРЬЕ



Создаю скрипт для овцы, которая ночью должна баиньки ложиться.
Имеется следующая проблема: после пробуждения овца не желает выполнять действия, определенные ей как Action через скрипт.

NSS
//Событие, отправляющее овцу поближе к пастуху и укладывающее ее спать.
if (nEvent==EVENT_S_SLEEP)
    {
    if (GetLocalInt(oSelf, "int_EVENT")==EVENT_S_SLEEP)
        return;
    SetLocalInt(oSelf, "int_EVENT", EVENT_S_SLEEP);
    float fDist=(Random(8)+1)*1.0;
    ActionMoveToObject(oPastuh, FALSE, fDist);
    effect eSleep=EffectSleep();
    ActionDoCommand(ApplyEffectToObject(DURATION_TYPE_PERMANENT, eSleep, oSelf));
};

//Событие, которое "будит" овцу.
if (nEvent==EVENT_S_WAKEUP)
    {
    SetLocalInt(oSelf, "int_EVENT", EVENT_S_WAKEUP);
    //Снимаем эффект сна.
    effect eEffect=GetFirstEffect(oSelf);
    while (GetIsEffectValid(eEffect))
        {
        if (GetEffectType(eEffect)==EFFECT_TYPE_SLEEP)
            RemoveEffect(oSelf, eEffect);
        eEffect=GetNextEffect(oSelf);
        };
    ActionDoCommand(SignalEvent(oSelf, EventUserDefined(EVENT_S_WALK)));
    };

//Событие, которое заставляет овцу шляться по локации (типа пастись).
if (nEvent==EVENT_S_WALK)
    {
    SetLocalInt(oSelf, "int_EVENT", EVENT_S_WALK);
    ClearAllActions();
    location lWalkTo=RandomLocation(oPastuh, 20.0, FALSE);
    ActionMoveToLocation(lWalkTo, FALSE);
    ActionWait(3.0);
    ActionDoCommand(SignalEvent(oSelf, EventUserDefined(EVENT_S_WALK)));
    };


При таком раскладе команд событие EVENT_S_WALK после пробуждения не наступает ВООБЩЕ.
Т.е. строка "ActionDoCommand(SignalEvent(oSelf, EventUserDefined(EVENT_S_WALK)));" не срабатывает.
Пробовал менять код вот так:
NSS
//Событие, которое "будит" овцу.
if (nEvent==EVENT_S_WAKEUP)
    {
    SetLocalInt(oSelf, "int_EVENT", EVENT_S_WAKEUP);
    //Снимаем эффект сна.
    SignalEvent(oSelf, EventUserDefined(EVENT_S_WALK));
    effect eEffect=GetFirstEffect(oSelf);
    while (GetIsEffectValid(eEffect))
        {
        if (GetEffectType(eEffect)==EFFECT_TYPE_SLEEP)
            RemoveEffect(oSelf, eEffect);
        eEffect=GetNextEffect(oSelf);
        };
    };

При этом овца вскакивает после сна, пробегает до заданной location, а потом опять застывает и стоит.
Т.е. строка "ActionDoCommand(SignalEvent(oSelf, EventUserDefined(EVENT_S_WALK)));" опять-таки не срабатывает, но на этот раз в событии EVENT_S_WALK.
ClearAllActions() в разных местах не помогает.
Что делать?..

.......................................

Блин, понял сам, в чем дело. Все симптомы навели на то, что блокирован стек действий персонажа. А посему исправил код вот так:
NSS
if (nEvent==EVENT_S_WAKEUP)
    {
    SetLocalInt(oSelf, "int_EVENT", EVENT_S_WAKEUP);
    effect eEffect=GetFirstEffect(oSelf);
    while (GetIsEffectValid(eEffect))
        {
        if (GetEffectType(eEffect)==EFFECT_TYPE_SLEEP)
            RemoveEffect(oSelf, eEffect);
        eEffect=GetNextEffect(oSelf);
        };
    SetCommandable(TRUE, oSelf);//Разблокируем командный стек.
    ActionDoCommand(SignalEvent(oSelf, EventUserDefined(EVENT_S_WALK)));
    };

Все заработало. Ларчик просто открывался... Но как-то странно. Это что, глюк движка?..

Сообщение отредактировал Kavin - May 17 2006, 14:36
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
..::SERGO::..
сообщение May 23 2006, 12:29
Сообщение #2270


Level 3
*

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



Тут такая трабла. Перс при заходе в модуль ничего не одевает, но все вещи есть в инвентаре, и он может все носить!
NSS
void main()
{
object oMod = GetModule();
object oPC = GetEnteringObject();

if (!GetIsPC(oPC) || GetLocalInt(oMod, "START_GAME"))
       {return;}
       {
       SetLocalInt(oMod, "START_GAME", TRUE); //Only one use!
     TakeGoldFromCreature(GetGold(oPC),oPC,TRUE); //Get All Money
       object oItem = GetFirstItemInInventory(oPC); //Take off the hole inventory!
        while(GetIsObjectValid(oItem)) //If there is an object
        {
            DestroyObject(oItem);  //Destroy it
            oItem = GetNextItemInInventory(oPC); //Next object!
        }
        int i=0;//destory amunition
        while(i<14)
        {
        DestroyObject(GetItemInSlot(i, oPC));
        i++;
        }
          GiveGoldToCreature(oPC, 3000);  //GiveGold
         CreateItemOnObject("LO", oPC, 1);  //Objects
         CreateItemOnObject("DO", oPC, 1);
         CreateItemOnObject("HO", oPC, 1);
         CreateItemOnObject("MO", oPC, 1);
         CreateItemOnObject("AO", oPC, 72);
         object oItemCr = GetFirstItemInInventory(oPC);
         while(GetIsObjectValid(oItemCr))
             {
             SetIdentified(oItemCr,TRUE);
             oItemCr = GetNextItemInInventory(oPC);
             }
             AssignCommand(oPC, ActionEquipMostEffectiveArmor());//Put on everything
       }
}


LEX: перенес в соот. тему. Но вообще ты должен сам понимать, что скрипты больше пары строк это уже не по скриптам вопрос, а не для новичков.

По теме: одевая с задержкой и отчисть стек акций до этого. У тебя мб просто шмотки создаться не успевают. И оденется не все, а только армор.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
LokiJ_Tzn
сообщение May 23 2006, 12:58
Сообщение #2271


Level 1


Класс: Страж Тьмы
Характер: Chaotic Good
Раса: Полуэльф



Кто-нить знает, как можно сделать, чтобы труп, остающийся после смерти создания, реагировал на щелчок по нему мышью иначе, чем обычно? (не открывал лут, а исполнял какой-нить скрипт)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение May 23 2006, 13:27
Сообщение #2272


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

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



LokiJ_Tzn

Имхо, лучше сделать проще - после смерти NPC создавать невидимый плейс и уже ему вешать на onUsed нужный скрипт.


..::SERGO::..

Попробуй ввести задержку на создание предметов, например так:
NSS
// Перед началом оснв. фун-ции: (тобишь void main())
void ActionCreateItem(string sItemTemplate, object oTarget=OBJECT_SELF, int nStackSize=1)
{
    CreateItemOnObject(sItemTemplate, oTarget, nStackSize);
}

Работает аналогично CreateItemOnObject(""), но может ставиться в очередь действий или делей.

QUOTE
Перс при заходе в модуль ничего не одевает


Одевается только одежда, для оружия можно юзать, ActionEquipMostDamagingMelee и ActionEquipMostDamagingRanged.

Сообщение отредактировал Dik Morris - May 23 2006, 13:39
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
LokiJ_Tzn
сообщение May 24 2006, 11:35
Сообщение #2273


Level 1


Класс: Страж Тьмы
Характер: Chaotic Good
Раса: Полуэльф



QUOTE(Dik Morris @ May 23 2006, 16:27) [snapback]82548[/snapback]

LokiJ_Tzn

Имхо, лучше сделать проще - после смерти NPC создавать невидимый плейс и уже ему вешать на onUsed нужный скрипт.



Спасибо, я уже разобрался (IMG:style_emoticons/kolobok_light/smile.gif) посидел ночью и модифицировал x0_i0_corpse, чтоб он создавал кастомный плейс невидимого объекта вместо лутабельного трупа.
Это для скиннинга (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DarkDeivel
сообщение May 24 2006, 14:44
Сообщение #2274


Level 3
*

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



В игре максимум 20 лвл. Как сделать чтобы был максимальный 100. Если скрипт скажите плиз. (IMG:style_emoticons/kolobok_light/declare.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
kreon
сообщение May 24 2006, 14:49
Сообщение #2275


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

Класс: Некромант
Характер: Chaotic Evil
Раса: Дракон
NWN: Скриптинг [PW]



2DarkDeivel: это тебе это читать надо (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение May 24 2006, 15:22
Сообщение #2276


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

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



QUOTE(DarkDeivel @ May 24 2006, 15:44) [snapback]82630[/snapback]
В игре максимум 20 лвл. Как сделать чтобы был максимальный 100. Если скрипт скажите плиз.

начнем с того, что "в игре" уже давно(начиная с hotu) левел-кап для игроков - 40. это зашито в движок. чтобы сделать больше 40 нужно делать довольно нетривиальную систему, суть которой - куча скриптов + custom 2da + nwnx + leto.
забудь вобщем. во всяком случае до тех пор, пока не повысишь свой скилл в нвн-строительстве на несколько порядков. (IMG:style_emoticons/kolobok_light/pardon.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
..::SERGO::..
сообщение May 28 2006, 08:05
Сообщение #2277


Level 3
*

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



Ну все, блин, здаюсь. Все перепробывал(наверно не все, раз пишу сюда). Мне надо, чтобы можно было заговорить с дверью, чтобы одна ветка появлялась вслучае определенного предмета в инвенатре, чтобы после отдачи этого предмета двери, дверь уничтажалась. ух, все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение May 28 2006, 08:24
Сообщение #2278


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

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



В диалоге делай проверку, на определенный предмет. (Используя скрипт визард)
Разрушай дверь либо дестроем, либо нужным эффектом.

NSS
// Text Appears When
int StartingConditional()
{
   if (GetItemPossessor(GetObjectByTag("таг_айтема")) == GetPCSpeaker())
     {return TRUE;}

    return FALSE;
}

NSS
// ActionTakens
void main(){DestroyObject(OBJECT_SELF);}


Сообщение отредактировал Dik Morris - May 28 2006, 09:00
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
..::SERGO::..
сообщение May 28 2006, 08:33
Сообщение #2279


Level 3
*

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



как не странно, но визардский скрипт мне немного другое дал, поэтому я припер сюды
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение May 28 2006, 09:06
Сообщение #2280


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

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



Этот скрипт не имеет особых различий с визардским, там используется фун-ция HasItem, которая схожа с GetItemPossessor.

PS: просто в HasItem, есть проверка на валидность объекта. (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Noah
сообщение May 28 2006, 23:13
Сообщение #2281


Level 5
**

Класс: Убийца
Характер: Chaotic Neutral
Раса: Полуэльф



Lex спасибо за помощь!Советую всем строителям добавить в локи триги с бонусами и т.П.Разнобразие боя!Теперь по делу,проблема слeдующая:в катсцене я сажу npc на стул(ActionSit),далее npc с него не встает,(а он должен идти на wp1) даже если стул убить!Катсцена становится вечной.Как сделать чтоб npc встал и пошел.

Сообщение отредактировал Noah - May 28 2006, 23:19
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
kreon
сообщение May 29 2006, 01:00
Сообщение #2282


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

Класс: Некромант
Характер: Chaotic Evil
Раса: Дракон
NWN: Скриптинг [PW]



NSS
SetCutsceneMode(oPC, TRUE);
DelayCommand(1.0f, AssignCommand(oNPC, ClearAllActions(TRUE)));
DelayCommand(1.1f AssignCommand(oNPC, ActionMoveToObject(GetObjectByTag("wp1"))));
DelayCommand(3.0f, SetCutsceneMode(oPC, FALSE));

1 строка - катсцена
2 - очистить стек (встанет со стула)
3 - пойдет к обьекту с тегом wp1
4 - конец катсцены
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение May 29 2006, 01:44
Сообщение #2283


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

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



..::SERGO::.., не пользуйся визардовскими скриптами, как правило, они пишут не совсем то, что хотелось бы, и часто в них больше мусора, чем нужного кода. Стоит учиться самому писать скрипты.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 29 2006, 08:07
Сообщение #2284


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Noah, тебе неплохо было бы прочесть мои статьи по авроре, я там разбирал такой аспект, как акция и просто действие. Возможно твой НПС выполняет не акцию сидения, а воспроизводит анимацию но не как акцию. И он может седеть так оооочень долго.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Noah
сообщение May 29 2006, 21:41
Сообщение #2285


Level 5
**

Класс: Убийца
Характер: Chaotic Neutral
Раса: Полуэльф



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

147 страниц V  « < 90 91 92 93 94 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 29th April 2025 - 00:27