Скрипты - Страница 150 - Форум HeroesWorld-а

Быстрая навигация по основным разделам форума:
Турниры
КАРТЫ
Heroes 6
Heroes 5
Heroes 4
Heroes 3
Heroes 2
Heroes 1
Might&Magic

Герои Меча и Магии 5 - Картостроительство (Редактор карт) В этом разделе можно обсуждать все что касается редактора карт для Heroes of Might and Magic V. Так же здесь обсуждаем картостроительство.

Ответ
Страница 150 из 260
 
Опции темы
#2236
Старый 14.06.2016, 21:39
  #2236
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
По умолчанию
Re: Скрипты

PlayDialogScene -- функция запуска ролика.
После выполнения задания -- поставить триггер Trigger(OBJECTIVE_STATE_CHANGE_TRIGGER,...
В общем, несложно, во многом похоже на штуку с регионом из соседней темы.
Как вставить свою озвучку? Нужный формат есть, а вставить в диалоговую сцену не получается. Заранее спасибо!
Нужно экспортировать звук, как ресурс, в игру. А в ролике соответственно вставить этот звук (или звуки). Вообще, не совсем тривиальная задача, частичное представление о ней можно получить тут: http://psatkha.narod.ru/tutorial_ru.html. Не уверен, что овчинка стоит выделки, в домашних условиях адекватно озвучить ролики практически нереально, а потом ещё мучиться, учиться их вставлять.
Ment вне форума
Ответить с цитированием
#2237
Старый 14.06.2016, 22:50
  #2237
^
Леонариус Хапер
 
Аватар для Леонариус Хапер
📖
Регистрация: 08.06.2016
Сообщения: 10
Регистрация: 08.06.2016
Сообщения: 10
По умолчанию
Re: Скрипты

function Objective()
StartDialogScene("/DialogScenes03/New Object03/DialogScene.xdb#xpointer(/DialogScene)");
end;
Trigger(OBJECTIVE_STATE_CHANGE_TRIGGER,"obj1","Objective");

Что не так в этом коде? миссию завершает, а ролик не запускает
Леонариус Хапер вне форума
Ответить с цитированием
#2238
Старый 15.06.2016, 00:03
  #2238
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
По умолчанию
Re: Скрипты

миссию завершает, а ролик не запускает
Я так думаю, он сначала завершает миссию, а потом запускает ролик. Такие штуки имеют больший приоритет, чем скрипты и выполняются в первую очередь. Вам надо сделать так, чтобы задание не завершало миссию, запустить ролик, подождать немного (функция sleep), и вот тогда завершить миссию скриптовой функцией Win() (там вроде с большой буквы, но я точно не помню, проверьте меня).
Ment вне форума
Ответить с цитированием
#2239
Старый 15.06.2016, 11:43
  #2239
^
Леонариус Хапер
 
Аватар для Леонариус Хапер
📖
Регистрация: 08.06.2016
Сообщения: 10
Регистрация: 08.06.2016
Сообщения: 10
По умолчанию
Re: Скрипты

function Objective()
StartDialogScene("/DialogScenes03/New Object03/DialogScene.xdb#xpointer(/DialogScene)");
sleep(20)
Win()
end;

Trigger(OBJECTIVE_STATE_CHANGE_TRIGGER,"obj1","Objective");
Не работает. Задание завершается, а ролика нет. И у меня как бы из одного вопроса два вытекает:
1)Как сделать, чтобы после завершения задания проигрывался ролик, и я продолжал играть и выполнять другие задания?
2)Как сделать, чтобы после завершения задания проигрывался ролик, и я выигрывал?
Вот эти два момента не дают мне спокойно жить
Леонариус Хапер вне форума
Ответить с цитированием
#2240
Старый 15.06.2016, 12:26
  #2240
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
По умолчанию
Re: Скрипты

Как сделать, чтобы после завершения задания проигрывался ролик, и я продолжал играть и выполнять другие задания?
Не писать win.
Как сделать, чтобы после завершения задания проигрывался ролик, и я выигрывал?
Писать win
Не знаю, почему не работает. Потенциальных ошибок может быть много -- это и заглавные/строчные буквы (они воспринимаются игрой по-разному), и слеши в StartDialogScene (не уверен, что в эту сторону повёрнуты). Консоль что пишет?
Ment вне форума
Ответить с цитированием
#2241
Старый 15.06.2016, 15:45
  #2241
^
Леонариус Хапер
 
Аватар для Леонариус Хапер
📖
Регистрация: 08.06.2016
Сообщения: 10
Регистрация: 08.06.2016
Сообщения: 10
По умолчанию
Re: Скрипты

Код рабочий, просто название задачи почему-то не существовало, вернее в Properties Tree оно было написано, в скрипте то же самое написано, но консоль говорила, что этой задачи не существует. В итоге я из кода скопировал название задачи, запихнул в Properties Tree, и все заработало(возможно, что в коде было написано на английском, а в Properties Tree на американском, или наоборот.)
Спасибо вам большое, больше пределов творчеству нет
Леонариус Хапер вне форума
Ответить с цитированием
#2242
Старый 04.07.2016, 21:32
  #2242
^
xv13
 
Аватар для xv13
📖
Регистрация: 31.08.2015
Сообщения: 10
Регистрация: 31.08.2015
Сообщения: 10
По умолчанию
Re: Скрипты

Подскажите как сделать специализацию героя-командира: +1 к защите и нападению за 2 уровня для заданного существа. В оригинальных файлах командирских специализаций не нашел, так что, наверное, надо скриптом прописывать.
xv13 вне форума
Ответить с цитированием
#2243
Старый 20.07.2016, 10:08
  #2243
^
Victor1985@
📖
Регистрация: 09.07.2016
Сообщения: 2
Регистрация: 09.07.2016
Сообщения: 2
По умолчанию
Re: Скрипты

Подскажите, как скриптами настраивать задания к миссии
Victor1985@ вне форума
Ответить с цитированием
#2244
Старый 22.07.2016, 13:59
  #2244
^
metufona
 
Аватар для metufona
📖
Регистрация: 07.05.2011
Сообщения: 4
Выставка наград
Регистрация: 07.05.2011
Сообщения: 4
Выставка наград
По умолчанию
Re: Скрипты

О великие знатоки, подскажите как показать игроку сообщение в ПЕРВЫЙ день игры? Пыталась сделать через
Trigger(NEW_DAY_TRIGGER, "new_day" );
function new_day()
if GetDate(DAY) == 1 then
MessageBoxForPlayers(PLAYER_1,GetMapDataPath().."hello.txt");
end;
end;
Но увы, не работает =(
Меняю день на второй и сообщение отображается.
metufona вне форума
Ответить с цитированием
#2245
Старый 22.07.2016, 17:02
  #2245
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30673
По умолчанию
Re: Скрипты

Потому что триггер срабатывает при наступлении некого события. А первый день игры не наступает, но идёт с самого начала. Просто надо
MessageBoxForPlayers(PLAYER_1,GetMapDataPath().."hello.txt");
и всё.
Ment вне форума
Ответить с цитированием
#2246
Старый 04.08.2016, 22:08
  #2246
^
Medyan
 
Аватар для Medyan
📖
Регистрация: 14.12.2007
Сообщения: 30
Регистрация: 14.12.2007
Сообщения: 30
По умолчанию
Re: Скрипты

	function kill_army()
a=14
while a>13 do
MakeHeroInteractWithObject('Arantir','altar1')
sleep(2)
a=1
for i=1,119 do
a=a+GetHeroCreatures('Arantir',i)
end
if a>12 then do
StartAdvMapDialog(2)
sleep(2)
end
end
end
StartAdvMapDialog(3)
вот кусок функции в результате которой я хочу увидеть следующее:
герою предлагается порезать армию на алтаре
потом происходит проверка на количество существ в армии героя
если их больше 12 - запускается диалог(2)
если нет, тогда диалог(3)
Проблема в том, что герой только начинает взаимодействовать с алтарем, а программа уже успела посчитать его войско и после жертвоприношения показывает диалог(2), а вот как бы сделать так, чтобы проверка количества существ запускалась после того, как герой пожертвует войско?
__________________
и немедленно выпил...
и немедленно выпил...
Medyan вне форума
Ответить с цитированием
#2247
Старый 06.08.2016, 13:08
  #2247
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
По умолчанию
Re: Скрипты

Medyan, вы как-то описали туманно все. Если нужно
если их больше 12 - запускается диалог(2)
если нет, тогда диалог(3)
тогда и код должен быть
if a>12 then
StartAdvMapDialog(2)
else
StartAdvMapDialog(3)
end
Если проверка количества существ должна быть после взаимодействия с алтарем, то и писать ее надо в обработчике тыкания в алтарь.
Jack_of_shadows вне форума
Ответить с цитированием
#2248
Старый 09.08.2016, 11:24
  #2248
^
xxxRustamxxx
📖
Регистрация: 06.08.2016
Сообщения: 29
Регистрация: 06.08.2016
Сообщения: 29
По умолчанию
Re: Скрипты

Нужна помощь, как сделать скрипт который будет давать все скиллы которые есть в игре? Я видел такое в карте "Эльфийская песнь", там если написать @gsall skillsall artefacts, ГГ дадут все скиллы и артефакты, но мне нужны только скиллы, карту я в редакторе открыть не могу, так как её нету в папке с картами. И да, в 2016 году играют в героев 5. И ещё одно, если это возможно, можно как-то сделать этот скрипт, что-бы он на всех картах работал? Я имею ввиду через @DoFile. Хотя тогда придется каждый раз редактировать скрипт файл, у героев ведь разные скриптовые имена... Ну команда add_skill и прочие ведь работают на выделенном герое, вот я и хочу как-то сделать что-бы скрипт работал на выделенном герое. Надеюсь это возможно. В любом случае заранее спасибо за помощь, буду ждать ответа.
xxxRustamxxx вне форума
Ответить с цитированием
#2249
Старый 09.08.2016, 15:04
  #2249
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

xxxRustamxxxНужна помощь, как сделать скрипт который будет давать все скиллы которые есть в игре? Я видел такое в карте "Эльфийская песнь", там если написать @gsall skillsall artefacts, ГГ дадут все скиллы и артефакты, но мне нужны только скиллы, карту я в редакторе открыть не могу, так как её нету в папке с картами. И да, в 2016 году играют в героев 5. И ещё одно, если это возможно, можно как-то сделать этот скрипт, что-бы он на всех картах работал? Я имею ввиду через @DoFile. Хотя тогда придется каждый раз редактировать скрипт файл, у героев ведь разные скриптовые имена... Ну команда add_skill и прочие ведь работают на выделенном герое, вот я и хочу как-то сделать что-бы скрипт работал на выделенном герое. Надеюсь это возможно. В любом случае заранее спасибо за помощь, буду ждать ответа.
Можно так:
	for i=1,3 do
	for j=1,220 do
		consoleCmd('add_skill ' .. j)
	end
end
Даст все навыки и умения выделенному герою. Скрипт можно сохранить в файл и вызывать через doFile.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2250
Старый 09.08.2016, 16:58
  #2250
^
xxxRustamxxx
📖
Регистрация: 06.08.2016
Сообщения: 29
Регистрация: 06.08.2016
Сообщения: 29
По умолчанию
Re: Скрипты

Огромное спасибо! Просто у меня была задумка для карты. Месть Эльрата называется карта которую я хочу сделать. Сюжет: На совете богов выясинили, что людей которые поклоняются Эльрату стает все меньше и меньше, если так и будет, Эльрата вовсе забудут и он больше не будет богом! Эльрату это очень не нравится, он решил спуститься к смертным в облике архангела под именем Ратиэль. Но как только он спускается к смертным он увидел ужасное... Демоны берут в плен подданых Эльрата, его народ, и увозят в Шио. Зачем и почему, сам Эльрат должен узнать...
P.S. Скрипт нужен был для ГГ, ну он типа БОГ, должен уметь всё. Я карту хотел создать с существами NCF. У Эльрата в армии будут 10 Ангелов Хранителей, и 15 обычных ангелов. Я думаю задумка неплохая, но реализовать будет очень сложно, я уже пытался дать герою модель ангела, вставил аним сет ему, но он не использует анимации которые я ему задал. Просто в форме Т всё делает...

Добавлено через 1 минуту
Хотя я вообще хочу кампанию сделать, это только первая миссия, кампания "Война Богов". Я не уверен что у меня терпения хватит....
xxxRustamxxx вне форума
Ответить с цитированием
Ответ
Страница 150 из 260


Опции темы



Часовой пояс GMT +4, время: 01:23.


vBulletin v3.5.0, Copyright ©2000-2024, Jelsoft Enterprises Ltd. (Русский)

Яндекс цитирование    Top.Mail.Ru