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

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

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

Ответ
Страница 138 из 260
 
Опции темы
#2056
Старый 18.11.2015, 14:47
  #2056
^
Рыцарь Бездны
 
Аватар для Рыцарь Бездны
📖
Регистрация: 24.07.2012
Сообщения: 88
Регистрация: 24.07.2012
Сообщения: 88
По умолчанию
Re: Скрипты

Подскажите пожалуста что сдесь не так:

function BiaraKill ()
while 1 do
sleep (10);
if IsHeroAlive ("Biara") == nil then
SetObjectiveState ("obj2",OBJECTIVE_COMPLETED);
Sleep(2);
break;
end;
end;
end;

startThead("BiaraKill);

Нужно чтобы после смерти Биары выполнялась задача obj2.Заранее спасибо...
Рыцарь Бездны вне форума
Ответить с цитированием
#2057
Старый 18.11.2015, 15:32
  #2057
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Sleep написан с заглавной буквы, а надо со строчной.

Добавлено через 32 секунды
В startThread пропущена r.

Добавлено через 56 секунд
Перед BiaraKill кавычка ни к селу, ни к городу.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2058
Старый 19.11.2015, 16:35
  #2058
^
Рыцарь Бездны
 
Аватар для Рыцарь Бездны
📖
Регистрация: 24.07.2012
Сообщения: 88
Регистрация: 24.07.2012
Сообщения: 88
По умолчанию
Re: Скрипты

Pert17Рыцарь Бездны,
Вообще третий видимо лучше всего, но, я совсем не разбираюсь в скриптах, буквально на днях начал что-то делать с ними. Единственное, что я могу, это сделать скрипт с начальным капиталом игрока... Так что не могли бы Вы написать как именно будет выглядеть сам скрипт? Буду очень благодарен...

И ещё, такая штука... Если герой (вражеские тоже), находится без замка, то через неделю игрок терпит поражение. Нельзя ли как-нибудь убрать эту функцию? Чтобы не было миссии "Захватить любой город в течение недели".

Добавлено через 16 минут
И как сделать так, чтобы бот нападал на 2, 3, 4 и тд дни? То есть не сразу.

Ну вот вас скрипт на картинке (извиняюсь за рекламу бандикама,недумал что его будет видно) Вобщем в начале второго месяца появляется герой (в моем случае Грол) и бежит по кординатам 23,101.Вам вместо 23,101 нужно указать место входа в ваш город,а в DeployReserveHero поставить кординаты где ваш герой должен появляться.Только чтобы герой появился нужно его предварительно создать. Для это нажмите английскую М,выберите окно Players Properties,там выберите нужного игрока,потом внизу будет окно Reserve Heroes,нажмите там add,дальше сами разберетесь)

А чтобы через неделю поражение не выдавалось в окне слева найдите вкладку Objectives, нажмите +, выберите Primary> Common,там будет цифра ноль,это задание "победить всех",и под ним еще одно окно,в нем написанно true,поменяйте true на false и больше не будет поражение выдаваться....
Миниатюры
Нажмите на изображение для увеличения
Название:  bandicam 2015-11-19 15-11-33-390.jpg
Просмотров: 246
Размер:	166.5 Кбайт
ID:	41286  
Рыцарь Бездны вне форума
Ответить с цитированием
#2059
Старый 22.11.2015, 15:04
  #2059
^
Рыцарь Бездны
 
Аватар для Рыцарь Бездны
📖
Регистрация: 24.07.2012
Сообщения: 88
Регистрация: 24.07.2012
Сообщения: 88
По умолчанию
Re: Скрипты



Pert17 Столкнулся с проблемой.Почемуто этот скрипт работает только на одного ReserveHero. Если продублировать этот скрипт,заменив имя героя и название функции то не срабатывают и первая функция и дублированая.Так что увы эта функция подходит только для одного героя,если вы хотите несколько атак то она не сработает...

Добавлено через 4 минуты
И да,подскажите пожалуста кто знает,почему если я копирую такой же скрипт,но DemonAtack_1 заменяю на Demon_Atack2,а Calid заменяю на Grok,то перестают работать и Demon_Atack1 и Demon_Atack2? Заранее огромное спасибо...
Рыцарь Бездны вне форума
Ответить с цитированием
#2060
Старый 22.11.2015, 15:05
  #2060
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Дублировать надо не всю функцию, а блок if-then-end внутри неё.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2061
Старый 22.11.2015, 15:08
  #2061
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30696
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30696
По умолчанию
Re: Скрипты

Думаю, там просто нужно дождаться окончания боя, и по результату уже запускать функцию ещё раз.
Ну и да, RedHeaven дело говорит, там надо внимательно смотреть содержимое. А то один триггер перезапишет другой, как минимум.
Ment вне форума
Ответить с цитированием
#2062
Старый 23.11.2015, 17:29
  #2062
^
Рыцарь Бездны
 
Аватар для Рыцарь Бездны
📖
Регистрация: 24.07.2012
Сообщения: 88
Регистрация: 24.07.2012
Сообщения: 88
По умолчанию
Re: Скрипты

MentДумаю, там просто нужно дождаться окончания боя, и по результату уже запускать функцию ещё раз.
Ну и да, RedHeaven дело говорит, там надо внимательно смотреть содержимое. А то один триггер перезапишет другой, как минимум.

Простите,там моя неточность,забыл указать что кроме имени функции и имени героя еще и дата вызова менялась,ну как бы демоны из врат ада вылазили и все дружно бежали в одну точку,так что вариант RedHeavenHero идеально подходит... А можно еще один вопросик? Не подскажите как можно установить временные рамки для нескольких задач? Для одной у меня без проблем получалось,писал тригер чтобы при достижении определенной даты выдавалось поражение а при выполнении условия обнулял тригер,но когда оказалась нужна еще одна временная рамка для следующей задачи попытался как и в первом случае продублировать функцию,подставив новые значения но обе функции перестали работать. Также благодоря подсказкам пытался обьеденить две функции в одну через elseif но ничего работоспособного у меня не вышло... Вобщем подскажите пожалуста,каким образом можно реализовать 2 временных рамки (ну или промежутка) для выполнения задач... Ну допустим "захватить гарнизон 1 за одну неделю" и "захватить гарнизон 2 за 3 недели". Извините что так много текста,надеюсь я вас не запутал.Как всегда заранее большое спасибо...

Добавлено через 18 часов 22 минуты
Вобщем написал я там полную бурду... Посмотрите пожалуста, там вверху одна из функций,а внизу два loose тригера,по моей задумке я писал NEW_DAY_TRIGGER,в котором при достижении нужной даты без всяких вопросов выдавалось поражение,и не обнулял этот тригер,а обнуление вставлял в фунуцию выполнения задачи... По началу,когда loose тригер был только один,все работало как надо,но потом когда тригеров стало двое,т.к появилась еще одна задача "на время" оба они перестали работать.

Помогите пожалуста, как можно заставить заработать loose2 и loose3,очень нужно,прямо вопрос жизни и смерти
Рыцарь Бездны вне форума
Ответить с цитированием
#2063
Старый 23.11.2015, 17:34
  #2063
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30696
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30696
По умолчанию
Re: Скрипты

Содержимое loose3 скопируйте в тело loose2, без замены, между двумя end'ами.
loose3 и связанный с ним триггер удалить. И посмотрите, что вышло.
Ment вне форума
Ответить с цитированием
#2064
Старый 23.11.2015, 20:32
  #2064
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 511
Выставка наград
Регистрация: 08.09.2013
Сообщения: 511
Выставка наград
По умолчанию
Re: Скрипты

И еще триггер обнуляется неправильно, надо:
Trigger(NEW_DAY_TRIGGER, nil);
первый параметр - условие, в данном случае "новый день",
второй параметр - функция, выполняющаяся по условию. Ее и нужно занулить при выключении триггера.
Jack_of_shadows вне форума
Ответить с цитированием
#2065
Старый 24.11.2015, 01:32
  #2065
^
Bravo1853
📖
Регистрация: 28.08.2015
Сообщения: 77
Регистрация: 28.08.2015
Сообщения: 77
По умолчанию
Re: Скрипты

Вылетает редактор, когда открываю Edit Script, не знаю куда теперь вводить скрипты.
Bravo1853 вне форума
Ответить с цитированием
#2066
Старый 24.11.2015, 09:23
  #2066
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Bravo1853Вылетает редактор, когда открываю Edit Script, не знаю куда теперь вводить скрипты.
Попробуйте открыть карту архиватором и редактировать файл скрипта карты блокнотом. Имя файла - MapScript.lua.

Добавлено через 29 минут
Рыцарь Бездны, плюс к тому, что сказали Ment и Jack_of_shadows, в функциях loose2 и loose3 OBJECTIVE_FAILED написано неверно

Совет: отправляйте скрипт текстом в тегах [code], а не картинках. МБ, кто и отредактирует, но с изображения вряд ли кто-то перепечатывать будет.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2067
Старый 24.11.2015, 14:46
  #2067
^
Рыцарь Бездны
 
Аватар для Рыцарь Бездны
📖
Регистрация: 24.07.2012
Сообщения: 88
Регистрация: 24.07.2012
Сообщения: 88
По умолчанию
Re: Скрипты

MentСодержимое loose3 скопируйте в тело loose2, без замены, между двумя end'ами.
loose3 и связанный с ним триггер удалить. И посмотрите, что вышло.

Спасибо,помогло) Сначала ничего не изменилось... Видимо потому что у меня еще один NEW_DAY_TRIGGER был. Когда вставил туда то всё заработало,при достижении нужного дня поражение выдается,но теперь другая проблема,непонимаю как всё это дело обнулить при выполнении задания... Ведь тригер один,а функции 2,если обнулить тригер при выполнении первого задания то вместе с содержимым loose2 обнулится и loose3,и вторая задача останется без ограничений по времени... Вобщем странно это всё,почему вобще два NEW_DAY_TRIGGERа конфликтуют,на разрабовских картах этих тригеров куча и всё хорошо... Да и посмотрел скрипты во второй миссии за Илайю (там были ограничения по времени на захват гарнизонов),как ни странно там небыло ниодного скрипта на поражение при достижении нужной даты... Как вобще разработчики такого добились без скриптов. Вобщем извините за безпокойство,видимо мне такими скриптами еще рано заниматься.

Добавлено через 5 минут
Jack_of_shadowsИ еще триггер обнуляется неправильно, надо:
Trigger(NEW_DAY_TRIGGER, nil);
первый параметр - условие, в данном случае "новый день",
второй параметр - функция, выполняющаяся по условию. Ее и нужно занулить при выключении триггера.

Разве? Я на картах разработчиков видел что они и при обнулении имя функции указывали... Да и у меня всё работало пока тригер был один.Ну попробую так как вы сказали)
Рыцарь Бездны вне форума
Ответить с цитированием
#2068
Старый 24.11.2015, 14:57
  #2068
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Проще всего, сделать одну функцию на все временные события, и добавить проверку дополнительного условия, например, состояние задачи.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2069
Старый 24.11.2015, 15:47
  #2069
^
Рыцарь Бездны
 
Аватар для Рыцарь Бездны
📖
Регистрация: 24.07.2012
Сообщения: 88
Регистрация: 24.07.2012
Сообщения: 88
По умолчанию
Re: Скрипты

RedHeavenHeroПроще всего, сделать одну функцию на все временные события, и добавить проверку дополнительного условия, например, состояние задачи.

А не подскажите случайно как сделать проверку на состояние задачи?
Рыцарь Бездны вне форума
Ответить с цитированием
#2070
Старый 24.11.2015, 17:35
  #2070
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

GetObjectiveState("задача") == OBJECTIVE_COMPLETED
к примеру.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
Ответ
Страница 138 из 260


Опции темы



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


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

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