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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 42 43 44 45 46 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Buldog
сообщение Apr 28 2005, 19:03
Сообщение #1061


Level 5
**

Класс: Мастер Оружия
Характер: Chaotic Neutral
Раса: Полуорк



По поводу камня с возвратом. Создаешь нужный тебе предмет и даешь ему какой то тэг, при этом в предмет добавь свойство в русской версии "Только своя уникальная сила", прозьба не смеяться, по английски я понимаю плохо, поэтому использую руссифицированный тулсет, как это свойство по английски звучит я не в курсе.

В модуле в OnActivateItem помещаешь скрипт:
Neverwinter Script Source
void main()
{
    object oUser = GetItemActivator();
    object oStone = GetItemActivated();
    object oTarget = GetObjectByTag("ST_" + GetTag(oStone));

    SetLocalLocation(oUser, "ReturnLocation", GetLocation(oUser));

    AssignCommand(oUser, ClearAllActions());
    DelayCommand(1.0f, AssignCommand(oUser, ActionJumpToLocation(GetLocation(oTarget))));
}

Далее в нужном месте создаешь вэйпоинт с тэгом ST_+тэг предмета и поблизости портал. В OnUsed портала вставляешь скрипт:
Neverwinter Script Source
void main()
{
    object oUser = GetLastUsedBy();

    AssignCommand(oUser, ClearAllActions());
    DelayCommand(1.0f, AssignCommand(oUser, ActionJumpToLocation(GetLocalLocation(oUser, "ReturnLocation"))));
}

Сам не проверял, но должно работать :)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Apr 28 2005, 19:33
Сообщение #1062


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

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



Buldog спасибо, попробую.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
RiPPeR
сообщение Apr 28 2005, 19:37
Сообщение #1063


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

Класс: Страж Тьмы
Характер: Chaotic Neutral
Раса: Дракон
NWN: Скриптинг [PW]



QUOTE

Neverwinter Script Source
void main()
{
    object oUser = GetItemActivator();
    object oStone = GetItemActivated();
    object oTarget = GetObjectByTag("ST_" + GetTag(oStone));

    SetLocalLocation(oUser, "ReturnLocation", GetLocation(oUser));

    AssignCommand(oUser, ClearAllActions());
    DelayCommand(1.0f, AssignCommand(oUser, ActionJumpToLocation(GetLocation(oTarget))));
}

Дык так будет для любой активации уник повера предмета одинаковое дейтсвие, проверку тага actived предмета нужно сделать, а лучше res-ref'а.
Добавлено в [mergetime]1114706618[/mergetime]
Neverwinter Script Source
void main()
{
object oPC = GetItemActivator();
object oItem = GetItemActivated();
   
string sResRef = GetResRef(oItem);
string sStoneResRef = "stone"; //Сюда рес-реф камня поставишь

if (sResRef == sStoneResRef)
  {
  object oTarget = GetWaypointByTag("WP_" + sStoneResRef);

  SetLocalLocation(oPC, "ReturnLocation", GetLocation(oPC));

  AssignCommand(oPC, ClearAllActions());
  DelayCommand(1.0f, AssignCommand(oPC, ActionJumpToLocation(GetLocation(oTarget))));
  }
}


При активации камня (или любого другого предмета) с заданным рес-рефом, телепортирует его к вэйпоинту с тагом: WP_+рес-реф камня. В скрипте между " " своё название подставь и все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Apr 28 2005, 20:34
Сообщение #1064


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

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



Buldog все работает спасибо!

RiPPeR - поправлю как сказал, тоже спасибо!

А про оруженосца кто знает?????????
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zik
сообщение Apr 28 2005, 20:40
Сообщение #1065


Level 4
**

Класс: Оборотень
Характер: Neutral Evil
Раса: Тварь



Здравствуйте.

Подскажите пожалуйста, можно ли отключить (запретить использовать) кнопку save character, которая экспортирует персонажа в localvault и как это сделать?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Apr 28 2005, 21:19
Сообщение #1066


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

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



У меня вообще оруженосец есть. Я его сделал из Томи, путем пластической операции и промывки разговора. Только он сует мне свой контракт (тег - NW_HEN_GALPERS, ResRes - hen_galpers002). В его скриптах ни тега, ни ResRefа не нашел. И еще инвентарь у него от Томи остался.



Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Алексашка
сообщение Apr 29 2005, 19:43
Сообщение #1067


Level 3
*

Класс: Клерик
Характер: True Neutral
Раса: Человек



QUOTE (-fenix- @ Apr 28 2005, 21:19)
У меня вообще оруженосец есть. Я его сделал из Томи, путем пластической операции и промывки разговора. Только он сует мне свой контракт (тег - NW_HEN_GALPERS, ResRes - hen_galpers002). В его скриптах ни тега, ни ResRefа не нашел. И еще инвентарь у него от Томи остался.

Ты имеешь ввиду невозможность зайти в его инвентарь? Могу тебя порадовать, еще одним сюрпризом в будущем. Когда ты будешь повышать уровень своему"Томи" можешь ненароком остаться вообще без оруженосца :D . Выкинь этого персонажа и сделай нового. Просто содаешь нового перса, с теми параметрами которые тебе нужны, затем заходишь в скрипты и меняешь все, стоящие там по умолчанию, на скрипты оруженосца из первого или вторго аддона. Смотря какой у тебя стоит. Создаешь ему диалог со скриптом присоединения и оруженосец готов. Скрипты по памяти не напишу, а тулсета рядом нет.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Алексашка
сообщение Apr 29 2005, 19:45
Сообщение #1068


Level 3
*

Класс: Клерик
Характер: True Neutral
Раса: Человек



QUOTE (-fenix- @ Apr 28 2005, 21:19)
Только он сует мне свой контракт (тег - NW_HEN_GALPERS, ResRes - hen_galpers002). В его скриптах ни тега, ни ResRefа не нашел.

Контракт прописан в диалоге в строке присоединения. :D
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Apr 29 2005, 22:34
Сообщение #1069


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

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



QUOTE (Zik @ Apr 28 2005, 23:40)
Подскажите пожалуйста, можно ли отключить (запретить использовать) кнопку save character, которая экспортирует персонажа в localvault и как это сделать?

Боюсь что никак. Если только вообще запретить панель сэйва.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Apr 30 2005, 16:58
Сообщение #1070


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

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



Самого оруженосца уже сам сделал. А вот за контракт ОГРОМНОЕ СПАСИБО!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Scaled
сообщение May 3 2005, 23:09
Сообщение #1071


Level 3
*

Класс: Волшебник
Характер: True Neutral
Раса: Человек



Привет всем, у меня вот такой вопрос : я вот компонентную магию делаю, заклы переписать не проблема. Вот в чем проблема, так это в том что я не знаю как она устанавливаеться, т. е. как заставить работать переписаные заклы?
Я не прошу скриптов, только алгоритм куда что вставлять :D
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 4 2005, 10:59
Сообщение #1072


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

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



Эм..там в spells.2da написано, какой скрипт какой закл обрабатывает по моему. Те если тебе надо закл поменять, то тебе эти скрипты и надо ковырять..или я что-то не догоняю?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Buldog
сообщение May 4 2005, 12:38
Сообщение #1073


Level 5
**

Класс: Мастер Оружия
Характер: Chaotic Neutral
Раса: Полуорк



Все спелы обрабатыватся соответствующими скриптами, причем, что бы узнать какой скрипт какой спелл обрабатывает вовсе не обязательно лезть в spells.2da, у большинства скриптов имя совпадает с названием спела. А что бы посмотреть скрипты, просто при открытии скрипта поставь пометку, что бы показывались не только скрипты модуля, но и дефолтные скрпты НВНа.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Scaled
сообщение May 5 2005, 13:08
Сообщение #1074


Level 3
*

Класс: Волшебник
Характер: True Neutral
Раса: Человек



Не это все понятно, я про то как заставить переписаные спеллы работать.Пример, вот я переписал скрипт с молнией , добавил, скажем, компонент. Куда его надо поставить, или в каком скрипте ссылку на него сделать?
:crazy: Замучился, порожаюсь как люди разбираються....
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Лито
сообщение May 5 2005, 14:04
Сообщение #1075


Level 9
***

Класс: Страж Тьмы
Характер: Chaotic Evil
Раса: Нежить



У самого были вопросы с компоненткой. В ту пору мне dumbo все разжевал :D
Сейчас попробую я.
Делается все дело с помощью биотваревской системы spell-hook
Ставь на модуль переменную типа string, с именем X2_S_UD_SPELLSCRIPT. стоимость пременной = названию скрипта, в котором ты будешь дополнять спеллы.
Как поставить переменную?
Св-ва модуля -> Улучшенный(Advanced) -> переменные.
Вот пример компонентного закла.
скрипт называется m_my_spell.
Neverwinter Script Source
void main()
{
object oPC = OBJECT_SELF;
object oTarget = GetSpellTargetObject();  //в кого пуляем?
object oItem = GetSpellCastItem();  //а если кастуем с предмета?
int nSpell = GetSpellId();  //переменная, которая определяет какой именно спелл кастуется
switch (nSpell)

       {

         case SPELL_FIREBALL:  //на какие собственно спеллы компонент? В данном случае на фаэрболлы и фаэрбрэнды
         case SPELL_FIREBRAND:
         case SPELL_DELAYED_BLAST_FIREBALL:
         if (GetIsObjectValid(oItem))  //если указанные выше спеллы кастуются с предмета(амулет, свиток и т.д.). Останавливаем скрипт.
           {
           break;
           }

           if ((HasItem(oPC,"sera") == FALSE) && (GetIsDM(oPC) == FALSE))  //если у кастующего нет компонента с тэгом sera - остановить спелл.Если кастер - ДМ, забиваем на проверку
          {                                                                                            
           SetModuleOverrideSpellScriptFinished();
           SendMessageToPC(OBJECT_SELF, "У вас нет необходимых компонентов!!");
           }
      else
    {
    DestroyObject(GetItemPossessedBy(oPC,"sera")); //забираем серу
    }
    break;

скрипт называется m_my_spell.
Значит переменная на модуле будет выглядеть так:
имя: X2_S_UD_SPELLSCRIPT тип: string стоимость: m_my_spell

Сообщение отредактировал Лито - May 5 2005, 14:08
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Scaled
сообщение May 5 2005, 23:16
Сообщение #1076


Level 3
*

Класс: Волшебник
Характер: True Neutral
Раса: Человек



Я попробую в выходные(на неделе занят :vava: ). Спасибо :D
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Мефистофель
сообщение May 6 2005, 01:13
Сообщение #1077


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

Класс: Страж Тьмы
Характер: Lawful Good
Раса: Баатезу



Помогите пожалуйста с этим скриптом он не работает.
Neverwinter Script Source
void main()
{
object oPC = GetPCItemLastEquippedBy();
object oItem = GetPCItemLastEquipped();
if (GetTag(oItem) == "mg_it_ringghost")
  {
  effect E = EffectCutsceneGhost();
  E = EffectLinkEffects(EffectEthereal(),E);
  ApplyEffectToObject(DURATION_TYPE_PERMANENT,E,oPC);
  }
}


на onPlayerUnEquipItem()

Neverwinter Script Source
void FindAndRemoveGhostEffect(object O)
{
effect e = GetFirstEffect(O);
while (GetIsEffectValid(e))
  {
  if (GetEffectType(e) == EFFECT_TYPE_CUTSCENEGHOST)
      RemoveEffect(O,e);
  if (GetEffectType(e) == EFFECT_TYPE_ETHEREAL)
      RemoveEffect(O,e);
  e = GetNextEffect(O);
  }
void main()
{
object oPC = GetPCItemLastUnequippedBy();
object oItem = GetPCItemLastUnequipped();
// кольцо духа
if (GetTag(oItem) == "mg_it_ringghost")
  {
  FindAndRemoveGhostEffect(oPC);
  }


и возможно ли его использовать в СоУ, если да то на какие слоты, ставить.
Добавлено в [mergetime]1115331269[/mergetime]
Ой Забыл, скрипт Lex(а).
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
mamuc
сообщение May 6 2005, 08:49
Сообщение #1078


Лорд AxisTown'a
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Дварф
NWN: Маппинг



QUOTE
Ой Забыл, скрипт Lex(а).

то Мефистофель - это скрипт Мидгарда (если не ошибаюсь написаный каа) :D
к нему нужно кольцо духа (тэг предмета("mg_it_ringghost") )- кустомный итем ( кстати создано это было отнюдь не для применения широкими масами простых игроков, а для весьма специальных целей), так что не рекомендую применять это как общепользовательский итем для всех играющих на шарде, ибо он дает слишком уж большую плюшку

Сообщение отредактировал mamuc - May 6 2005, 12:11
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Scaled
сообщение May 6 2005, 23:20
Сообщение #1079


Level 3
*

Класс: Волшебник
Характер: True Neutral
Раса: Человек



Лито, огромное спасибо! Попробовал с переписаным заклом фаерболла - просто сказка :lol:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Мефистофель
сообщение May 7 2005, 00:25
Сообщение #1080


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

Класс: Страж Тьмы
Характер: Lawful Good
Раса: Баатезу



Исходя, из вами сказанного я не понял одного, зачем тогда этот скрипт был выставлен, в соответствующей теме?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
TwilightCount
сообщение May 7 2005, 00:51
Сообщение #1081


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

Класс: Страшный Пират
Характер: Chaotic Evil
Раса: Животное
NWN: DM



Мефистофель, зачем тебе этот скрипт?
Этот скрипт позволяет при надетом кольце игроку проходить через других игроков
Если хочешь использовать, создай кольцо с тэгом mg_it_ringghost.

Можно ли использовать в СОУ, зависит по-мойму от патча. И вообще юзай сразу СОУ+ХТОУ.

Сообщение отредактировал TwilightCount - May 7 2005, 00:52
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Мефистофель
сообщение May 7 2005, 01:42
Сообщение #1082


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

Класс: Страж Тьмы
Характер: Lawful Good
Раса: Баатезу



TwilightCount, блин я сюзал бы да вот незнаю от куда. Мне скрипт очень нужен я делаю Lord of Ring.
В СОУ не тех слотов куда скрипы эти ставить надо, да и Компилятор ошибку выдаёт во втором скрипте, вот и спросил чё исправить надо.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Scaled
сообщение May 9 2005, 12:51
Сообщение #1083


Level 3
*

Класс: Волшебник
Характер: True Neutral
Раса: Человек



У меня вопрос :
Я вот в переписаном спелле блесс хочу сделать проверку на класс и взависимости от него на предмет фокуса в левой руке.
Вот значит получаеться все слишком не эстетично, по обьему :bad:
Можно ли как то, скажем, в скрипте закла, при проверке отправить на другой скрипт, на котором стоит проверка, и полученый результат использовать в скрипте закла ?
Или короче :yes: я хочу сделать проверку класса и взависимости от него - предмета в слоте
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Buldog
сообщение May 9 2005, 14:06
Сообщение #1084


Level 5
**

Класс: Мастер Оружия
Характер: Chaotic Neutral
Раса: Полуорк



Выше Лито писал про компонентную магию, тебе тот же скрипт подойдет, только вместо компонентов проверяешь то, что тебе нужно.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Лито
сообщение May 9 2005, 20:16
Сообщение #1085


Level 9
***

Класс: Страж Тьмы
Характер: Chaotic Evil
Раса: Нежить



Scaled, просто добавь в скрипте spell-hook(ну это в котором ты добавлял компоненты на фаэрболл ;)), case блесс.

Все это будет выглядеть примерно так:
Neverwinter Script Source
void main()
{
object oPC = OBJECT_SELF;
object oTarget = GetSpellTargetObject();
object oItem = GetSpellCastItem();
int nSpell = GetSpellId();
switch (nSpell)

       {

         case SPELL_FIREBALL: 
         case SPELL_FIREBRAND:
         case SPELL_DELAYED_BLAST_FIREBALL:
         if (GetIsObjectValid(oItem))           
          {
           break;
           }
           if ((HasItem(oPC,"sera") == FALSE) && (GetIsDM(oPC) == FALSE)){                                                                                            
           SetModuleOverrideSpellScriptFinished();
           SendMessageToPC(OBJECT_SELF, "У вас нет необходимых компонентов!!");
           }
      else
    {
    DestroyObject(GetItemPossessedBy(oPC,"sera")); у
    }
    break;
     case SPELL_BLESS:
     //тут пишешь свою проверку :)
     break;
     }


Все :drag:

Сообщение отредактировал Лито - May 9 2005, 20:18
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 42 43 44 45 46 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 5th May 2025 - 10:56