С Днём России!
  • 2.754
  • 6
Дорогие друзья! Поздравляю вас с Днём России! Этот праздник напоминает нам о богатой истории и культуре нашей страны, о её величии и непоколебимом духе народа! Желаю вам крепкого здоровья...
Новости Анонсирован Atomic Heart II
Новости Анонсирован ремастер Final Fantasy Tactics
  • 1.041
  • 1
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...
Новости Моддеры Oblivion Remastered нашли способ внедрения абсолютно любых скриптов
  • 1.237
  • 4
Сообщество моддинга Oblivion Remastered (ORM) переживает настоящий расцвет. После долгих месяцев работы, энтузиасты научили игру работать с мощным скриптовым языком Lua, открыв перед создателями...

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

Bjorn

Труженик
Участник форума
Регистрация
29 Дек 2011
Сообщения
492
Реакции
106
Баллы
60
Лучшие ответы
0
#21
Не, не, ты меня не понял :D
То что ты написал, это расписание дня для НПС, это я все знаю :)
Мне нужно что бы типа во время диалога он ел, типа разговаривают, пауза, нпс съедает, продолжается диалог...
Это что то вроде прочтения письма во время диалога, помнишь Пабло, он остановил гг и прям во время диалога достал записку и начал читать, так вот, мне это и нужно, только вместо прочтения записки, съедание пищи :)
Вот например функция прочтения записки - "B_UseFakeScroll();"
Мне нужна функция вызывающая анимацию съеданию еды у нпс ;)
 

Fase

Житель города
Участник форума
Регистрация
29 Янв 2012
Сообщения
109
Реакции
11
Баллы
27
Лучшие ответы
0
#22
Bjorn++

B_UseItem(self,ItFo_Booze); Это он пьёт самогон. Вместо ItFo_Booze ставь еду какую тебе надо.
 

Bjorn

Труженик
Участник форума
Регистрация
29 Дек 2011
Сообщения
492
Реакции
106
Баллы
60
Лучшие ответы
0
#23
У меня тут есть вопрос, вообщем объяснять долго, приведу сразу пример:
Вы подходите к НПС, он например, дает задание принести ему 1 сыр или 1 хлеб, сообственно функция условия в диалоге будет выглядеть примерно так:

Код:
func int DIA_***_***_*****_Condition()
{
	if(Npc_HasItems(other,ItFo_Cheese) >= 0) "пусто" (Npc_HasItems(other,ItFo_Bread) >= 0)
	{
		return TRUE;
	};
};
Вместо "пусто" "&&" ставить не логично, так вот, подскажите, что мне туда вставить?
Мне так кажется что "||", но я не уверен...
 
Последнее редактирование модератором:

xterm

Герой
Команда форума
Администратор форума
Пользователь VIP
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
11 Апр 2010
Сообщения
5.479
Реакции
1.154
Баллы
556
Лучшие ответы
5
#24
Вместо "пусто" "&&" ставить не логично
Если поставишь ||, тогда будет проверяться наличие чего-то одного, либо хлеба, либо сыра ;)
 

Bjorn

Труженик
Участник форума
Регистрация
29 Дек 2011
Сообщения
492
Реакции
106
Баллы
60
Лучшие ответы
0
#25

Bjorn

Труженик
Участник форума
Регистрация
29 Дек 2011
Сообщения
492
Реакции
106
Баллы
60
Лучшие ответы
0
#26
У меня тут ещё вопрос: Мне нужно, что бы НПС появлялся в определенном место в определенное время...
Приведу пример... допустим, я создал НПС и хочу что бы он появлялся возле Лобарта только с 23 до 3 (ночи), а в остальное время он просто отсутствовал, исчезал...
Пробовал прописать в расписании дня:
Код:
func void Rtn_Start_5341( )
{
	TA_Stand_ArmsCrossed (23,0,3,0,"****");
};
Но не получилось, он просто тупо все время там стоит :(
Помогите пожалуйста))
 

xterm

Герой
Команда форума
Администратор форума
Пользователь VIP
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
11 Апр 2010
Сообщения
5.479
Реакции
1.154
Баллы
556
Лучшие ответы
5
#27
Bjorn++, можно сделать, чтобы он уходил в другое место. Просто добавить еще одну точку. Пример

func void Rtn_Start_5341( )
{
TA_Stand_ArmsCrossed (23,0,3,0,""INSEL_DORF_1000""); //Это к примеру где должен появляться
TA_Stand_ArmsCrossed (3,0,23,0,""START"); //Это к примеру куда должен уходить, в данном случае - к Ксардасу
};

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

Bjorn

Труженик
Участник форума
Регистрация
29 Дек 2011
Сообщения
492
Реакции
106
Баллы
60
Лучшие ответы
0
#28
Bjorn++, можно сделать, чтобы он уходил в другое место. Просто добавить еще одну точку. Пример

func void Rtn_Start_5341( )
{
TA_Stand_ArmsCrossed (23,0,3,0,""INSEL_DORF_1000""); //Это к примеру где должен появляться
TA_Stand_ArmsCrossed (3,0,23,0,""START"); //Это к примеру куда должен уходить, в данном случае - к Ксардасу
};
Это я имею делать... мне нужно что бы он именно исчезал))
Если хочешь, чтобы вообще исчезал, можно попробовать отправлять на вейпоинт "TOT", это такие места, не доступные в мире без багоюза и марвина. Просто поищи в проекте по этому словосочетанию, должно стать понятней.
Окей, ща вбил в поиск, короче получается мне нужно сделать так:

func void Rtn_Start_5341( )
{
TA_Stand_ArmsCrossed (23,0,3,0,""**********""); //то есть с 23:00 до 3:00 ночи он будит стоять на своем стартовом месте.
TA_Stand_ArmsCrossed (3,0,23,0,""TOT"); //это не доступное место, о котором ты говорил, там он будет стоять остальное время...
};



Правильно?
 

xterm

Герой
Команда форума
Администратор форума
Пользователь VIP
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
11 Апр 2010
Сообщения
5.479
Реакции
1.154
Баллы
556
Лучшие ответы
5
#29
Я не проверял и щас времени нет. Попробуй, от тебя не убудет ;) Если нет, можно придумать еще варианты.
 

Bjorn

Труженик
Участник форума
Регистрация
29 Дек 2011
Сообщения
492
Реакции
106
Баллы
60
Лучшие ответы
0
#30
Сейчас тестировал, работает как надо tost^75?, спасибо :)
И еще:
Почему при одевание например "Старые доспехи" некоторые НПС отказываются говорить? :(
 
Сверху Снизу