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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 57 58 59 60 61 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Exectrix
сообщение Aug 13 2005, 07:32
Сообщение #1441


Level 2
*

Класс: Тайный Лучник
Характер: Chaotic Evil
Раса: Полуэльф



Мм... Хорошо. А как на счёт фишек с классами (у монаха глаза горят на 20 уровне, у дракона - крылья и хвост отростают, у кого-то от руки только кости остаются...)? Можно своих фишек добавить?

Айван: еще будешь постить вопросы не по теме, влеплю пред.

Сообщение отредактировал Aiwan - Aug 13 2005, 17:26
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DEM
сообщение Aug 13 2005, 12:41
Сообщение #1442


Level 7
**

Класс: Маг
Характер: Lawful Neutral
Раса: Эльф



Займис 3d моделированием :yes)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Exectrix
сообщение Aug 13 2005, 13:32
Сообщение #1443


Level 2
*

Класс: Тайный Лучник
Характер: Chaotic Evil
Раса: Полуэльф



Забавно... Ну а как вообще это работает? Всмысле, где пишется условие и команда, ака "Дать эффект - крылья, хвост"?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение Aug 13 2005, 13:42
Сообщение #1444


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

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



Exectrix, тебе в другой раздел - 3D MAX, Maya и др.... там сначала читай, что да как, а потом задавай вопросы. к скриптам твои вопросы уже не относятся.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DEM
сообщение Aug 13 2005, 14:06
Сообщение #1445


Level 7
**

Класс: Маг
Характер: Lawful Neutral
Раса: Эльф



Exectrix - крылья и хвост? Зайди в внешний вид и там будет в самом низу...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Exectrix
сообщение Aug 17 2005, 01:43
Сообщение #1446


Level 2
*

Класс: Тайный Лучник
Характер: Chaotic Evil
Раса: Полуэльф



"Дать эффект - крылья, хвост" Меня явно не поняли :DB:
Может покажется грубым, НО, объясняю на пальцах: после определённого диалога у героя отростают крылья, скажем демонические... Скрипт к диалогу пожалуйста!!!

Всё, пойду приму валерьянки... нервы, нервы...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение Aug 17 2005, 02:18
Сообщение #1447


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

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



Exectrix, это ты явно не понял. >:/ вместе с валерьянкой, нервами и пяльцами своими иди на рынок "почем семешки" узнавать. :drag:

ps. и все же отвечу: нет такой команды/эффекта/заклинания/скрипта - менять части модели штатными средствами во время игры нельзя. точка.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DEM
сообщение Aug 17 2005, 10:10
Сообщение #1448


Level 7
**

Класс: Маг
Характер: Lawful Neutral
Раса: Эльф



Exectrix,мне кажеться что я тебя понял... тЫ попробуй мспользовать скрипт на изменение внешнего вида, но как нить измени его и т.д. Что бы он не изменял модель героя, а что бы добавлл крылья...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valleo
сообщение Aug 17 2005, 19:31
Сообщение #1449


Level 4
**

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



Почему же нельзя... Можно через LetoScript в НВНе, но в любом случае требуется перезаход - так что вотю...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Aug 19 2005, 14:18
Сообщение #1450


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

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



Будьте добры, разъясните, что делает этот скрипт:
Neverwinter Script Source
void BlindPC(object oPC)
{
  effect eBlind =  EffectBlindness();
  ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBlind, oPC, 7.0);
}

void RemoveBlindPC(object oPC)
{
    effect eBad = GetFirstEffect(oPC);
        while(GetIsEffectValid(eBad)) {
        int nEtype=GetEffectType(eBad);
        if (nEtype == EFFECT_TYPE_BLINDNESS) {
            RemoveEffect(oPC, eBad);
        }
        eBad = GetNextEffect(oPC);
    }
}


void main()
{
  object oPC = GetEnteringObject();
  if(GetIsPC(oPC) == TRUE)
  {
    object oWP = GetNearestObjectByTag("wp_bed_in", oPC);
    if(oWP == OBJECT_INVALID)
      AssignCommand(oPC, SpeakString("No wp_bed_in tag nearby."));
    AssignCommand(oPC, ClearAllActions());
    AssignCommand(oPC, JumpToObject(oWP));
    DelayCommand(1.0, AssignCommand(oPC, PlayAnimation(ANIMATION_LOOPING_DEAD_FRONT, 1.0, 99999.0)));
    DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_IMP_SLEEP), oPC, 10.0));
    DelayCommand(6.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_IMP_SLEEP), oPC, 10.0));
    DelayCommand(2.0, SetCommandable(FALSE, oPC));
    //DelayCommand(3.0, BlindPC(oPC));
    //DelayCommand(10.0, RemoveBlindPC(oPC));
    DelayCommand(10.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(GetMaxHitPoints(oPC)), oPC));
    DelayCommand(10.0, AssignCommand(oPC, SpeakString("You are healed, though you must rest to regain spells.")));
    DelayCommand(9.8, SetCommandable(TRUE, oPC));
  }
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Aug 19 2005, 14:42
Сообщение #1451


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [Sn]



Neverwinter Script Source
void
void BlindPC(object oPC)
{
  effect eBlind =  EffectBlindness();
  ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBlind, oPC, 7.0);
}

Эффект слепоты на 7 секунд
Neverwinter Script Source
void RemoveBlindPC(object oPC)
{
    effect eBad = GetFirstEffect(oPC);
        while(GetIsEffectValid(eBad)) {
        int nEtype=GetEffectType(eBad);
        if (nEtype == EFFECT_TYPE_BLINDNESS) {
            RemoveEffect(oPC, eBad);
        }
        eBad = GetNextEffect(oPC);
    }
}

Удаление слепоты

Neverwinter Script Source
void main()
{
  object oPC = GetEnteringObject();
  if(GetIsPC(oPC) == TRUE)
  {
    object oWP = GetNearestObjectByTag("wp_bed_in", oPC);
    if(oWP == OBJECT_INVALID)
      AssignCommand(oPC, SpeakString("No wp_bed_in tag nearby."));
    AssignCommand(oPC, ClearAllActions()); // чистим актионы
    AssignCommand(oPC, JumpToObject(oWP)); // прыжок к вейпу
    DelayCommand(1.0, AssignCommand(oPC,  PlayAnimation(ANIMATION_LOOPING_DEAD_FRONT, 1.0, 99999.0))); // проигрывание анимации
    DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_IMP_SLEEP), oPC, 10.0)); // наложение эффекта
    DelayCommand(6.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_IMP_SLEEP), oPC, 10.0)); // наложение эффекта
    DelayCommand(2.0, SetCommandable(FALSE, oPC)); // блокируем стек
    //DelayCommand(3.0, BlindPC(oPC)); // наложение еффекта
    //DelayCommand(10.0, RemoveBlindPC(oPC)); // снятие
    DelayCommand(10.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(GetMaxHitPoints(oPC)), oPC)); // восстановление хитов
    DelayCommand(10.0, AssignCommand(oPC, SpeakString("You are healed, though you must rest to regain spells.")));
    DelayCommand(9.8, SetCommandable(TRUE, oPC)); // разблокируем стек
  }
}

Если ПС открывает объект, то его должно джампнуть к ближайшему объекту с тегом "wp_bed_in", если такого нет, то пишется "No wp_bed_in tag nearby".
Если находится, то происходит джамп к вейпу, затем ПС проигрывает анимацию и на него два раза накладывается эффект сна. Далее блокируется стек(ПС больше нас не слушается). Можно раскоментировать две строчки и тогда будет наложение эффекта слепоты,а через 7 секунд его снятие. Потом восстанавливаем хиты и говорим "You are healed, though you must rest to regain spells." Затем снова можем управлять героем.
Это, что скрипт на сон? Такое ощущение, что он был вырван от куда-то.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Aug 19 2005, 14:57
Сообщение #1452


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

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



QUOTE (-fenix- @ Aug 19 2005, 15:42)
Если ПС открывает объект,

если игрок входит в локу, наступает на триггер и тд. (скрип стоит на слоте onEnter)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Aug 19 2005, 15:17
Сообщение #1453


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

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



Спасибо :good:
QUOTE (-fenix- @ Aug 19 2005, 14:42)
Это, что скрипт на сон? Такое ощущение, что он был вырван от куда-то.

Естественно. Так бы я не просил о разъяснении :)

Этот скрипт - из модуля-демонстрашки кроватей, на которых можно лежать (модифицированный вокмеш). Собственные кровати мной уже сделаны - осталась сама скриптовая реализация. На самом деле лежабельность кровати - фича для НПС, которые ложились бы спать на ночь :pilot: Но, помимо этого, хочется придать такую возможность и персу. Как я слышал, rest возможен ТОЛЬКО при анимации sit. Правду говорят?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Aug 19 2005, 15:55
Сообщение #1454


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

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



QUOTE (Vhall @ Aug 19 2005, 16:17)
ТОЛЬКО при анимации sit. Правду говорят?

нет, не правду говорят.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Exectrix
сообщение Aug 20 2005, 17:50
Сообщение #1455


Level 2
*

Класс: Тайный Лучник
Характер: Chaotic Evil
Раса: Полуэльф



Товарищи знатоки. Внимание на экран, вопрос:

Я поставил диалог NPC, члену команды. В стиле "вызывай подкрепление", на что NPC должен вызвать звера, надцатого уровня. А если в тот же день попросить вызвать ещё, NPC посылает меня подальше... думаю в скрипте вызова надо поставить Лок.переменную которая будет обнуляться после определённого времени. Если переменная =1, то меня посылают, если 0, то помогают. Но это догадка, а как это будет выглядеть?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Aug 20 2005, 18:35
Сообщение #1456


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

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



читай ВиО. Там есть пример, как с локалками работать в случае диалога. У тебя именно такой случай. Только снимать локалку я думаю надо по отдыху.

ВиО = Вопросы и Ответы.. тема чуть ниже.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2_advanced
сообщение Aug 21 2005, 20:37
Сообщение #1457


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

Класс: Вор
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]



всем привет.
задача - узнать какой тип дамага нанесен двери - например холодом
вот назрел вопрос :bad: как?! :unsure:
в OnDmg: GetDamageDealtByType() возвращает -1 всегда :|
GetMaxHitPoints()-GetCurrentHitPoints() - дает только то, что дверь повреждена :|

остается перебор SpellId() в onSpellCast и проверка оружия, которым бьют О.о помогите нубику
в поиске ни чего не нашел

Сообщение отредактировал 2_advanced - Aug 21 2005, 20:38
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Aug 22 2005, 00:49
Сообщение #1458


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

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



GetDamageDealtByType(int)
Determines the amount of damage of a specific type dealt to an object.
Neverwinter Script Source
int GetDamageDealtByType(int nDamageType);


Description
Returns the amount of damage of type nDamageType that has been dealt to the caller. When called from the OnDamaged event, this function returns only the damage which was caused during that event.

nDamageType can be assigned to OR-ed values from the constant group DAMAGE_TYPE_*.

For example, GetDamageDealtByType(DAMAGE_TYPE_PIERCING | DAMAGE_TYPE_SLASHING) would return the damage dealt by piercing and slashing attacks.

The base weapon damage is the base damage delivered by the weapon before any additional types of damage (e.g. fire) have been added. Use DAMAGE_TYPE_BASE_WEAPON, in the 1.64 patch, to get this. Previously, you couldn't get this amount of damage.




Remarks
This only works with EffectDamage, as detailed below.

It must be noted that this function returns -1 if no damage of that type occured.

Because of this, do not use this line, it will never work;

if(!GetDamageDealtByType(DAMAGE_TYPE_PIERCING))

And this line will always be true, as it mearly does the opposite of the above:

if(GetDamageDealtByType(DAMAGE_TYPE_PIERCING))

This would be the correct way:

if(GetDamageDealtByType(DAMAGE_TYPE_PIERCING) != -1)

Or even better, look at the example for a valid way of using this function to see if we were damaged of a cirtain type of damage.



Known Bugs
EffectDamage() now isn't the only thing that affects this function. It can return DAMAGE_TYPE_BASE_WEAPON for any phisical weapon damage done *before* additional enery (fire etc.) damage done by that same weapon.

The issue with DAMAGE_TYPE_SONIC is fixed in 1.64.



Version
1.64
Neverwinter Script Source
Example
// If we had any fire damage applied to us, we will say some catchline.
void main()
{
    if(GetDamageDealtByType(DAMAGE_TYPE_FIRE) >= 1)
    {
        // Obviously a high-strung-evangilist voiceset helps.
        SpeakString("Hey, baby, I'm on FIIIREEEEE!");
    }
}



© LEXicon
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DraX
сообщение Aug 22 2005, 17:39
Сообщение #1459


Level 3
*

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



Извините, коль вопрос уже был задан, нету времени смотреть 32 страницы :crazy:
Кто может объяснить, куда вставлять CustomTalk'ины. Слышал, что они делают много полезных вещей. Объясните, плз.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
dumbo
сообщение Aug 22 2005, 19:38
Сообщение #1460


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

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



QUOTE (DraX @ Aug 22 2005, 18:39)
Кто может объяснить, куда вставлять CustomTalk'ины

в диалоги и имена плэйсов. вставлять в виде "<CUSTOMnnnn>"(без кавычек), где nnnn - номер этого тукена. ставится из скриптов путем вызова SetCustomToken(nnnn, "строка"). читайте Lexicon, даже без знания английского там можно интуитивно догадаться, что к чему.
Добавлено в [mergetime]1124728780[/mergetime]
да, номера тукенов от 0 до 9 используются игрой, посему не стоит использовать эти номера.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
2_advanced
сообщение Aug 23 2005, 04:41
Сообщение #1461


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

Класс: Вор
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]



QUOTE
GetDamageDealtByType(int)

издеваетесь? :)
говорю ведь, что вешал на дверь (не кричей насиловать) - всегда возвращает -1 :vava:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DraX
сообщение Aug 23 2005, 11:01
Сообщение #1462


Level 3
*

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



2_advanced
QUOTE
Returns the amount of damage of type nDamageType that has been dealt to the caller.

Тут же все подробно описано. :xz: Lex взял описание напрямую из Лексикона.
Если не понятно, объясню. Эта функция должна выводить кол-во урона, нанесенного определенным типом повреждения. Т.е. если ты хочешь получить тип повреждения, тебе надо включить смекалку. Этой функцией ты просто узнаешь кол-во урона, нанесенного одним типом. Тебе нужен скрипт, типа:
Neverwinter Script Source
int XP_GetDamageType()
{
  int TYPE;

  if(GetDamageDealtByType(DAMAGE_TYPE_ACID) >= 1)
      TYPE = 1;

  else if(GetDamageDealtByType(DAMAGE_TYPE_COLD) >= 1)
      TYPE = 2;

  else if(GetDamageDealtByType(DAMAGE_TYPE_FIRE) >= 1)
      TYPE = 3;

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

  return TYPE;
}


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

ЗЫ: А -1 она у тебя выводит, потому что не был причинен урон описанного тобой типа (если ты его вообще описывал :) )
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Aug 23 2005, 11:14
Сообщение #1463


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE (DraX @ Aug 23 2005, 11:01)
Этой функцией ты просто узнаешь кол-во урона, нанесенного одним типом.

В том-то и дело, что не узнаешь!

Вот что нашел.
OnDamaged
Creature, door, or placeable object has lost hit points, apart from instant death.

GetDamageDealtByType will only return damage amounts for EffectDamage, and so no phisical attack damage will be picked up.

Для НПС все получается, а вот для дверей и объектов и правдо -1 выдает

НА OnDamaged НПС это катит, а на OnDamaged скажем Армоире нет.
Neverwinter Script Source
void main()
{
    if(GetDamageDealtByType(DAMAGE_TYPE_FIRE) >= 5)
    {
        // Obviously a high-strung-evangilist voiceset helps.
        SpeakString("Hey, baby, I'm on FIIIREEEEE!");
    }
}


Сообщение отредактировал -fenix- - Aug 23 2005, 11:18
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DraX
сообщение Aug 25 2005, 16:46
Сообщение #1464


Level 3
*

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



Извиняюсь, если вопрос уже был задан. Очень Инет тормозит.
Вопрос, вобщем, не совсем мой. Но мне тоже будет интересно узнать. 1. Каким образом можно повысить уровень хэнча (с помощью скриптов, конечно :) ) и 2. как сделать так, чтобы при повышении уровня хозяина, повышался уровень хэнча. Лично я использовал для этой цели 3 различных скрипта, которые просто обязаны были сработать. Но не сработали. Помогите, кто знает.

DikMorris ©
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Aug 25 2005, 16:54
Сообщение #1465


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

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



1
Neverwinter Script Source
// If successfull it returns the level the creature now is, or 0 if it fails.
// If you want to give them a different level (ie: Give a Fighter a level of Wizard)
//    you can specify that in the nClass.
// However, if you specify a class to which the creature no package specified,
//  they will use the default package for that class for their levelup choices.
//  (ie: no Barbarian Savage/Wizard Divination combinations)
// If you turn on bReadyAllSpells, all memorized spells will be ready to cast without resting.
// if nPackage is PACKAGE_INVALID then it will use the starting package assigned to that class or just the class package
int LevelUpHenchman(object oCreature, int nClass = CLASS_TYPE_INVALID, int bReadyAllSpells = FALSE, int nPackage = PACKAGE_INVALID)

(с) Lexicon
юзай это на игрока и будет тебе счастье.

2
на скрипт onPCLevelUp в свойствах модуля используй функцию, что написана выше на хенче.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 57 58 59 60 61 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 4th May 2025 - 04:47