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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
9 страниц V  « < 4 5 6 7 8 > »   
Ответить в эту темуОткрыть новую тему
> ПОСТРОЕНИЕ СКРИПТОВЫХ СЦЕН, Основы написания Cutscene
Lex
сообщение May 4 2006, 17:56
Сообщение #121


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

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



QUOTE(Chimeric @ May 4 2006, 18:21) [snapback]80750[/snapback]
тот "бокс" в Свойствах не делает ничего)

он для другого.
зы: не забыть после разговора катсцену снять.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Chimeric
сообщение May 5 2006, 11:38
Сообщение #122


Пушкин
Иконки Групп

Класс: Обыватель
Характер: Chaotic Neutral
Раса: Гигант
NWN: Тексты



Сейчас у меня стоит вот что в ActionTaken первых строк разговора, принадлежащих NPC.

NSS
void main()
{

SetCutsceneMode(GetPCSpeaker(), TRUE);

}


Результат: разговор не происходит, начинается фильм, из которого не выбраться не Эскейпом и никак иначе.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение May 5 2006, 12:07
Сообщение #123


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

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



Попробуй установить режим кутсцены до начала диалога.
(Например при наступании на триггер, вход в локу и т.п...)

Сообщение отредактировал Dik Morris - May 5 2006, 12:10
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Chimeric
сообщение May 5 2006, 12:19
Сообщение #124


Пушкин
Иконки Групп

Класс: Обыватель
Характер: Chaotic Neutral
Раса: Гигант
NWN: Тексты



Что же мне, каждый раз так изворачиваться? У меня диалогов тьма. Пробовал, между прочим, вписать OWNER_SELF через oTarget вместо игрока, тогда вообще ничего не происходит.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 5 2006, 12:26
Сообщение #125


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

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



не, зачем же так?
стандартный скрипт на начало разговора nw_c2_default4 берем и впихиваем туда сценку:

NSS
//:://////////////////////////////////////////////////
//:: nw_c2_default4
/*
  Default OnConversation event handler for NPCs.

*/

//:://////////////////////////////////////////////////
//:: Copyright © 2002 Floodgate Entertainment
//:: Created By: Naomi Novik
//:: Created On: 12/22/2002
//:://////////////////////////////////////////////////

#include "nw_i0_generic"

void main()
{
    // See if what we just 'heard' matches any of our
    // predefined patterns
    int nMatch = GetListenPatternNumber();
    object oShouter = GetLastSpeaker();
    object oSelf = OBJECT_SELF;

    if (nMatch == -1)
    {
        // Not a match -- start an ordinary conversation
        if (GetCommandable(OBJECT_SELF))
        {
            if (GetIsPC(oShouter))
                SetCutsceneMode(oShouter, TRUE); // наша катсцена
            ClearAllActions();
            BeginConversation();
        }
    }
    // Respond to shouts from friendly non-PCs only
    else if (GetIsObjectValid(oShouter)
              && !GetIsPC(oShouter)
              && GetIsFriend(oShouter))
    {
        object oIntruder = OBJECT_INVALID;
        // Determine the intruder if any
        if(nMatch == 4)
        {
            oIntruder = GetLocalObject(oShouter, "NW_BLOCKER_INTRUDER");
        }
        else if (nMatch == 5)
        {
            oIntruder = GetLastHostileActor(oShouter);
            if(!GetIsObjectValid(oIntruder))
            {
                oIntruder = GetAttemptedAttackTarget();
                if(!GetIsObjectValid(oIntruder))
                {
                    oIntruder = GetAttemptedSpellTarget();
                    if(!GetIsObjectValid(oIntruder))
                    {
                        oIntruder = OBJECT_INVALID;
                    }
                }
            }
        }

        // Actually respond to the shout
        RespondToShout(oShouter, nMatch, oIntruder);
    }

    // Send the user-defined event if appropriate
    if(GetSpawnInCondition(NW_FLAG_ON_DIALOGUE_EVENT))
    {
        SignalEvent(OBJECT_SELF, EventUserDefined(EVENT_DIALOGUE));
    }
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elf-Drow
сообщение May 5 2006, 15:31
Сообщение #126


Level 8
***

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



По моему, достаточно просто сделать так:
З.Ы.:В своем модуле проверял...
NSS
void main()
{
SetCutsceneMode(GetFirstPC());
ActionStartConversation(GetFirstPC(), "Res Ref диалога");
}


Можно на триггер какой-нить поставить или но OnConversation, но дык на энто не пробовал...

Сообщение отредактировал Elf-Drow - May 5 2006, 15:31
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение May 5 2006, 18:11
Сообщение #127


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

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



QUOTE(Elf-Drow @ May 5 2006, 16:31) [snapback]80835[/snapback]
Можно на триггер какой-нить поставить или но OnConversation, но дык на энто не пробовал...

Стандартный диалоговый скрипт (nw_c2_default4) есть у каждого НПС после его размещения на карте. Зачем находить себе лишний геморой, если можно одну строчку написать?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 5 2006, 18:16
Сообщение #128


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

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



не знаю как ты проверял, но данный скрипт на триггере запустит диалог с триггером в режиме катсцены. а надо то с НПС.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Chimeric
сообщение May 5 2006, 18:45
Сообщение #129


Пушкин
Иконки Групп

Класс: Обыватель
Характер: Chaotic Neutral
Раса: Гигант
NWN: Тексты



Что ж, рецепт Феникса помог. Штука, конечно, в том, что теперь на все-все ветки в конце придется ставить скрипт, выключающий режим фильма...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Neo
сообщение May 5 2006, 19:09
Сообщение #130



Иконки Групп

Класс: Пьяный Мастер
Характер: Lawful Good
Раса: Тварь
MySQL, PHP, JavaScript
Порядок Времени



Chimeric (IMG:style_emoticons/kolobok_light/wink3.gif) дык есть и стандартный скрипт запускаемый при завершении диалога, добавь еще и туда строчку
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 5 2006, 19:16
Сообщение #131


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

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



Хм. Данную проблему решал давно и с успехом. Извиняюсь что так поздно заглянул в тему...
В каждом диалоге, создаешь служебную корневую строку В САМОМ ВЕРХУ. Она никогда не появится, но будет работать на нас. На нее вешаешь скрипт первый. Самое главное запомни, если на РС навешать функцию катсцены два раза или три то будут глюки. Это даже в комментах биовар есть. Второй скрипт вешаешь на строку в диалоге. Все.
NSS
//:://////////////////////////////////////////////
//:: Включаем РС режим катсцены
//:: Copyright © 2005 WRG!
//:://////////////////////////////////////////////
//:: Created By: Aiwan
//:: Created On: 30.12.2005
//:://////////////////////////////////////////////

int StartingConditional()
{
    object oPC = GetPCSpeaker();
    object oSelf = OBJECT_SELF;
//-------------------------------------------------------
    if(GetCutsceneMode(oPC)==FALSE)
    {
      SetCutsceneMode(oPC, TRUE);
      AssignCommand(oSelf, ClearAllActions(TRUE));
      AssignCommand(oSelf, ActionStartConversation(oPC));
    }
    return FALSE;
}


NSS
//:://////////////////////////////////////////////
//:: Отключает РС режим катсцены
//:: Copyright © 2005 WRG!
//:://////////////////////////////////////////////
//:: Created By: Aiwan
//:: Created On: 30.12.2005
//:://////////////////////////////////////////////

void main()
{
    object oPC = GetPCSpeaker();
    if(GetCutsceneMode(oPC)==TRUE)
    {
      SetCutsceneMode(oPC, FALSE);
    }
}


QUOTE(Chimeric @ May 5 2006, 21:45) [snapback]80877[/snapback]
выключающий режим фильма...

Проверь на хертбите НПС, если он разговаривает и с объектом РС, то ретурн. Если не разговаривает то катсцену удали у РС. Так в ПЛ было.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 5 2006, 21:46
Сообщение #132


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

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



QUOTE(Aiwan @ May 5 2006, 20:16) [snapback]80883[/snapback]
Проверь на хертбите НПС, если он разговаривает и с объектом РС, то ретурн. Если не разговаривает то катсцену удали у РС. Так в ПЛ было.

там было на хб модуля
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение May 5 2006, 22:05
Сообщение #133


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

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



А еще проще поставить Alternative Core и все глобальные события как на ладоне. (IMG:style_emoticons/kolobok_light/biggrin.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение May 9 2006, 22:53
Сообщение #134


Level 8
***

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



привет,
доскажите почему на определенной фразе разговора не запускается КатСцена?
Такая же как на первой страничке первая катСцена от Айвана..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение May 9 2006, 23:37
Сообщение #135


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

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



в режиме диалога катсцена не врубается, насколько я знаю. Надо до, или после.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение May 11 2006, 00:54
Сообщение #136


Level 8
***

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



Lex, как определить конец диалога?
У меня кат-чцена была на последней фразе диалога (IMG:style_emoticons/kolobok_light/sad.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 11 2006, 09:11
Сообщение #137


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

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



Nashman, наши телепаты никак не могут тебе помочь? Могу сказать точную причину - ты что то затупил.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение May 11 2006, 21:01
Сообщение #138


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

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



QUOTE(Aiwan @ May 11 2006, 10:11) [snapback]81353[/snapback]
Nashman, наши телепаты никак не могут тебе помочь?

Открываю третий глаз. (IMG:style_emoticons/kolobok_light/biggrin.gif)
QUOTE(Aiwan @ May 11 2006, 10:11) [snapback]81353[/snapback]
Могу сказать точную причину - ты что то затупил.

Судя по имеющейся инфе:
QUOTE(Nashman @ May 9 2006, 23:53) [snapback]81225[/snapback]
Такая же как на первой страничке первая катСцена от Айвана..

Ты что-то намудрил в проверке:
NSS
if (!GetIsPC(oPC) || GetLocalInt(OBJECT_SELF, "TRIGGER") == 1)

Или что у тебя там.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение May 12 2006, 12:59
Сообщение #139


Level 8
***

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



Мне нужно сделать такое(это ка-сценка):
Появляется ПС возле НПС, далее после разговора выбирается путь куда они пойдут, в зависимости от варианта ответа ПС...

ПС: Примерно такую сценку надо сделать (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение May 12 2006, 13:08
Сообщение #140


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

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



Nachman

Ну, а какие проблемы то ?
Отслеживай игрока, включай режим кутсцены, начинай диалог...

PS: готовый код в этой теме никто выкладывать не будет - тема не о том. (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 12 2006, 15:48
Сообщение #141


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

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



Зачем сцека вообще? Там все в диалоге решается. Строка выход.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virusman
сообщение May 18 2006, 23:48
Сообщение #142


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

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



Модуль в первом посте топика отсутствует..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 19 2006, 06:13
Сообщение #143


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

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



Тебе что надо то? Говори выложу (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Nashman
сообщение May 20 2006, 15:21
Сообщение #144


Level 8
***

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



Спасибо Айв., но уже все(IMG:style_emoticons/kolobok_light/wink3.gif) ,
Только вопрос есть у меня, знаю не очень хороший, так, как ответ где-то видел но вот где не знаю....
Вопрос:
Как камерой управлять? Типа понять смыл этих цифр.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение May 20 2006, 15:51
Сообщение #145


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

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



QUOTE(Nashman @ May 20 2006, 18:21) [snapback]82380[/snapback]

Вопрос:
Как камерой управлять? Типа понять смыл этих цифр.


Читаем мануал:

QUOTE
CAMERA_TRANSITION_TYPE_SNAP немедленно переместит камеру на новую позицию, тогда как другие типы, перемещают постепенно в позицию.
CAMERA_TRANSITION_TYPE_MEDIUM - переместит камеру в то положение, которое мы укажем из исходного.

SetCameraFacing(0.0, 20.0, 45.0);
(0.0f=East, 90.0f=North, 180.0f=West, 270.0f=South) начертите на бумаге схему с градусами и сторонами света, вам будет удобнее ориентироваться.
20.0 удаление от игрока. (Мин 5 мах 20)
45.0 наклон (1 - вертикально, 50.0 мах почти в горизонт)


Сообщение отредактировал Dik Morris - May 20 2006, 15:53
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

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

 



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