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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 73 74 75 76 77 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Aiwan
сообщение Jan 8 2006, 01:23
Сообщение #1851


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

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



Лучше юзать ЮзерДеф с проверкой игрока в локации с НПС.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 8 2006, 01:28
Сообщение #1852


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

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



QUOTE (Aiwan @ Jan 8 2006, 01:23)
Лучше юзать ЮзерДеф с проверкой игрока в локации с НПС.

в начале ХБ дефолтового это есть уже.
Neverwinter Script Source
// * if not runnning normal or better Ai then exit for performance reasons
    if (GetAILevel() == AI_LEVEL_VERY_LOW) return;
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jan 8 2006, 02:23
Сообщение #1853


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

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



Nashman, во первых, тебе уже сказали, во вторых, помоему задержка между действиями маловата, а иногда слишком большая. Да и удобнее юзать DelayCommand.

QUOTE (Kavin @ Jan 7 2006, 20:52)
Ой... И Encounter-ы тоже нельзя?..

Тоже, как и тригеры!

Сообщение отредактировал -fenix- - Jan 8 2006, 02:27
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
NedWarN
сообщение Jan 8 2006, 06:30
Сообщение #1854


Level 5
**

Класс: Маг
Характер: Lawful Good
Раса: Тварь



Хелп, Мастера Скриптов.
У меня бешанная идея создать скрипт. Нападобии Диабло.
Чтобы можно было вставить Камень в Шмотку и она изменилась.
А думаю это невозможно. Помогите.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jan 8 2006, 09:54
Сообщение #1855


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

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



А почему бы не сделать так:
На оружие вешаешь особое свойство, при вызывании которого начинался бы диалог с оружие.
Там, строчки появ. в зависимости от тагов камней, потом на Action Takens можно повесить скрипт добавление свойства определенной вещи. (Функцию не помню, глянь в НотУ у кузнеца, во 2 компании.)
Просто и понятно. :)
QUOTE
создать скрипт.

Создаеться способом описанным выше макс. за 5 мин. Дерзай. ;)

Сообщение отредактировал Dik Morris - Jan 9 2006, 21:57
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
StalkerDtN
сообщение Jan 8 2006, 13:07
Сообщение #1856


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

Класс: Волшебник
Характер: Chaotic Good
Раса: Дракон
NWN: Скриптинг [Sn]



Всем привет! :yes:
Плз, подскажите как работает "сумка просителя" в игре.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 8 2006, 14:26
Сообщение #1857


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

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



QUOTE (NedWarN @ Jan 8 2006, 06:30)
Хелп, Мастера Скриптов.
У меня бешанная идея создать скрипт. Нападобии Диабло.
Чтобы можно было вставить Камень в Шмотку и она изменилась.
А думаю это невозможно. Помогите.

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

Посмотри стандартные заклы.. например Light. Можно наложить его на вещь, можно на существо.
Neverwinter Script Source
//::///////////////////////////////////////////////
//:: Light
//:: NW_S0_Light.nss
//:: Copyright © 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
    Applies a light source to the target for
    1 hour per level

    XP2
    If cast on an item, item will get temporary
    property "light" for the duration of the spell
    Brightness on an item is lower than on the
    continual light version.

*/

//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Aug 15, 2001
//:://////////////////////////////////////////////
//:: VFX Pass By: Preston W, On: June 22, 2001
//:: Added XP2 cast on item code: Georg Z, 2003-06-05
//:://////////////////////////////////////////////

#include "x2_inc_spellhook"

void main()
{

   // If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run
    // this spell.
    if (!X2PreSpellCastCode())
    {
        return;
    }

    //Declare major variables
    object oTarget = GetSpellTargetObject();

    int nDuration;
    int nMetaMagic;

    // Handle spell cast on item....
    if (GetObjectType(oTarget) == OBJECT_TYPE_ITEM && ! CIGetIsCraftFeatBaseItem(oTarget))
    {
        // Do not allow casting on not equippable items
        if (!IPGetIsItemEquipable(oTarget))
        {
         // Item must be equipable...
             FloatingTextStrRefOnCreature(83326,OBJECT_SELF);
            return;
        }

        itemproperty ip = ItemPropertyLight (IP_CONST_LIGHTBRIGHTNESS_NORMAL, IP_CONST_LIGHTCOLOR_WHITE);

        if (GetItemHasItemProperty(oTarget, ITEM_PROPERTY_LIGHT))
        {
            IPRemoveMatchingItemProperties(oTarget,ITEM_PROPERTY_LIGHT,DURATION_TYPE_TEMPORARY);
        }

        nDuration = GetCasterLevel(OBJECT_SELF);
        nMetaMagic = GetMetaMagicFeat();
        //Enter Metamagic conditions
        if (nMetaMagic == METAMAGIC_EXTEND)
        {
            nDuration = nDuration *2; //Duration is +100%
        }

        AddItemProperty(DURATION_TYPE_TEMPORARY,ip,oTarget,HoursToSeconds(nDuration));
    }
    else
    {
        effect eVis = EffectVisualEffect(VFX_DUR_LIGHT_WHITE_20);
        effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
        effect eLink = EffectLinkEffects(eVis, eDur);

        nDuration = GetCasterLevel(OBJECT_SELF);
        nMetaMagic = GetMetaMagicFeat();
        //Enter Metamagic conditions
        if (nMetaMagic == METAMAGIC_EXTEND)
        {
            nDuration = nDuration *2; //Duration is +100%
        }
        //Fire cast spell at event for the specified target
        SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_LIGHT, FALSE));

        //Apply the VFX impact and effects
        ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, HoursToSeconds(nDuration));
    }

}



нюансы конечно есть, например разделение на типы вещей (оружие, броня и тд), чтобы не вешать +дамаг на армор и прочее. Но это уже твоя забота.
можно даже сделать "камнедер", который будет их обратно вынимать. Сделать возможность вставки более чем 1 камня.. Ну короче наворотить можно чего хошь.

можно конечно не заклами, а просто уникальным свойством камня. МБ тебе так проще будет, но суть одна: Вешать на камни это (наложение), а не на вещи.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
NedWarN
сообщение Jan 9 2006, 09:58
Сообщение #1858


Level 5
**

Класс: Маг
Характер: Lawful Good
Раса: Тварь



Dik Morris
Извени но ты не представляеш, как диалоги меня достали.
Lex
А я неумею Прописывать 2да, блин что делать.
И еще как сделать так чтоб при использовании закла, игрок стоял смирно и ничо не делал.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jan 9 2006, 12:03
Сообщение #1859


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

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



QUOTE (NedWarN @ Jan 9 2006, 10:58)
А я неумею Прописывать 2да, блин что делать.

Топать в форум по 2да и просить/спрашивать/учиться там!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение Jan 9 2006, 13:53
Сообщение #1860


Level 8
***

Класс: Тайный Лучник
Характер: Lawful Good
Раса: Эльф



Привет,
Нужен совет!!
У меня есть сидячии НЕПИСИ. Можно им задать какую-нить анимацию. И можно их заставить разговаривать между собой не вставая?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jan 9 2006, 14:01
Сообщение #1861


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

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



QUOTE
Можно им задать какую-нить анимацию.

Hacчет анимации это наврятли, вроде невозможно. :yes:
QUOTE
можно их заставить разговаривать между собой не вставая?

Neverwinter Script Source
// The caller will immediately speak sStringToSpeak (this is different from
// ActionSpeakString)
// - sStringToSpeak
// - nTalkVolume: TALKVOLUME_*
void SpeakString(string sStringToSpeak, int nTalkVolume=TALKVOLUME_TALK)

QUOTE
Извени но ты не представляеш, как диалоги меня достали.

Учись правописанию! ;)

Сообщение отредактировал Dik Morris - Jan 9 2006, 21:56
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vanes
сообщение Jan 9 2006, 15:18
Сообщение #1862


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

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



NedWarN
посмотри мой модуль...
сделан он для турниров, но принцип вендора там именно "через камушки"...
http://forums.karamba.ru/index.php?act=Att...pe=post&id=1301
зы скрипт который тебе нужен: vns_vswitch_use
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
NedWarN
сообщение Jan 10 2006, 01:45
Сообщение #1863


Level 5
**

Класс: Маг
Характер: Lawful Good
Раса: Тварь



Vanes
Sps/ Буду глядеть.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение Jan 10 2006, 04:09
Сообщение #1864


Level 8
***

Класс: Тайный Лучник
Характер: Lawful Good
Раса: Эльф



Привет,
Подскажите:
- Я сделал так, что бы когда из сидячим НПС хочешь поговорить - он встает говорит, что бы ПС отвязался, а потом обратно садится. Все хорошо, но когда он садится, то сидя постоянно поворачивается в мою сторону. Что можно из этим сделать?


ПС: По поводу Фоновой музики, в функциях нужно указать номер фоновой мелодии, а как его узнать(номер)?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jan 10 2006, 08:37
Сообщение #1865


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

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



QUOTE
. Все хорошо, но когда он садится, то сидя постоянно поворачивается в мою сторону.

Была подобная проблема. :)
Но чессно сказать уже не помню как решил, попробуй скажем почистить акции у NPC (на ActionTakens последней строчки:
Neverwinter Script Source
// Clear all the actions of the caller.
// * No return value, but if an error occurs, the log file will contain
//   "ClearAllActions failed.".
// - nClearCombatState: if true, this will immediately clear the combat state
//   on a creature, which will stop the combat music and allow them to rest,
//   engage in dialog, or other actions that they would normally have to wait for.
void ClearAllActions(int nClearCombatState=FALSE)

А вообще вот ТУТ разбирается подобная ситуация.
Насчет музыки.
Открываешь ambientmusic.2DA и смотришь там, например:
QUOTE
       
1      61842         mus_ruralday1      ****               ****       ****       ****         

PS: вопросы скорее одиночного типа, в следующий раз повнимательнее плиз. :yes:

Сообщение отредактировал Dik Morris - Jan 10 2006, 13:31
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Salasar
сообщение Jan 11 2006, 17:57
Сообщение #1866


Level 1


Класс: Мастер Оружия
Характер: Neutral Good
Раса: Человек



У меня такая ситуация я хочу, чтобы когда герой входил в триггер дверь в комнате открывалась, оттуда выходил НПС подходил к герою, вступал с ним в разговор и, по окончании разговора становился хенчменом героя.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 11 2006, 18:06
Сообщение #1867


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

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



И в чем проблема собсна?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jan 11 2006, 18:27
Сообщение #1868


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

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



Salasar
QUOTE
У меня такая ситуация я хочу, чтобы когда герой входил в триггер дверь в комнате открывалась, оттуда выходил

Такие скрипты разбираются на каждой странице форума, используй поиск. ;)
(И + функции:
Neverwinter Script Source
// Cause the action subject to open oDoor
void ActionOpenDoor(object oDoor)

Neverwinter Script Source
// Set the locked state of oTarget, which can be a door or a placeable object.
void SetLocked(object oTarget, int bLocked)

Для открытия двери.)
QUOTE
окончании разговора становился хенчменом героя.

Есть тема: (В этом разделе форума)
"Скрипты для новичков" там 100% найдеться ответ на твой вопрос. ;)
Вообще народ, лучше перед тем как что нибуть спросить, не надо лениться, а использовать хорошую такую кнопочку, ПОИСК. :yes:
PS: хотя еще лучше начать разбираться самому, все равно так как тебе нужно никто не сделает, да и куда приятнее все писать самостоятельно. (И.М.Х.О)

Сообщение отредактировал Dik Morris - Jan 11 2006, 19:56
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
StalkerDtN
сообщение Jan 13 2006, 06:52
Сообщение #1869


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

Класс: Волшебник
Характер: Chaotic Good
Раса: Дракон
NWN: Скриптинг [Sn]



Привет всем!
У меня такой вопрос (точнее два):
1). все знают про сумки в инвентаре(те куда можно положить ограниченное колличество вещей и плюс они уменьшают вес), можно ли сделать так, что, допустим, я в нее (в сумку) ложу несколько предметов если это подходящии предметы, то эти предметы изчезают и там появляется новый предмет (именно в этой сумке, а не просто ложиться в инвентарь)
2). существует ли функция которая берет позицию предмета в инвентаре (я не про слоты одежды и т.п.). Или хотя бы смотрит сколько данный предмет занимает места в инвентаре.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jan 13 2006, 09:17
Сообщение #1870


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

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



StalkerDtN
Можно было бы сделать, просто.
Ложишь в сумку итемы, активируешь её...
НО! Видишь ли, на сумку нельзя вешать свойство: активировать предмет, так что приодеться по другому.
Создаём предмет со свойством активации, когда мы активируем этот предмет на сумке срабатывает ниже приведенный скрипт:
Neverwinter Script Source
#include "nw_i0_tool"
//На onActivaItem модуля.
void main()
{
object oPC = GetItemActivator();// Игрок
object oPa = GetItemActivated();// Активируемый предмет
object oSu = GetNearestObjectByTag("ТАГ_СУМКИ");// Сумка

     if (GetTag(oPa)=="TAГ_ПРЕМЕТА")
     // Проверка. Если таг активируемого предмета равен: TAГ_ПРЕМЕТА, ТО:
     {       
        if ((HasItem(oPC,"ТАГ_СУМКИ"))&&
        GetItemActivatedTarget()==oSu)
        // Проверка. Если итем находиться в инвентаре игрока,
        // + если мы активируем на сумке то:
        {
          if ((HasItem(oSu,"ТАГ_ПРЕДМЕТА_1")) && HasItem(oSu,"ТАГ_ПРЕДМЕТА_2"))
          // Опять проверка. Если в сумке есть два премета
          // с тагами: ТАГ_ПРЕДМЕТА_1 и ТАГ_ПРЕДМЕТА_2, то:
          {
          DestroyObject(GetNearestObjectByTag("ТАГ_ПРЕДМЕТА_1"));//Дестроим эти преметы
          DestroyObject(GetNearestObjectByTag("ТАГ_ПРЕДМЕТА_2"));//Дестроим эти преметы
          CreateItemOnObject("ТАГ_НОВОГО__ПРЕДМЕТА",oSu,1);// Создаем новый
          ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_DISPEL),oPC);
          // Налаживаем визуальный эффект. (для большей реалистичности)
          }
        }
// ЗЫ: скрипт писал в дикой спешке, народ, если будут ошибки, прошу сильно не пинать =)
     }
}


Сообщение отредактировал Dik Morris - Jan 13 2006, 09:20
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение Jan 13 2006, 15:58
Сообщение #1871


Level 8
***

Класс: Тайный Лучник
Характер: Lawful Good
Раса: Эльф



Привет,
Подскажите ПЛС. Почему нельзя записать так:
Neverwinter Script Source
ActionDoCommand(AssignCommand(oNPC, CreateItemOnObject(...)));


Выдает "Делкларация не соответсвует параметру".

ПС: Просто нужно создать последовательность, а и-за єтой ошибки не получается!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jan 13 2006, 16:24
Сообщение #1872


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

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



Потому что функция CreateItemOnObject не является void функцией.
Нужно написать свою void функцию, в которой будет выполнятся CreateItemOnObject.
Говорили такое ни раз и функцию приводили то же ни раз!!!

Neverwinter Script Source
//Позволяет использовать функцию  CreateItemOnObject в
//ActionDoCommand, AssignCommand и DelayCommand.
void ActionCreateItemOnObject(string sItemTemplate, object oTarget=OBJECT_SELF, int nStackSize=1);

void ActionCreateItemOnObject(string sItemTemplate, object oTarget=OBJECT_SELF, int nStackSize=1)
{
CreateItemOnObject(sItemTemplate, oTarget, nStackSize);
}


А вот для CreateObject
Neverwinter Script Source
//Позволяет использовать функцию  CreateObject в
//ActionDoCommand, AssignCommand и DelayCommand.
void ActionCreateObject(int nObjectType, string sTemplate, location lLocation, int bUseAppearAnimation=FALSE, string sNewTag="");

void ActionCreateObject(int nObjectType, string sTemplate, location lLocation, int bUseAppearAnimation=FALSE, string sNewTag="")
{
CreateObject(nObjectType, sTemplate, lLocation, bUseAppearAnimation=FALSE, sNewTag="");
}


Может в ВИО добавить?

Сообщение отредактировал -fenix- - Jan 13 2006, 16:41
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
StalkerDtN
сообщение Jan 13 2006, 17:13
Сообщение #1873


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

Класс: Волшебник
Характер: Chaotic Good
Раса: Дракон
NWN: Скриптинг [Sn]



Dik Morris

Спасибо за участие, но это не есть то что мне нужно. Я делал уже нечто подобное только вешал скрипт на ХБ, все работало, но постоянные (точнее, совсем даже не постоянные) задержки меня котегорически не устраивали. Мне, как раз, хотелось чтобы все было, так сказать, мгновено. Видимо енто невозможно.

PS: У тебя пара неточностей:

1. "if ((HasItem(oSu,"ТАГ_ПРЕДМЕТА_1")) && HasItem(oSu,"ТАГ_ПРЕДМЕТА_2"))"

- это несработает, т.к. выше "object oSu = GetNearestObjectByTag("ТАГ_СУМКИ")"
нужно - "object oSu = GetObjectByTag("ТАГ_СУМКИ")"
2. "DestroyObject(GetNearestObjectByTag("ТАГ_ПРЕДМЕТА_1"))" - таг все предметы с "ТАГ_ПРЕДМЕТА_1" тоже уничтожуться, лучше отдельной функцией, например вот так:
void DObj()
{
object oSumka = GetObjectByTag("SUMKA");
object dobj_1 = GetItemPossessedBy(oSumka, "ITEM_1");
object dobj_2 = GetItemPossessedBy(oSumka, "ITEM_2");

DestroyObject(dobj_1);
DestroyObject(dobj_2);
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jan 13 2006, 20:46
Сообщение #1874


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

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



Функция:
Neverwinter Script Source
HasItem

Проверяет обладает ли цель нужным предметом, т.е:
Neverwinter Script Source
HasItem(oSu,"ТАГ_ПРЕДМЕТА_1

Проверяем, иметься ли в сумке нужный тебе айтем, так как:
QUOTE
несколько предметов если это подходящии предметы, то эти предметы...

QUOTE
object oSu = GetObjectByTag("ТАГ_СУМКИ")"

Таг БЛИЖАЙШЕЙ. Ведь если юзаем:
Neverwinter Script Source
GetObjectByTag
, то айтемы могут создаться в совсем другой сумке! (Если конечно она присутствует в игре =))
QUOTE
"ТАГ_ПРЕДМЕТА_1" тоже уничтожуться

Хех, таже ситуация что и с сумкой...
Уничтожаться ближайшие объекты. Т.е те что у тебя в инвентаре.
ЗЫ: sorry за оффтоп, но ведь нужно человеку обьяснить как лучше. :)
ЗЗЫ: пользуйся кодом NSS. :yes:

Сообщение отредактировал Dik Morris - Jan 13 2006, 20:48
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 13 2006, 21:13
Сообщение #1875


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

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



QUOTE (Dik Morris @ Jan 13 2006, 20:46)
Таг БЛИЖАЙШЕЙ.

только в случае работы с инвентарем это не работает. И если надо убать именно те, что в сумке, то StalkerDtN верно написал.

QUOTE (Dik Morris @ Jan 13 2006, 20:46)
ЗЫ: sorry за оффтоп, но ведь нужно человеку обьяснить как лучше. :)

Вообще оба замечания его - верные.
Добавлено в 21:19
QUOTE (StalkerDtN @ Jan 13 2006, 06:52)
2). существует ли функция которая берет позицию предмета в инвентаре (я не про слоты одежды и т.п.). Или хотя бы смотрит сколько данный предмет занимает места в инвентаре.

по поводу места - можно через 2да посчитать.
что-то такое..
Neverwinter Script Source
int GetItemPlace(object oItem)
{
int nBASE = GetBaseItemType(oItem);
int nWidth = StringToInt(Get2DAString("baseitems","InvSlotWidth",nBASE);
int nHeight = StringToInt(Get2DAString("baseitems","InvSlotHeight",nBASE);
return nWidth*nHeight;
}

Добавлено в 21:23
QUOTE (StalkerDtN @ Jan 13 2006, 06:52)
можно ли сделать так, что, допустим, я в нее (в сумку) ложу несколько предметов если это подходящии предметы, то эти предметы изчезают и там появляется новый предмет (именно в этой сумке, а не просто ложиться в инвентарь)

тока постоянной проверкой. Ну или как предложил Дик (тока реализованный более правильно, через сумку, а не айтем)
Добавлено в 21:25
QUOTE (StalkerDtN @ Jan 13 2006, 17:13)
Я делал уже нечто подобное только вешал скрипт на ХБ, все работало, но постоянные (точнее, совсем даже не постоянные) задержки меня котегорически не устраивали.

ну это просто. Выноси в отдельный скрипт проверки и запускай в ХБ (модуля, игрока) с интервалом нужным. Скажем
0.0
1.0
2.0
3.0
4.0
5.0
те у тебя будет каждую секунду проверка. Задержки минимальны, но код проверочный оптимизируй по максимуму. мб не 1.0 а 1.5 шаг... но это уже сам как хочешь.

Но проще не париться и идею чуть-чуть подправить под реалии тулсета :) Вариант положил в сумку, потом активировал - нормальный. :)

QUOTE (Dik Morris @ Jan 13 2006, 09:17)
НО! Видишь ли, на сумку нельзя вешать свойство: активировать предмет, так что приодеться по другому.

itemprops.2da
строка Cast_Spell, столбец 18_Containers. Ставим вместо 0 1 и кидаем в хак, если есть.
Теперь можно вешать активацию на саму сумку и забыть про другой айтем.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 73 74 75 76 77 > » 
Ответить в эту темуОткрыть новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28th April 2025 - 19:34