• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!

Вопросы по скриптингу

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
  • Первое сообщение
  • #1
Прежде чем задавать вопросы, ознакомьтесь с документацией..
1) Читать онлайн
2) Архив с офлайн-версией(chm) во вложении
 

Вложения

  • Vam_tutor.rar
    171,6 KB · Просмотры: 560
Последнее редактирование модератором:

Haart

Участник форума
Регистрация
24 Окт 2011
Сообщения
188
Благодарности
106
Баллы
185
последние кадры код функции..
Точно, не досмотрел до конца, полез в соурсер искать функцию :). А есть где инструкция, как закомпилить с cpp на аст ?) А то я тыкался, но не увидел нигде.
 

Haart

Участник форума
Регистрация
24 Окт 2011
Сообщения
188
Благодарности
106
Баллы
185

Bra

Участник форума
Регистрация
28 Дек 2016
Сообщения
38
Благодарности
19
Баллы
160
Не могу вывести диалог на экран - при выборе строки диалога героем меню на секунду исчезает, будто начинается диалог, и снова отображается, будто он закончился.
Если вместо DIA_Ardo_Hello в аргументе AI_Output() вставляю уже существующие фразы в игре (в том числе неозвученные, добавленные раньше), то выводится текст другой фразы, а не то, что написано в моем коменте. (Будто мне надо где-то инициализировать имя DIA_Ardo_Hello).

Код:
instance DIA_Ardo_Hello(C_INFO)
{
    npc = VLK_6000_Ardo;
    nr = 1;
    permanent = TRUE;
    condition = AlwaysTrue;
    information = DIA_Ardo_Hello_Info;
    description = "Ты кто, что делаешь, дай квест";
};

func int DIA_Ardo_Hello_Info()
{
    AI_Output(other, self, "DIA_Ardo_Hello_15_00"); //Ты кто, что делаешь, дай квест (пожалуста)
    AI_Output(self, other, "DIA_Ardo_Hello_14_01"); //Купец, курю. Принеси яйцо!
    AI_Output(other, self, "DIA_Ardo_Hello_15_02"); //Я посмотрю, что можно сделать
};

Нашла такой вопрос на magic-team.ru, 2008 года, но тогда там так и не разобрались что происходит)
 

Lorddemonik

★★★★★
Редактор раздела
Регистрация
17 Дек 2011
Сообщения
1.109
Благодарности
580
Баллы
350
Не могу вывести диалог на экран - при выборе строки диалога героем меню на секунду исчезает, будто начинается диалог, и снова отображается, будто он закончился.
Если вместо DIA_Ardo_Hello в аргументе AI_Output() вставляю уже существующие фразы в игре (в том числе неозвученные, добавленные раньше), то выводится текст другой фразы, а не то, что написано в моем коменте. (Будто мне надо где-то инициализировать имя DIA_Ardo_Hello).

Код:
instance DIA_Ardo_Hello(C_INFO)
{
    npc = VLK_6000_Ardo;
    nr = 1;
    permanent = TRUE;
    condition = AlwaysTrue;
    information = DIA_Ardo_Hello_Info;
    description = "Ты кто, что делаешь, дай квест";
};

func int DIA_Ardo_Hello_Info()
{
    AI_Output(other, self, "DIA_Ardo_Hello_15_00"); //Ты кто, что делаешь, дай квест (пожалуста)
    AI_Output(self, other, "DIA_Ardo_Hello_14_01"); //Купец, курю. Принеси яйцо!
    AI_Output(other, self, "DIA_Ardo_Hello_15_02"); //Я посмотрю, что можно сделать
};

Нашла такой вопрос на magic-team.ru, 2008 года, но тогда там так и не разобрались что происходит)

Больше на недоделанный диалог похож.

Значит, что на мой взгляд было не так:

Condition содержит проверку условия, а что значит твое AlwaysTRUE понятие не имею.


Код:
func void DIA_Ardo_Hello_Condition()
{
    return TRUE;
};

Ее добавть и в Condition пропиши
condition = DIA_Ardo_Hello_Condition;

Вот такое должно работать:

Код:
instance DIA_Ardo_Hello(C_INFO)
{
    npc = VLK_6000_Ardo;
    nr = 1;
    permanent = TRUE;
    condition = DIA_Ardo_Hello_Condition;
    information = DIA_Ardo_Hello_Info;
    description = "Ты кто, что делаешь, дай квест";
};

func int DIA_Ardo_Hello_Condition()
{
    return TRUE;
};


func int DIA_Ardo_Hello_Info()
{
    AI_Output(other, self, "DIA_Ardo_Hello_15_00"); //Ты кто, что делаешь, дай квест (пожалуста)
    AI_Output(self, other, "DIA_Ardo_Hello_14_01"); //Купец, курю. Принеси яйцо!
    AI_Output(other, self, "DIA_Ardo_Hello_15_02"); //Я посмотрю, что можно сделать
};
 
Последнее редактирование:

Bra

Участник форума
Регистрация
28 Дек 2016
Сообщения
38
Благодарности
19
Баллы
160
Олвейстру был, токо в другом файле (возвращаемый тип инт, воид не компилит):
Код:
func int AlwaysTrue()
{
    return TRUE;
};

Попробовала как у тебя, назвать по теме и положить в тот же файл (мало ли), но всеравно не сработало..
 

Lorddemonik

★★★★★
Редактор раздела
Регистрация
17 Дек 2011
Сообщения
1.109
Благодарности
580
Баллы
350
Олвейстру был, токо в другом файле (возвращаемый тип инт, воид не компилит):
Код:
func int AlwaysTrue()
{
    return TRUE;
};

Попробовала как у тебя, назвать по теме и положить в тот же файл (мало ли), но всеравно не сработало..
А почему у тебя

Код:
func int DIA_Ardo_Hello_Info()
{
    AI_Output(other, self, "DIA_Ardo_Hello_15_00"); //Ты кто, что делаешь, дай квест (пожалуста)
    AI_Output(self, other, "DIA_Ardo_Hello_14_01"); //Купец, курю. Принеси яйцо!
    AI_Output(other, self, "DIA_Ardo_Hello_15_02"); //Я посмотрю, что можно сделать
};

Когда должно быть
Func void?

Вот такое у меня сработало

Код:
instance DIA_Ardo_Hello(C_INFO)
{
    npc = BAU_983_Dragomir;
    nr = 1;
    permanent = TRUE;
    condition = DIA_Ardo_Hello_Condition;
    information = DIA_Ardo_Hello_Info;
    description = "Ты кто, что делаешь, дай квест";
};

func int DIA_Ardo_Hello_Condition()
{
    return TRUE;
};


func void DIA_Ardo_Hello_Info()
{
    AI_Output(other, self, "DIA_Ardo_Hello_15_00"); //Ты кто, что делаешь, дай квест (пожалуста)
    AI_Output(self, other, "DIA_Ardo_Hello_14_01"); //Купец, курю. Принеси яйцо!
    AI_Output(other, self, "DIA_Ardo_Hello_15_02"); //Я посмотрю, что можно сделать
};
Screenshot_62.png
Screenshot_63.png
 

Bra

Участник форума
Регистрация
28 Дек 2016
Сообщения
38
Благодарности
19
Баллы
160
Даже так не прокатило:( Может, както влияет что тестю всегда с включенным марвином...
 

Lorddemonik

★★★★★
Редактор раздела
Регистрация
17 Дек 2011
Сообщения
1.109
Благодарности
580
Баллы
350
Даже так не прокатило:( Может, както влияет что тестю всегда с включенным марвином...

Тогда как у меня все заработало? Скрипты скинь в личку, может ещё чем цепляется
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Народ вы хоть туториал Вама по скриптам читайте иногда, а то тупите ппц как..
 

Bra

Участник форума
Регистрация
28 Дек 2016
Сообщения
38
Благодарности
19
Баллы
160
нью гейм или загрузка?
ньюгейм!

Тогда как у меня все заработало? Скрипты скинь в личку, может ещё чем цепляется
Отправила

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

Kreol Nekr

Участник форума
Регистрация
21 Ноя 2014
Сообщения
229
Благодарности
109
Баллы
190
ньюгейм!


Отправила


О чем речь??
А почему у вас функция диалога стоит вместо функции условия? Поставьте int как условие, а void уже как саму функцию диалога.
func int DIA_Falk_news_condition()

{
return TRUE;
};

func void DIA_Falk_news_info()
{
AI_Output(other,self,"DIA_Falk_News_01_00"); //....
};
 

Bra

Участник форума
Регистрация
28 Дек 2016
Сообщения
38
Благодарности
19
Баллы
160
А почему у вас функция диалога стоит вместо функции условия? Поставьте int как условие, а void уже как саму функцию диалога.

Поправила у себя возвращаемый тип инфо-функции на void, но не прокатило(
Код:
func void DIA_Ardo_Hello_Info()
{
    ...
};

(Можно на ты??)
 

Kreol Nekr

Участник форума
Регистрация
21 Ноя 2014
Сообщения
229
Благодарности
109
Баллы
190
Поправила у себя возвращаемый тип инфо-функции на void, но не прокатило(
Код:
func void DIA_Ardo_Hello_Info()
{
    ...
};

(Можно на ты??)
Хорошо... Посмотри функцию ZS_Talk, возможно там что то... А какой именно диалог не срабатывает? только для конкретного НПС или для всех?
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Об уроках скриптинга, добавил скомпилированный *.chm файл в первый пост данной темы его же закрепил для отображения на всех страницах.
+ Линк на оригинальную тему форумов АГ.: М: Уроки скриптологии, будет полезно..

Важно: Если после скачивания будет пустой файл(возможно на новых осях), то в свойствах этого файла снимите блокировку.
 

Orc Hunter


Модостроитель
Регистрация
12 Окт 2013
Сообщения
1.269
Благодарности
1.667
Баллы
305
Здравствуйте, подскажите как с помощью Икаруса\Лего узнать какой предмет инвентаря сейчас в фокусе?
 

Oxbow

Участник форума
Регистрация
22 Дек 2017
Сообщения
265
Благодарности
33
Баллы
200
Добрый день.


У меня возникла проблема. Кто-нибудь может помочь?


Делал новую броню (ретекстур брони) по видео туториалу



При попытке одеть броню, игра вылетатет с ошибкой.
 

Вложения

  • Ошибка.png
    Ошибка.png
    34,4 KB · Просмотры: 143
Сверху Снизу