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

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

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


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

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



QUOTE (Lex @ Jan 23 2006, 01:42)
ну.. что мешает в iprp_feats.2da поставить коэф. 1? Тогда левелрестрикт нам не помеха.

Ну дык это ж надо знать... =)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
NedWarN
сообщение Jan 24 2006, 04:06
Сообщение #1902


Level 5
**

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



Помню Ктота давал Модуль, с мутацией Камней. т.е положил камень и Шмотку, и смутировал. Вот я хотел узнать у него, как сделать так чтобы бонусы пребавлялись Любому, предмету. Чтобы не давать каждому тег.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vanes
сообщение Jan 24 2006, 09:32
Сообщение #1903


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

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



не понял вопроса
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
[MoF]Darth_Nick
сообщение Jan 24 2006, 22:07
Сообщение #1904


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

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



может имеется в виду подобие крафта?
типа положил 2 шмотки, результат - одна шмотка?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vanes
сообщение Jan 25 2006, 09:29
Сообщение #1905


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

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



QUOTE
типа положил 2 шмотки, результат - одна шмотка?

это сделать можно, причем достаточно легко...
самое трудоемкое будет описать, что получится из свзяки веп+щит или ботинки+шапка...
хотя, если протсоо использоваться d2() то можно и не заморачиваться...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
[MoF]Darth_Nick
сообщение Jan 25 2006, 10:40
Сообщение #1906


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

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



в его случае испл. камень.
думаю, надо просто пробежаться по инвентарю кузни(или чего там), найти камень с тагом и 1 любую другую шмотку. потом пробежаться по эффектам, перенести их на другую шмотку и удалить камень(по желанию)
помойму ничего сложного..
ф-ции:
Neverwinter Script Source
object GetFirstItemInInventory(object oTarget=OBJECT_SELF)
object GetNextItemInInventory(object oTarget=OBJECT_SELF)
itemproperty GetFirstItemProperty(object oItem)
itemproperty GetNextItemProperty(object oItem)
void AddItemProperty(int nDurationType, itemproperty ipProperty, object oItem, float fDuration=0.0f)


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


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

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



А вопрос был не про то.

NedWarN, чтобы не крафтилось если "обычных" вещей больше одной нужно задать уникальные таги всем камням!
Потом в скрипте проверяешь, сколько вещей не имеющих тагов камней лежит у крафтера. Если их больше одной, то крафт отменяется, если все норм, то идет крафт. Или можно просто брать первую обычную шмотку и тогда игрок сам будет виноват.

Вот проверка.
Neverwinter Script Source
void main()
{
object oOb = GetFirstItemInInventory(OBJECT_SELF);//первый итем
int iA;//счетчик

//будет проверять пока не закончатся вещи
while(oOb != OBJECT_INVALID)
{
    //сравниваем таг взятой вещи с тагом камней
    if(GetTag(oOb) != "ТАГ ОДНОГО КАМНЯ" || GetTag(oOb) != "ТАГ ДРУГОГО КАМНЯ")
    {
        //если таг не подходит ни к одному из камней, то считаем эту вещ
        iA = iA + 1;
    }
    oOb = GetNextItemInInventory(OBJECT_SELF);//следующий итем
}

//если кол-во вещей больше 1 или скольких нужно, то возврат скрипта
if(iA>1)
return;

//если с кол-вом вещей все нормально, то пишешь, что там дальше
//...
}



2 Lex
Эм, 100 разных камней?
Не думал о таком, но если их много, то лучше так.

Сообщение отредактировал -fenix- - Jan 25 2006, 18:33
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 25 2006, 18:28
Сообщение #1908


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

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



QUOTE (-fenix- @ Jan 25 2006, 17:41)
if(GetTag(oOb) != "ТАГ ОДНОГО КАМНЯ" || GetTag(oOb) != "ТАГ ДРУГОГО КАМНЯ")

если у нас в модуле 100 камней, ты как будешь проверять?
имхо лучше систему тэгов для камней сделать.. ITM_CSTONE_* например. Тогда просто берем 11 символов тэга с левой стороны и сравниваем с "ITM_CSTONE_"
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
justshurik
сообщение Jan 25 2006, 22:37
Сообщение #1909


Level 4
**

Класс: Маг
Характер: Chaotic Evil
Раса: Человек



Народ помогите! Никак не могу заставить существо(тролль) вызвать заклинание Фаерболл на waypoint. Уже все перепробовал:и с помощью AssignCommand,и с помощью ActionDoCommand,и с помощью ApplyEffectToObject.ничего не помагает. :unsure:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
[MoF]Darth_Nick
сообщение Jan 25 2006, 22:58
Сообщение #1910


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

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



Neverwinter Script Source
void main()
{
location lLoc = GetLocation(GetWaypointByTag("fb_way")); // вейпойнт
object oTroll = GetNearestObjectByTag("fsdfsd"); // ближайщий объект с тагом fsdfsd
AssignCommand(oTroll,ActionCastSpellAtLocation(SPELL_FIREBALL,lLoc)); // кастим
}


только в св-ах кричи должен фаер бол стоять
так же есть такая ф-ция, только последствия от нее другие...
Neverwinter Script Source
// The action subject will fake casting a spell at lLocation; the conjure and
// cast animations and visuals will occur, nothing else.
// - nSpell
// - lTarget
// - nProjectilePathType: PROJECTILE_PATH_TYPE_*
void ActionCastFakeSpellAtLocation(int nSpell, location lTarget, int nProjectilePathType=PROJECTILE_PATH_TYPE_DEFAULT)


Сообщение отредактировал [MoF]Darth_Nick - Jan 25 2006, 23:10
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
justshurik
сообщение Jan 25 2006, 23:12
Сообщение #1911


Level 4
**

Класс: Маг
Характер: Chaotic Evil
Раса: Человек



Спасибо! Я понял. Мне нужно было просто в свойства создания поставить фаерболл.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение Jan 26 2006, 16:20
Сообщение #1912


Level 8
***

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



Привет,
Ситуация:
Есть 4-ы Непися, два вепойнта, чтобы они ходили...
Вопрос:
- Как сделать, чтобы эти Неписи шли вместе почти ровным строем?



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


Level 5
**

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



Не вы не понели. :D
Мне недавно здесь, дали модуль шарда, где был "Ящик Валдора" куда пихаеш шмот кидаеш камень, Жмнёш рычаг и готово. Шмот с бонусом. Там каждому камню дан Тег из системы тегов Jawel_Of_.../ Да это я понимаю нада, но ещё такая же система тегов стоит и на Шмоте, который преобритает Бонусы. Я хотел узнать Можно ли сделать так чтоб, Тег шмоту не давать, а то нада будет 1000 тегов Писать. Несколько страниц назад есть ссылочка на модуль.
Добавлено в [mergetime]1138331871[/mergetime]
Nashman
1вым 2вум Приказывай идти на Ваупоинт.
А 2м. приказывай двигатся не на Ваупоинт а На 1вых 2х челов. Или на каждого по отдельности, напремер с лева чел, идёт на на другого, кто спереди слева.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vanes
сообщение Jan 27 2006, 09:28
Сообщение #1914


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

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



NedWarN
можно конечно...
см. скрипт vns_vswitch_use, строка 24...
именно это ограничение отвечает за то, какому предмету будут добавляться свойства...
однако просто убрать его будет недостаточно - потому как первым предметом в ящике может оказаться не меч, или щит, а тот же камушек, или вообще какой нить посторонний предмет, по-этому придется сделать хотя бы такую проверку:
Neverwinter Script Source
if(GetBaseItemType(oItem)==BASE_ITEM_*)

где * - предметы, на которые можно добавлять св-ва (амулеты, щиты, вепы и т.п.)
Добавлено в [mergetime]1138343440[/mergetime]
если же ты уверен, что ничего постороннего в ящик не положат - сделай проверку:
Neverwinter Script Source
if(GetStringLeft(sTag, 8)!="vns_ips_")

т.о. образом, если в ящике лежит камень +5 энчата и веп, то за BaseItem примут именно веп, а не камень...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jan 27 2006, 09:38
Сообщение #1915


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

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



NedWarN, тогда в чем проблема?
Бери все положенные вещи, у которых таг не соответствует тагу камней и давай бонусы.
Другое дело, что раз там есть система тегов, значит так надо! Например, на какую-то разновидность колец не может быть добавлен определенный бонус или еще для чего-то, возможно и не для крафта.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
RoHaN
сообщение Jan 28 2006, 15:00
Сообщение #1916


Level 1


Класс: Варвар
Характер: True Neutral
Раса: Полуорк



TNX за помощь, я уже сделал скрипт с Джампом, и модуль уже закончен . :yes: :yahoo:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 28 2006, 15:05
Сообщение #1917


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

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



Ссылку нам не дашь? Ну или сам модуль, я выложу. (о законченых модулях не сюда, а в мастерские.)
продолжение темы - в ПМ
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virusman
сообщение Jan 29 2006, 12:57
Сообщение #1918


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

Класс: Волшебник
Характер: Neutral Good
Раса: Человек
NWN: Скриптинг [PW]
Axistown SR 1.9
NWNX



Neverwinter Script Source
void CheckIsHere(object oTarget, string sOrder)
{
    if(GetDistanceBetween(OBJECT_SELF, oTarget) < 4.0)
    {
        ActionPlayAnimation(ANIMATION_LOOPING_GET_MID, 1.0, 1.0);
        ActionDoCommand(_CreateItemOnObject(sOrder, oTarget));
    }
    else
    {
        SpeakString("Куда вы ушли??");
        ActionPlayAnimation(ANIMATION_LOOPING_GET_LOW, 1.0, 1.0);
        ActionDoCommand(_CreateObject(OBJECT_TYPE_ITEM, sOrder, GetLocation(OBJECT_SELF), TRUE));
    }
    ActionDoCommand(SetLocalInt(OBJECT_SELF, "vir_waiter_busy", FALSE));
}

void GoToObject(object oTarget, float fTimeout)
{
    ActionForceMoveToLocation(GetLocation(oTarget), TRUE, fTimeout);
    ActionDoCommand(SetFacingPoint(GetPosition(oTarget)));
}

void WalkToObject(object oTarget, float fTimeout)
{
    ActionForceMoveToObject(oTarget, TRUE, 2.0, fTimeout);
    ActionDoCommand(SetFacingPoint(GetPosition(oTarget)));
    ActionPlayAnimation(ANIMATION_LOOPING_GET_MID, 1.0, 1.0);
}

void GoToPlayer(object oTarget, string sOrder, float fTimeout)
{
    ActionForceMoveToLocation(GetLocation(oTarget), TRUE, fTimeout);
    ActionDoCommand(SetFacingPoint(GetPosition(oTarget)));
    ActionDoCommand(CheckIsHere(oTarget, sOrder));
}

void GiveBottleTo(object oPC, string sOrder)
{
    if (oPC != oShouter)
        oPotionWaypoint = GetNearestObjectByTag(sPotionWaypointTag,oPC);
    if (GetDistanceBetween(oPC, oPotionWaypoint)<=2.5)
    {
        WalkToObject(oPotionWaypoint, 15.0);
        ActionDoCommand(_CreateObject(OBJECT_TYPE_ITEM, sOrder, RandomLocationFrom(GetLocation(oPotionWaypoint), 0.2, 0.2),TRUE));
    }
    else
    {
        GoToPlayer(oPC, sOrder, 15.0);
        //ActionDoCommand(_CreateItemOnObject(sOrder, oPC));
    }
}

void main()
{

........

    if (nGroupOrder == TRUE)
    {
        SpeakString("Group order processing...");
        oGroupMember = GetFirstFactionMember(oShouter);
        while(GetIsObjectValid(oGroupMember))
        {
            if(GetObjectSeen(oGroupMember)) GiveBottleTo(oGroupMember, sOrder);
            oGroupMember = GetNextFactionMember(oShouter);
        }
    }
    else
    {
        GiveBottleTo(oShouter, sOrder);
    }

//    ActionForceMoveToObject(GetObjectByTag(sWaiterWaypointTag), FALSE, 0.5, 10.0);
//    ActionDoCommand(SetFacing(GetFacing(GetWaypointByTag(sWaiterWaypointTag))));
    ActionDoCommand(SetLocalInt(OBJECT_SELF, "vir_waiter_busy", FALSE));
    DelayCommand(0.2, SetCommandable(FALSE));
    AssignCommand(OBJECT_SELF, ActionDoCommand(SetCommandable(TRUE)));

}


Сообщение отредактировал virusman - Jan 29 2006, 12:58
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jan 29 2006, 13:13
Сообщение #1919


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

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



Лучше в коде при командах, актионах сложных не юзай OBJECT_SELF, а опиши объект. Бывает всякое г... на DelayCommand, SetCommandable и т.д.
Neverwinter Script Source
object oSelf = OBJECT_SELF;

  AssignCommand(oSelf, ActionForceMoveToObject(GetObjectByTag(sWaiterWaypointTag), FALSE, 0.5, 10.0));
  AssignCommand(oSelf, ActionDoCommand(SetFacing(GetFacing(GetWaypointByTag(sWaiterWaypointTag)))));
  AssignCommand(oSelf, ActionDoCommand(SetLocalInt(oSelf, "vir_waiter_busy", FALSE)));
  AssignCommand(oSelf, ActionDoCommand(SetCommandable(TRUE, oSelf)));
  DelayCommand(0.3, SetCommandable(FALSE, oSelf));
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
RoHaN
сообщение Jan 29 2006, 14:07
Сообщение #1920


Level 1


Класс: Варвар
Характер: True Neutral
Раса: Полуорк



Lex конечно дам, вот только ещё раз всё проверю . :job:
Добавлено в [mergetime]1138532951[/mergetime]
извените, что долго не пишу(Захожу с компов друзей ) :good:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение Jan 29 2006, 16:05
Сообщение #1921


Level 8
***

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



QUOTE
virusman
Это мне?! Ура!!! ;)
У меня он не работает, не потому, что не правельно написано, а потому что тулсет староват(Не все команды умеет выполнять из даного скрипта)... Но спасибо смысл понял приступаю к преобразованию....
:swoon:


Сообщение отредактировал Nashman - Jan 29 2006, 16:24
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Night Elf
сообщение Jan 31 2006, 03:30
Сообщение #1922


Level 1


Класс: Маг
Характер: Lawful Neutral
Раса: Полуэльф



Люди помогите Ньюбу...
у меня проблема, я мод решил создать по собственной ДД но воть проблема нашёл как вставлять золото делать квесты допёр до эжтого дела но воть блин как Опыт едрен батон вставлять в диалог понять немогу (при выполнении квеста напремер)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 31 2006, 04:15
Сообщение #1923


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

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



опыт дается скриптом (
Neverwinter Script Source
GiveXPToCreature()
)
. То, что ты указываешь в журнале не дается просто так. Это для скрипта (там типа взять опыт с квеста).
Тебе в "вопросы новичков"
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Night Elf
сообщение Jan 31 2006, 16:10
Сообщение #1924


Level 1


Класс: Маг
Характер: Lawful Neutral
Раса: Полуэльф



а скриптик не подкинешь... =(( а то зяманался... :this: мод вроде ничаво воть тока трабла с експой ... :vava:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jan 31 2006, 16:13
Сообщение #1925


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

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



Neverwinter Script Source
/// даем игроку 100 опыта. Ставь где хошь.
void main()
{
object oPC = GetFirstPC();
GiveXPToCreature(oPC ,100);
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

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

 



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