Текущие вопросы и ответы по редактору карт - Страница 295 - Форум HeroesWorld-а

Вернуться   Форум HeroesWorld-а > Все о игре Герои 5. All about Heroes 5 > Герои Меча и Магии 5 - Картостроительство (Редактор карт)
Имя
Пароль
Карта сайта Регистрация Справка Пользователи Календарь Все разделы прочитаны
Быстрая навигация по основным разделам форума:
Кланы HW Турниры на HW КАРТЫ и Картостроительство Heroes 6 Heroes 5 Heroes 4 Heroes 3 Heroes 2 Heroes 1 Might&Magic

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

Ответ
 
Опции темы
Старый 18.07.2017, 21:48   #4411
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 287
Jack_of_shadows - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Код:
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_2, 'Player2LoseHero'); function Player2LoseHero(looser, winner) if(looser == 'имя_героя') then ... end end
Возможно нужны дополнительные проверки, если целевой герой может быть потерян иным способом, чем убит игроком.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 19.07.2017, 02:06   #4412
Пошлость
 
Аватар для Пошлость
Регистрация: 16.07.2017
Сообщения: 19
Пошлость - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

До прописки второго триггера все катсцены и первый триггер - работали.
EnableHeroAI('Brem', nil);
EnableHeroAI('Straker', nil);
StartAdvMapDialog(0);
function rewF()
StartAdvMapDialog(1);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER, "rew", "rewF" );

После добавления триггера про смерть героя и последующие после этого действия - все катсцены и триггеры перестали работать.

EnableHeroAI('Brem', nil);
EnableHeroAI('Straker', nil);
StartAdvMapDialog(0);
function rewF()
StartAdvMapDialog(1);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER, "rew", "rewF" );
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_2, 'Player2LoseHero');
function Player2LoseHero(looser, winner)
if(looser == 'Brem') then
StartAdvMapDialog(2);
StartAdvMapDialog(3);
CreateMonster(134,inferno,134,90,10,0,mood= MONSTER_MOOD_AGGRESSIVE,courage= MONSTER_COURAGE_CAN_FLEE_JOIN,rotation= 0 );
StartAdvMapDialog(4);
StartAdvMapDialog(5);
StartAdvMapDialog(6);
StartAdvMapDialog(7);
StartAdvMapDialog(8);
end;
end;
Пошлость вне форума   Ответить с цитированием
Старый 19.07.2017, 10:21   #4413
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 287
Jack_of_shadows - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Пошлость, с ходу могу только сказать, что CreateMonster вызывается неправильно, lua такое не понимает:
Цитата:
mood= MONSTER_MOOD_AGGRESSIVE,courage= MONSTER_COURAGE_CAN_FLEE_JOIN,rotation= 0
Вероятно парсер на этой строке и слетел.

Второе, если скрипт крашится, хорошим тоном всё таки является заглянуть в консоль и привести здесь текст ошибки (да он и вам часто может помочь понять проблему самостоятельно).

Третье, если вы нацелились на более-менее скриптовую карту (>200 строчек кода), рекомендую другой подход к структуре кода. Сейчас все ваши инициализирующие функции расположены на верхнем уровне в разнобой, в результате чего достаточно одной мелкой ошибки в коде, чтобы интерпретатор вылетел, скрипты полностью перестали работать, и главное непонятно где искать проблему.
Рекомендую всё, что выполняется непосредственно при старте карты, поместить в отдельную функцию, дополнив её периодически printa'ми:
Код:
function InitMap() print('init start'); EnableHeroAI('Brem', nil); EnableHeroAI('Straker', nil); print('init heroes OK'); Trigger(REGION_ENTER_AND_STOP_TRIGGER, "rew", "rewF" ); Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_2, 'Player2LoseHero'); print('init triggers OK'); print('init finish'); end InitMap();
Этот код помещается в самый конец скрипта и при запуске карты первым делом заглядываем в консоль.
Если в коде была ошибка синтаксиса, которую lua-интерпретатор не переварил, консоль будет пустая, до функции InitMap() дело просто не дойдёт.
Если всё хорошо, консоль будет заканчиваться строчкой 'init finish'.
Если мы попытаемся что-то инициализировать неправильно, к примеру ошибемся с названием региона "rew", то в консоли будет:
Цитата:
init start
init heroes OK
какая-нибудь ошибка красным шрифтом
и по этому логу сразу ясно в каких строчках искать ошибку.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 19.07.2017, 14:33   #4414
Пошлость
 
Аватар для Пошлость
Регистрация: 16.07.2017
Сообщения: 19
Пошлость - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Я убрал спавн монстра и ещё одну катсцену. Теперь катсцены работают до убийства героя, после убийства - завершение игры.

EnableHeroAI('Brem', nil);
EnableHeroAI('Straker', nil);
StartAdvMapDialog(0);
function rewF()
StartAdvMapDialog(1);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER, "rew", "rewF" );
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_2, 'Player2LoseHero');
function Player2LoseHero(looser, winner)
if(looser == 'Brem') then
StartAdvMapDialog(2);
StartAdvMapDialog(3);
StartAdvMapDialog(4);
StartAdvMapDialog(5);
StartAdvMapDialog(6);
StartAdvMapDialog(7);
end;
end;
Пошлость вне форума   Ответить с цитированием
Старый 19.07.2017, 15:39   #4415
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 287
Jack_of_shadows - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Цитата:
Теперь катсцены работают до убийства героя, после убийства - завершение игры.
скрипты то тут точно не при чём, они самопроизвольно игру не завершают. Надо смотреть условия победы.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 19.07.2017, 16:05   #4416
Пошлость
 
Аватар для Пошлость
Регистрация: 16.07.2017
Сообщения: 19
Пошлость - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

У меня два задания для игрока.
1) уничтожить героя
2) игрок должен выжить.
В качестве награды ничего нет.
Пошлость вне форума   Ответить с цитированием
Старый 20.07.2017, 00:25   #4417
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 287
Jack_of_shadows - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Получается что при убийстве героя оба задания в true, всё выполнено, сценарий автоматически завершается. Непонятно что хочется, и что получается. Если цель: игрок убивает героя, показываются финальные ролики, сценарий завершается, то это реализуется иначе: вручную отлавливаем событие убийста героя, показываем ролики, вызываем функцию Win(). Квест на убийство героя при этом трансформируем во что-нибудь другое (описание можно оставить то же, но тип задания сменить на manual).
Jack_of_shadows вне форума   Ответить с цитированием
Старый 20.07.2017, 14:00   #4418
Пошлость
 
Аватар для Пошлость
Регистрация: 16.07.2017
Сообщения: 19
Пошлость - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Спасибо, всё заработало.
И ещё вопросик. В редакторе подземелья можно как-нибудь светлее сделать, а то ставлю объект и вижу его, только когда выделил. Попытался на форуме поискать что-то внятное, но ничего толком не нашёл.
Пошлость вне форума   Ответить с цитированием
Старый 20.07.2017, 22:32   #4419
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 287
Jack_of_shadows - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Цитата:
В редакторе подземелья можно как-нибудь светлее сделать
можно либо временно тип освещения сменить на дневное, либо поставить на какой-нибудь объект источник освещения и задать ему радиус 200-300, будет очень ярко всё освещать (можно несколько таких источников света бахнуть в разных местах, перед релизом их просто удалить).
Jack_of_shadows вне форума   Ответить с цитированием
Старый 20.07.2017, 22:44   #4420
Пошлость
 
Аватар для Пошлость
Регистрация: 16.07.2017
Сообщения: 19
Пошлость - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

А какой точнее параметр в MapProperties ставить?
Пошлость вне форума   Ответить с цитированием
Старый 20.07.2017, 23:19   #4421
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 287
Jack_of_shadows - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Что-то со словом light, там нужно кликнуть добавить, выставить цвет и смещение относительно объекта (z нужно ставить больше нуля, x и y оставить нулями). Если взять какое деревце, то у него этих свойств всего ничего, легко найти нужное.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 20.07.2017, 23:35   #4422
Пошлость
 
Аватар для Пошлость
Регистрация: 16.07.2017
Сообщения: 19
Пошлость - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Спасибо, теперь хоть что-то вижу)
Пошлость вне форума   Ответить с цитированием
Старый Сегодня, 11:15   #4423
AstralLein
 
Аватар для AstralLein
Регистрация: 02.06.2017
Адрес: Астельнаир, мир Астрала Лейна
Сообщения: 303
AstralLein - уровень боевого духа
По умолчанию Re: Текущие вопросы и ответы по редактору карт

Имеем скриптовую команду, которая заставляет Аларика один раз отыграть анимацию каста. Но в игре ничего не происходит, данная команда не срабатывает, но скрипт играет дальше без проблем. Ошибок в консоли нет, а сама команда с нейтралами прекрасно работает

Вопрос: можно скриптом заставить героя отыграть анимацию?
__________________
Карты для героев 5:
AstralLein делает карту "Восхождение адепта"(новое название). Готово 75%.
Карты для Дисциплес 3: Перерождение: "Противостояние"(вышло обновление!)
"Месть мстящему", готово 40%. На очереди.
AstralLein сейчас на форуме   Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Вкл.
Быстрый переход


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


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

Яндекс цитирование  Rambler\'s Top100   Рейтинг@Mail.ru

Авторские права - Copyright © 2002-2008 www.HeroesWorld.ru All rights reserved


На правах рекламы:123123