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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 59 60 61 62 63 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
Dik Morris
сообщение Jun 23 2005, 13:31
Сообщение #1486


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

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



Спасибо брат!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Агрессинг
сообщение Jun 23 2005, 13:55
Сообщение #1487


Level 5
**

Класс: Убийца
Характер: True Neutral
Раса: Чудовище



Dik Morris
Вот скрипт - отнимаются хиты при атаке, как заказывали.
Ставь галочку на дереве напротив ИСПОЛЬЗУЕМЫЙ а на OnDamaged дерева такой скрипт
Neverwinter Script Source
void main()
{
   object oNPC = GetNearestObjectByTag("ТЕГ ДРИАДЫ");

   int nDamageNPC = GetCurrentHitPoints(oNPC) - GetCurrentHitPoints(OBJECT_SELF); // назначаем переменную ПоврежденияНПС, ты можешь назвать ее как хочешь : nDamageDRIADA например

   if (nDamageNPC > 0) // если повреждения больше нуля, а то зачем ноль нужен?
   {
       ApplyEffectToObject(DURATION_TYPE_INSTANT,[color=red]EffectDamage(nDamageNPC),[/color]oNPC); // назначаем (выделенно красным, назначаем его как переменную, которую мы обозначили раньше) и применяем эффект повреждений,        
// если хочешь, чтобы после атаки на дерево НПС становился враждебным, добавь в конец скрипта это:
       SetIsTemporaryEnemy(GetLastAttacker(),oNPC);
 
 }
}



Сообщение отредактировал Агрессинг - Jun 24 2005, 13:23
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 24 2005, 09:12
Сообщение #1488


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



Тут собрался делать модуль
1) как после диалога включить у НПС анимацию смерти?
2) В проклятье Левора, когда в начале дядька умирает, появляется призрак, а потом прыгает вверх и исчезает. Как показать это в скриптах?
3)Тут было такое:
ВОПРОС
Как сделать чтобы при заходе игрока на триггер NPC начинал диалог?

ОТВЕТЫ

Neverwinter Script Source
void main()
{
    object oPC = GetEnteringObject(); // Тот идиот что встал на триггер
    if (!GetIsPC(oPC) || GetLocalInt(OBJECT_SELF, "TRIGGERED") == 1)
        return;
// Если это был не игрок, а кто то еще (матрица рулит), или он уже
// наступал в это дерьмо один раз, то скрипт не сработает
    object oNPC = GetNearestObjectByTag("ТАГ_НПС");
//  Тот придурок что должен сказать ПРИВЕТ!
    AssignCommand(oPC, ClearAllActions());
    AssignCommand(oNPC, ClearAllActions());
    AssignCommand(oNPC, SpeakString("Эй, придурок! Я к тебе обращаюсь!"));
//  Использую не ActionSpeakString, что бы НПС говорил фразу делаЯ что велено дальше
    AssignCommand(oPC, ActionDoCommand(SetFacingPoint(GetPosition(oNPC))));
//  Повернем мордой лица РС к НПС
    AssignCommand(oPC, ActionSpeakString("Ну, ванючка! Держись!"));
//  Тут наоборот, жду когда повернетсЯ и ТОГДА ответит
    AssignCommand(oNPC, ActionForceMoveToObject(oPC, FALSE, 1.0, 15.0));
    AssignCommand(oNPC, ActionStartConversation(oPC));
    AssignCommand(oNPC, ActionDoCommand(SetCommandable(TRUE, oNPC)));
// Убедительно просим оНПС подойти к РС и сказать что велено! И не ЗАБЫТЬ!
    DelayCommand(0.3, SetCommandable(FALSE, oNPC)); // типа что бы не забыл
    SetLocalInt(OBJECT_SELF, "TRIGGERED", 1); // Запомним что это ужо было
}



Какой тригер поставить, чтобы игрок случайно на него зашел, не видя сам тригер?
Заранее благодарен

Сообщение отредактировал SERGO - Jun 24 2005, 09:14
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jun 24 2005, 10:19
Сообщение #1489


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

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



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

QUOTE
1) как после диалога включить у НПС анимацию смерти?

В слот совершенные действия, на любую строчку диалога
Neverwinter Script Source
void main()
{
object oNPC = GetObjectByTag("ТАГ НПС");
effect oEf = EffectDeath(TRUE);

ApplyEffectToObject(DURATION_TYPE_INSTANT, oEf,oNPC);
}

QUOTE
2) В проклятье Левора, когда в начале дядька умирает, появляется призрак, а потом прыгает вверх и исчезает. Как показать это в скриптах?

Я в проклятье не играл :(, опиши по лучше или посмотри в ПЛ как это сделанно.

QUOTE
Какой тригер поставить, чтобы игрок случайно на него зашел, не видя сам тригер?

Тригер невидем, выделяются только тригеры с переходом в другую область.
Бери любой тригер и в OnEnter ставь этот скрипт.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 24 2005, 10:59
Сообщение #1490


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

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



SERGO, пока устное предупреждение (за создание темы без предварительного ознакомления с правилами раздела).
В след. раз будет раельное.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 24 2005, 12:45
Сообщение #1491


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



Я ставлю триггер генераций, но когда захажу на тригер, почемуто срабатывает ловушка и я побит этой проблемой :vava: :crazy:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Агрессинг
сообщение Jun 24 2005, 13:27
Сообщение #1492


Level 5
**

Класс: Убийца
Характер: True Neutral
Раса: Чудовище



SERGO
Какая ловушка? Может ты эффект смерти с ловушкой путаешь? Эффект смерти это когда герой умирает, а анимация смерти - когда падает и заданное время валяется на земле. Может тебе нужна именно анимация?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Buldog
сообщение Jun 24 2005, 13:51
Сообщение #1493


Level 5
**

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



А зачем ты ставишь тригер ловушки? Тебе нужен тригер типа Generic.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 24 2005, 13:53
Сообщение #1494


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



Вот че! Я ставля тригер генерации. Написано родовой. Настраиваю скрипт :swoon: (см. выше) Нажимаю ОК. Но когда опять захожу в свойства тригера он пишет не родовой а Ловушка!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Агрессинг
сообщение Jun 24 2005, 14:02
Сообщение #1495


Level 5
**

Класс: Убийца
Характер: True Neutral
Раса: Чудовище



SERGO
Сделай триггер Новый общий и на onEnter ставь скрипт. Проблем просто быть не может.

Сообщение отредактировал Агрессинг - Jun 24 2005, 14:03
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 24 2005, 20:58
Сообщение #1496


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



Тут еще пара вопросиков:
Как расставлять waypoint на карте?
Как прописать скрипт, чтобы НПС все время ходил по двум, трем... вайпоинтам без остановки.
Как прописать скрипт, чтобы НПС ходил по 2, 3 вайпоинтам например туда обратно 2 раза.
И еще, как прописать следующие. Охранник стоит на посту весь день, как тока начинается ночь, из двери выходит другой охранник, говорит "Иди! Моя смена!". Первый охранник уходит, а второй встает на его место и всю ночь там тарчит, потом они опять меняются, и так до бесконечности.
Как вставлять НПС анимацию, например просто ходит НПС (!без разговора!) и пьет!?



Заранее благодарен!!!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Archangel
сообщение Jun 24 2005, 21:23
Сообщение #1497


Восставший из пепла
***

Класс: Бледный Мастер
Характер: Neutral Evil
Раса: Человек
ПОДМАСТЕРЬЕ



QUOTE
Как расставлять waypoint на карте?

Что ты подразумеваешь под Вэйпоинтами? Точки маршрута, столы, стулья и т.д.?
Если точки маршрута, то в редакторе жми ВОЛШЕБНИЦЫ=>МАСТЕР ПУТЕЙ.

QUOTE
Как прописать скрипт, чтобы НПС все время ходил по двум, трем... вайпоинтам без остановки.

Вставляешь в OnHearBeat NPC такой скрипт:
Neverwinter Script Source
void main()
{
object oWP1= GetWaypointByTag("ТЭГ_ПЕРВОГО_ВЭЙПОИНТА");
object oWP2= GetWaypointByTag("ТЭГ_ВТОРОГО_ВЭЙПОИНТА");
ActionForceMoveToObject(oWP1);
ActionForceMoveToObject(oWP2);
}

QUOTE
Как прописать скрипт, чтобы НПС ходил по 2, 3 вайпоинтам например туда обратно 2 раза.

Смотри скрипт выше.
QUOTE
Как вставлять НПС анимацию, например просто ходит НПС (!без разговора!) и пьет!?

В OnHearBeat (или OnSpawn) NPC вставляей этот скрипт:
Neverwinter Script Source
void main
{
ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK);
}

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

Нужен вот такой скрипт:
Neverwinter Script Source
void main()
{
object oNPC1 = GetObjectByTag("ТЭГ_ПЕРВОГО_ОХРАННИКА");
object oNPC2 = GetObjectByTag("ТЭГ_ВТОРОГО_ОХРАННИКА");
object oWP1= GetWaypointByTag("ТЭГ_ВЭЙПОИНТА_НА_УЛИЦЕ");
object oWP2= GetWaypointByTag("ТЭГ_ВЭЙПОИНТА_В_ЗДАНИИ(которому принадлежит дверь)");
object oDoor = GetObjectByTag("ТЭГ_ДВЕРИ");
if (GetIsDay() && GetLocalInt(oNPC1, "Day") != 1)
{
DelayCommand(1.0, AssignCommand(oNPC1, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(5.0, AssignCommand(oNPC1, ActionJumpToObject(oWP2)));
DelayCommand(9.0, AssignCommand(oNPC1, ActionForceMoveToObject(oNPC2,FALSE, 1.0, 7.0)));
DelayCommand(1.0, AssignCommand(oNPC2, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(5.0, AssignCommand(oNPC2, ActionJumpToObject(oWP1)));
SetLocalInt(oNPC1, "Day", 1);
SetLocalInt(oNPC1, "Night", 0);
return;
}
if (GetIsNight()&& GetLocalInt(oNPC1, "Night") != 1)
{
DelayCommand(1.0, AssignCommand(oNPC2, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(5.0, AssignCommand(oNPC2, ActionJumpToObject(oWP2)));
DelayCommand(9.0, AssignCommand(oNPC2, ActionForceMoveToObject(oNPC1,FALSE, 1.0, 7.0)));
DelayCommand(11.0, AssignCommand(oNPC2, SpeakString("Иди отдыхай. Теперь моя смена.")));
DelayCommand(13.0, AssignCommand(oNPC1, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(17.0, AssignCommand(oNPC1, ActionJumpToObject(oWP1)));
SetLocalInt(oNPC1, "Day", 0);
SetLocalInt(oNPC1, "Night", 1);
return;
}
}

Это очень упрощенная версия скрипта. Может найдутся люди, которые напишут его подробнее, а у меня сейчас времени нет. ;)
З.Ы.:
Также не исключаю наличие ошибок в скриптах. Тулсета под рукой нет.


Сообщение отредактировал Archangel - Jun 24 2005, 21:37
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 24 2005, 21:59
Сообщение #1498


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

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



SERGO не мучайся сам и не мучай нас переводом тулсета. Там такая чушь... Ставь английский и делай, а играть можешь на русском.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Tiger Greyhawk
сообщение Jun 25 2005, 04:45
Сообщение #1499



Иконки Групп

Класс: Обыватель
Характер: Chaotic Good
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE (Archangel @ Jun 24 2005, 22:23)
.
QUOTE
Как прописать скрипт, чтобы НПС все время ходил по двум, трем... вайпоинтам без остановки.
Вставляешь в OnHearBeat NPC такой скрипт:
Neverwinter Script Source
void main()
{
object oWP1= GetWaypointByTag("ТЭГ_ПЕРВОГО_ВЭЙПОИНТА");
object oWP2= GetWaypointByTag("ТЭГ_ВТОРОГО_ВЭЙПОИНТА");
ActionForceMoveToObject(oWP1);
ActionForceMoveToObject(oWP2);
}

1. Таким образом очень быстро забьется стек акций патрулируещего.
2. Патрулирующий ни на что не будет реагировать. Даже если его будут убивать... :crazy:

Есть функция WalkWayPoints. Через нее и надо делать, имо. Она требует #include "NW_I0_GENERIC"
Как ею пользоваться: просто создать вейпы с тагами "WP_" + таг патрулируещего + "_0#". Например: "WP_NPC_01", "WP_NPC_02" и т.д.
А когда надо заставить непися начать ходить по ним: WalkWayPoints(FALSE, 1.0); (в OnSpawn стандартных неписей это, вроде, уже даже раскоментировано) FALSE - ходить, TRUE - бегать. 1.0 - пауза в секундах между следованием к след. вейпу.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 25 2005, 07:25
Сообщение #1500


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



Спасибы, чбы я без вас делал!
Добавлено в [mergetime]1119674528[/mergetime]
А как сделать, чтобы вот эта анимация питья делалась очень редко! А то она уж слишком частая!
Добавлено в [mergetime]1119674632[/mergetime]
и вот еще
Tiger Greyhawk
Я делал по твоей инструкции, и получилось так, что НеПиСь при попытке разговора поворачивается, есть диалог, а дальше он по точкам не ходит. Как сделать чтобы он и далльше ходил? (после диалога)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jun 25 2005, 13:01
Сообщение #1501


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

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



SERGO“А как сделать, чтобы вот эта анимация питья делалась очень редко! А то она уж слишком частая!”
На onHeartBeat обьекта поставь:

void main()
{
ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK,1.0f,15.0f);
}
П.С: обрати внимание, что ты можешь сам регулировать скорость проигрывания той или иной анимации, (в данном случае питья), 1.0f, - это скорость с которой НПС проигрывает анимацию, а 15.0f, - время проигрывания.

Как прописать скрипт, чтобы НПС все время ходил по двум, трем... вайпоинтам без остановки.
Насчет этого сильно голову не надо забивать, просто создай вайпоинты (сколько хочешь, можно хоть 20 - 30) выбери их и нажми: СОЗДАТЬ НАБОР, там пиши: WP_ + ТЭГ СОЗДАНИЯ. Все.
П.С: у создания (ходящего по вайпоинтам должен быть уникальный ТЭГ)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 25 2005, 14:11
Сообщение #1502


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



как в таком коде зделать так, чтобы НеПиСь после диалога сного начал ходит по точкам?
Neverwinter Script Source
#include "NW_I0_GENERIC"
void main()
{
   ActionSpeakString("Hmm, where's my horse?");
   WalkWayPoints(FALSE, 5.0);
}


Не на Херт Бит а на Спаун

Сообщение отредактировал SERGO - Jun 25 2005, 14:54
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 25 2005, 14:34
Сообщение #1503


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

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



QUOTE (Dik Morris @ Jun 25 2005, 16:01)
На onHeartBeat обьекта поставь:

не надо ставить на ХертБит ничего. :no:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jun 25 2005, 19:50
Сообщение #1504


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

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



Решил тут я квест сделать...Без МАСТЕРА СЮЖЕТА...И сразу вопрос назрел выложте кому не трудно скриптик чтобы после убийства определенного НПС обновлялся журнал.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Tiger Greyhawk
сообщение Jun 26 2005, 04:22
Сообщение #1505



Иконки Групп

Класс: Обыватель
Характер: Chaotic Good
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE (SERGO @ Jun 25 2005, 08:25)
Я делал по твоей инструкции, и получилось так, что НеПиСь при попытке разговора поворачивается, есть диалог, а дальше он по точкам не ходит. Как сделать чтобы он и далльше ходил? (после диалога)

ммм... мне непонятно, почему у тебя возникает этот вопрос :xz: если ты сделал все правильно. Непись, вроде, должна после разговора продолжать ходить по вейпам. В крайнем случае, попробуй на все ветки окончания разговора повесить еще раз WalkWayPoints, но это, по идее, глупый совет. Должно и так все работать.

QUOTE (SERGO @ Jun 25 2005, 08:25)
А как сделать, чтобы вот эта анимация питья делалась очень редко! А то она уж слишком частая!
Делай проверки. К примеру:
if мояпеременная = 0
{
поставить переменную в значение 1;
выполнить анимацию ;
задержка (60 сек, поставить переменную в значение 0);
}

QUOTE (Dik Morris @ Jun 25 2005, 20:50)
Решил тут я квест сделать...Без МАСТЕРА СЮЖЕТА...И сразу вопрос назрел выложте кому не трудно скриптик чтобы после убийства определенного НПС обновлялся журнал.

А зачем оно тебе? Если тебе надо разобраться в скриптах, то начни с задачи попроще. А если надо готовый квест сделать, то используй визард. Если ты расчитываешь, что все время тебе будут выдавать готовые скрипты, то я тебя разочрую, придется разбираться самому(на основе того, что тебе делает визард, можно разобраться. + конечно же, лексикон). Если тебе непонятна какая-то конкретная проблема, то да, поможем. Сорри. :xz:
функция для строки журнала (естественно, журнал должен содержать эти строки):
Neverwinter Script Source
AddJournalQuestEntry(string szPlotID, int nState, object oCreature, int bAllPartyMembers=TRUE, int bAllPlayers=FALSE, int bAllowOverrideHigher=FALSE)

szPlotID - таг записи журнала
nState - "выполненность": номер строки в журнале. Ставится в самом журнале. (там есть флаг завершенности квеста)
oCreature - объект для записи журнала (т.е. игрок)
bAllPartyMembers - TRUE - для всей партии в которой состоит oCreature, FALSE - только для oCreature
bAllPlayers - вообще для всех игроков в модуле
bAllowOverrideHigher - разрешено ли "понижать строки". Если TRUE и была достигнута более "высокая" строка, то она "понизиться" на это значение. Если  FALSE (по-умолчанию), то строки будут только повышаться.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 26 2005, 12:12
Сообщение #1506


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



Народ, мона кому нить в Аську пописать вопросы, а то тут уж больно долго ждать ответы на поставленные вопросы?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
defolt
сообщение Jun 26 2005, 12:20
Сообщение #1507


Level 8
***

Класс: Рейнджер
Характер: Chaotic Evil
Раса: Нежить



QUOTE (SERGO @ Jun 26 2005, 12:12)
Народ, мона кому нить в Аську пописать вопросы, а то тут уж больно долго ждать ответы на поставленные вопросы?


иди на канал WRG, там должны помочь, ведь для чего то он все таки нужен...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 26 2005, 16:16
Сообщение #1508


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



QUOTE (Archangel @ Jun 24 2005, 21:23)


Нужен вот такой скрипт:
Neverwinter Script Source
void main()
{
object oNPC1 = GetObjectByTag("ТЭГ_ПЕРВОГО_ОХРАННИКА");
object oNPC2 = GetObjectByTag("ТЭГ_ВТОРОГО_ОХРАННИКА");
object oWP1= GetWaypointByTag("ТЭГ_ВЭЙПОИНТА_НА_УЛИЦЕ");
object oWP2= GetWaypointByTag("ТЭГ_ВЭЙПОИНТА_В_ЗДАНИИ(которому принадлежит дверь)");
object oDoor = GetObjectByTag("ТЭГ_ДВЕРИ");
if (GetIsDay() && GetLocalInt(oNPC1, "Day") != 1)
{
DelayCommand(1.0, AssignCommand(oNPC1, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(5.0, AssignCommand(oNPC1, ActionJumpToObject(oWP2)));
DelayCommand(9.0, AssignCommand(oNPC1, ActionForceMoveToObject(oNPC2,FALSE, 1.0, 7.0)));
DelayCommand(1.0, AssignCommand(oNPC2, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(5.0, AssignCommand(oNPC2, ActionJumpToObject(oWP1)));
SetLocalInt(oNPC1, "Day", 1);
SetLocalInt(oNPC1, "Night", 0);
return;
}
if (GetIsNight()&& GetLocalInt(oNPC1, "Night") != 1)
{
DelayCommand(1.0, AssignCommand(oNPC2, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(5.0, AssignCommand(oNPC2, ActionJumpToObject(oWP2)));
DelayCommand(9.0, AssignCommand(oNPC2, ActionForceMoveToObject(oNPC1,FALSE, 1.0, 7.0)));
DelayCommand(11.0, AssignCommand(oNPC2, SpeakString("Иди отдыхай. Теперь моя смена.")));
DelayCommand(13.0, AssignCommand(oNPC1, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(17.0, AssignCommand(oNPC1, ActionJumpToObject(oWP1)));
SetLocalInt(oNPC1, "Day", 0);
SetLocalInt(oNPC1, "Night", 1);
return;
}
}

Это очень упрощенная версия скрипта. Может найдутся люди, которые напишут его подробнее, а у меня сейчас времени нет. ;)
З.Ы.:
Также не исключаю наличие ошибок в скриптах. Тулсета под рукой нет.

Ну я сделал, теперь первый охранник уходит появляет ся второй, второй-же за ним уходит, и они вместе стоят в таверне!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Archangel
сообщение Jun 26 2005, 16:32
Сообщение #1509


Восставший из пепла
***

Класс: Бледный Мастер
Характер: Neutral Evil
Раса: Человек
ПОДМАСТЕРЬЕ



Ща посмотрим... так, так... Для начала надо переделать это:
Neverwinter Script Source
DelayCommand(13.0, AssignCommand(oNPC2, ActionForceMoveToObject(oDoor,FALSE, 1.0, 7.0)));
DelayCommand(18.0, AssignCommand(oNPC2, ActionJumpToObject(oWP1)));

А куда ты вообще ставил этот скрипт? Все остальное, в принципе, должно работать.

Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
SERGO
сообщение Jun 26 2005, 18:29
Сообщение #1510


Level 2
*

Класс: Теневой Танцор
Характер: Neutral Good
Раса: Эльф



QUOTE
А куда ты вообще ставил этот скрипт? Все остальное, в принципе, должно работать.

Я вставлял в Свойства Области -> События -> OnHeartBeat
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

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

 



Текстовая версия Сейчас: 15th July 2025 - 07:41