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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
146 страниц V  < 1 2 3 4 5 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Lex
сообщение Jun 12 2004, 16:27
Сообщение #51


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

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



Айв, не говори ерунды, если все через Assign то никакого удаления нет, так как очередь на НПС. Главное удалить триггер не сразу-же а с небольшой задержкой. полсекунды вполне хватает, чтобы длинющую очередь выстроить.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 12 2004, 17:04
Сообщение #52


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

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



Ну это ты знаешь. А он не волокет в тонкостях. Ему нужно просто и что бы было понятно и работало. Дальше он сам сделает как поймет. (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
_kaa_
сообщение Jun 14 2004, 08:35
Сообщение #53


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

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



Вопрос по анимации. Как сделать анимацию атаки? Именно анимацию, а не заставить PC нападать. Констант таких я не нашел, возможно ли это?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение Jun 14 2004, 11:07
Сообщение #54


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Стандартными способами нельзя. Можно поменять саму анимацию, на одной из существующих констант. То есть выдрать анимацию одиночной атаки (допустим с длинным мечом) и заменить ею одну из существующих анимаций. Само собой без хака не обойтись. Подробнее я к сожалению не смогу объяснить. Надеюсь Айс это сделает (IMG:style_emoticons/kolobok_light/smile.gif) . [гы, глядя в сторону Айса...]
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
_kaa_
сообщение Jun 14 2004, 12:57
Сообщение #55


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

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



Не, спасибо. Либо просто - либо никак (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 14 2004, 16:52
Сообщение #56


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

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



да, к сожалению констант нет.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elven king
сообщение Jun 16 2004, 12:26
Сообщение #57


Level 12
****

Класс: Мастер Оружия
Характер: Lawful Good
Раса: Эльф
NWN: Маппинг



Такой вот вопрос, как вам кажется, как легче создать расовые плюшки для Дроу тоесть чтобы он мог сразу использовать темноту и как сделать волшебный огонь, который просто появляется как эффект вокруг жертвы?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение Jun 17 2004, 09:46
Сообщение #58


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Мне кажется здесь надо переписать чуток 2да по фитам и магии... По-другому вроде новые спеллы не дать...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elven king
сообщение Jun 17 2004, 11:44
Сообщение #59


Level 12
****

Класс: Мастер Оружия
Характер: Lawful Good
Раса: Эльф
NWN: Маппинг



Ну... это то да, а вот как быть с тем чтобы магия Darkness была врождена, тоесть как бы использовалась к примеру два раза в день?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 17 2004, 15:35
Сообщение #60


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

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



Elven king слишком пространнственный вопрос. Конкретней ситуацию опиши. Про спелл, можно надеть шкурку на РС. Но для шарда это не очень (IMG:style_emoticons/kolobok_light/sad.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elven king
сообщение Jun 17 2004, 15:40
Сообщение #61


Level 12
****

Класс: Мастер Оружия
Характер: Lawful Good
Раса: Эльф
NWN: Маппинг



Нет, тут не для Шарда, а так для одиночной игры, вся ситуация сосотит в том, что мне нужно реализовать суб расу Дроу, которая как известно обладает двумя способностями(на даный момент хватает только спела).
И можетете ктонибудь сказать какой командой можно одеть эту шкуру?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
aleVandal
сообщение Jun 17 2004, 18:50
Сообщение #62


Level 4
**

Класс: Оборотень
Характер: Chaotic Neutral
Раса: Орк
NWN: Скриптинг [PW]



Такой вопрос:
можно ли каким нибудь образом восстановить игроку запомненные, но уже использованные спеллы (без отдыха)?
Ато я в тулсете знаю только возможность уменьшить количество кастов запомненного спелла, а вот обратной возможности так и не нашел... (IMG:style_emoticons/kolobok_light/shout.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 17 2004, 19:10
Сообщение #63


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

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



2 Vestel

Этот скрипт ставишь на OnEnter локации. Делаешь невидимого монстра с нейтральной фракцией ко всем и делаешь его плотовым. Для диалога немного переделай. Сможешь?
Код

//::///////////////////////////////////////////////
//:: Name
//:: Copyright (c) 2004 WRG!
//:://////////////////////////////////////////////
//:: Created By: Aiwan
//:: Created On:
//:://////////////////////////////////////////////
void main()
{
  object oPC = GetEnteringObject(); // GetPCSpeaker();
  if (!GetIsPC(oPC) || GetLocalInt(oPC, "START_PC")) // ДЛЯ ЛОКАЦИИ
       {return;}
  if (GetIsPC(oPC))
    {
    SetLocalInt(oPC, "START_PC", TRUE);
    AssignCommand(oPC, ClearAllActions());
    object oSpeaker=CreateObject(OBJECT_TYPE_CREATURE,"ResRef_невидимого_НПС",GetLocation(oPC),FALSE);
    AssignCommand(oSpeaker, ActionStartConversation(oPC, "dlg_assignskills"));
    }
}


В конце своего диалога на слот Normal и слот Aborted делаешь кусочек кода:
Код
void main()
{
DestroyObject(OBJECT_SELF, 0.5);
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Вестель
сообщение Jun 17 2004, 19:10
Сообщение #64


Level 7
**

Класс: Чемпион Торма
Характер: Chaotic Good
Раса: Человек
NWN: DM



Вопрос первый.
При первом входе персонажа на сервер, должен срабатывать скрипт, который начинает с ним диалог (вроде как на Энтарионе "система именных оружий" и т.д). Этот же диалог должен начинаться после каждого ЛевелАпа. Проверка на первость входа идет через стандартное Deity по факту наличия зарезервированных символов в котором и должен запускаться диалог.

С подсказки Aiwan'a была создана НПС (таг: "MCS_TALKMAN"), которой было заданно имя, которая будет вести диалог. Она спрятана в дальнюю локацию с названием "Секретная Лока" (таг: "SECRET_AREA").
При использывании конструкции:
Код
objeсt oMCS=GetObjectByTag("MCS_TALKMAN");
ActionStartConversation(oMCS,"dlg_testdialog",TRUE, TRUE);
диалог не начинается.
Может быть надо как-то указывать, что действие происходит в разных локациях или что? Буду рад любой помощи.

Вопрос второй.
В диалоге должна появляться фраза использующая переменные. Типа
Цитата
"Уже прошло 2.. 3.. 6.. 8.. дней из 11 отпущенных".
Переменную с LocalInt'a я считать могу, а вот, как вставить ее в диалог не разобрался. Может кто-нибудь подсказать?..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 17 2004, 19:20
Сообщение #65


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

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



2 Elven king делаешь шкурку со свойствами. Код впихивай хоть куда.
Код

void main()
{
 object oPC = GetFirstPC();
 DestroyObject(GetItemInSlot(INVENTORY_SLOT_CARMOUR, oPC)); // если уже висит какая-нибудь шкурка
 object oItm = CreateItemOnObject("ResRef шкурки", oPC, 1);
 AssignCommand(oPC, ActionEquipItem(oItm,  INVENTORY_SLOT_CARMOUR));
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Вестель
сообщение Jun 17 2004, 19:46
Сообщение #66


Level 7
**

Класс: Чемпион Торма
Характер: Chaotic Good
Раса: Человек
NWN: DM



В догонку:

как в том же диалоге сделать, чтобы до тех пор пока пользователь не выбрал "Выход" у него были одни и те же фразы?

Скрипт работает, только НПС почему-то не невидимый.. Как сделать? Я в непонятках.. Пробывал на него Перманентный Импрувнутый Инвиз вешать - не помогает..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение Jun 17 2004, 21:15
Сообщение #67


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Цитата
как в том же диалоге сделать, чтобы до тех пор пока пользователь не выбрал "Выход" у него были одни и те же фразы?

Делаешь Copy строки на которую надо переходить постоянно и вставляешь ее как Paste As Link в конец "цикличных" веток диалога.

Цитата
Скрипт работает, только НПС почему-то не невидимый.. Как сделать? Я в непонятках.. Пробывал на него Перманентный Импрувнутый Инвиз вешать - не помогает..

Не надо инвизов. В палитре есть невидимый непись. Полистай Appearance в свойствах существа. Invisible Creature вроде называется...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 17 2004, 21:36
Сообщение #68


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

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



Вестель как ты представляешь диалог, если твой персонаж за три девять земель? (IMG:style_emoticons/kolobok_light/biggrin.gif) Тогда уж так:

Код

void main()
{
object oPC = GetFirstPC();
object oMCS=GetObjectByTag("MCS_TALKMAN");
AssignCommand(oMCS, ActionJumpToObject(oPC));
AssignCommand(oMCS, ActionStartConversation(oPC,"dlg_testdialog",TRUE, TRUE));
}

Но если этот персонаж будет так же использован другим игроком? Лучше сделай код таким как я написал выше в посте. Создал, дестроил объект.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Вестель
сообщение Jun 18 2004, 09:05
Сообщение #69


Level 7
**

Класс: Чемпион Торма
Характер: Chaotic Good
Раса: Человек
NWN: DM



Создаваю, дестрою..
Цитата
В палитре есть невидимый непись. Полистай Appearance в свойствах существа. Invisible Creature вроде называется...

Null Human в моей (vts027) версии Toolset'а оно завется.. Но Invisible Creature я искал долго.. Теперь все работает..

Теперь если можно, расскажите по подробнее, как с токенами работать..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение Jun 18 2004, 15:30
Сообщение #70


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



Токены устанавливаются через SetCustomToken(400, "стринг"); // 400 - это пример номера
Затем в диалоге ты просто пишешь <CUSTOM400> и вместо него в игре в диалоге появляется "стринг".

Вот и все (IMG:style_emoticons/kolobok_light/wink3.gif) .
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Jun 18 2004, 16:09
Сообщение #71


Level 10
***

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



Я для вот думал как сделать такой скриптик ...
Заходит игрок в гостиницу отдохнуть, снимает номерок. Заходит туда и жмет рест. на ресте с него снимаются все шмотки и кладуться в шкаф а сам он рухает спать на коврик. Вокруг него темнеет сон длится минуту. Но это я все знаю как реализовать. Я вот что хотел:
Значит пока он спит рандомно в случае 1 из 40 допустим, включается SetCutScene то несть он не может отменить сон и управлять не может. В коридоре гостиницы появляется воришка, камера переходит к нему, он делает вид что ковыряется в двери, дверка открывается, он вскрывает шкаф со шмотом ПС копается там. После этого воришка убегает, CutScene заканчивается перс в стает и недощитывается в шкафу рандомно 2х вещей.

З.Ы. Но шмотки удалятся только если воришка откроет сундук, потому что вдруг там засаду устроят(IMG:style_emoticons/kolobok_light/wink3.gif) ))
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 18 2004, 20:45
Сообщение #72


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

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



Аваддон это можно реализовать, достаточно просто. Во время отдыха запускай функцию Random и как только получишь нужный вариант просто на задержку ставь скрипт, вот кусок кода:

Код

void main()
{
object oPC = GetFirstPC(); // или как надо определи оРС
int i = (Random(100));
if (i < 5)
 {
 DelayCommand(20.0, ExecuteScript("скрипт_сценки", oPC));
 }
}


Но тебе надо будет круто нарисовать катсценку. Вней все вейпы бери GetNearest**** что бы можно было в нескольких местах использовать. Ну и соответственно вейпы и прочее расставь везде.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Jun 18 2004, 21:58
Сообщение #73


Level 10
***

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



Ага, я вот еще что хотел спросить.
У меня GetObjectByTag отлично работает, а вот GetNearestObjectByTag вообще НОЛЬ! Не работает. Или надо это делать как AssignCommand?
Добавлено в [mergetime]1087585512[/mergetime]
P.S. 1. Зачем нужна задержка?
2.Как я понял Инта рандомно выпадает от 0 до 100, и если она меньше 5 то скрипт пускается? А как сделать чтобы вероятность была 1 из 40?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 18 2004, 22:37
Сообщение #74


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

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



Цитата
У меня GetObjectByTag отлично работает, а вот GetNearestObjectByTag вообще НОЛЬ! Не работает.

Не можеть такого быть. (IMG:style_emoticons/kolobok_light/shok.gif) Это одно и то же, только второе берет БЛИЖАЙШИЙ объект с таким тегом.
Задержка нужна для красоты (IMG:style_emoticons/kolobok_light/crazy.gif) просто будет прикольней отдохнуть немного и бац! Сценка.
Ну так посчитай, сделай рандом из 40 и прировняй int к постоянному числу, например 10. Будет твой результат. Но я что то не помню что бы 40 раз отдыхал в игре. Лучше уж 25% или 30...
Добавлено в [mergetime]1087587538[/mergetime]
У тебя объект надеюсь в ЭТОЙ ЛОКАЦИИ где происходит действие кат сценки? :?)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Jun 19 2004, 00:52
Сообщение #75


Level 10
***

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



Да, только Nearest я так к слову спросил потому что, у меня такая вещь на отдыхе - когда костер разжигаешь - дрова должны изчезнуть. Когда я пишу DestroyObject(GetNearestObjectByTag("rest_wood")); дрова не изчезают хотя я стою рядом с ними, но стоит мне написать DestroyObject(GetObjectByTag("rest_wood")); и бац - все работает.. Не понимаю в чем дело.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

146 страниц V  < 1 2 3 4 5 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 22nd April 2018 - 15:31