Скрипты - Страница 159 - Форум 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.08.2017, 11:21   #2371
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Какая используется функция для изменения названия и описания объекта?
И еще, подскажите как исправить ошибку: Value was NIL when getting global with name 'ChangeResource'?
Код:
function give_sulfur() ChangeResource(4, 5, 'Biara') Trigger(OBJECT_TOUCH_TRIGGER, 'kotel', nil); end
WizardNazyr вне форума   Ответить с цитированием
Старый 18.08.2017, 12:30   #2372
RedHeavenHero
 
Аватар для RedHeavenHero
Регистрация: 10.02.2012
Сообщения: 2344
RedHeavenHero - уровень боевого духа RedHeavenHero - уровень боевого духа RedHeavenHero - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты

Цитата:
Сообщение от WizardNazyr
Какая используется функция для изменения названия и описания объекта?
И еще, подскажите как исправить ошибку: Value was NIL when getting global with name 'ChangeResource'?
Код:
function give_sulfur() ChangeResource(4, 5, 'Biara') Trigger(OBJECT_TOUCH_TRIGGER, 'kotel', nil); end
1) OverrideObjectTooltipNameAndDescription(объект, путь_к_тексту_имени, путь_к_тексту_описания)
2) Нет такой функции ChangeResource, посмотрите в мануале, какие функции меняют ресурсы.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума   Ответить с цитированием
Старый 18.08.2017, 12:39   #2373
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Цитата:
Сообщение от RedHeavenHero
1) OverrideObjectTooltipNameAndDescription(объект, путь_к_тексту_имени, путь_к_тексту_описания)
2) Нет такой функции ChangeResource, посмотрите в мануале, какие функции меняют ресурсы.
1) Спасибо!
2) Забавно, в файле с описаниями функций, скачанного с heroesworld, описана функция "ChangeResource"
Миниатюры
Нажмите на изображение для увеличения
Название:  Безымянный.jpg
Просмотров: 19
Размер:	61.8 Кбайт
ID:	50468  
WizardNazyr вне форума   Ответить с цитированием
Старый 18.08.2017, 21:56   #2374
VolgaBear
Регистрация: 18.08.2017
Сообщения: 1
VolgaBear - уровень боевого духа
По умолчанию Re: Скрипты

Доброго Времени Суток! допустим у меня есть герой, условный Винраэль и я хотел бы вызвать ему бой например с 200 латников и 150 гаргулей. Возможно ли это сделать в одиночной игре через консоль?
VolgaBear вне форума   Ответить с цитированием
Старый 18.09.2017, 18:24   #2375
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Помогите, пожалуйста! Написал скрипт:
Код:
while GetObjectiveState('meet_demons', PLAYER_1) == OBJECTIVE_ACTIVE do sleep(5) end SetObjectiveState('hero_from_hell', OBJECTIVE_ACTIVE, PLAYER_1); MessageBox(GetMapDataPath()..'5.txt'); while 1 do if GetObjectiveState('kill_daeva', PLAYER_1)== OBJECTIVE_COMPLETED and GetObjectiveState('capture_mines', PLAYER_1) == OBJECTIVE_COMLETED then sleep(5) SetObjectiveState('hero_from_hell',OBJECTIVE_COMPLETED, PLAYER_1) SetObjectiveState('go_throw_dungeon',OBJECTIVE_ACTIVE, PLAYER_1) end end
После того как выполняю задание "meet_demons" и закрываю сообщение "5" игра виснет. Что не так сделал?
WizardNazyr вне форума   Ответить с цитированием
Старый 18.09.2017, 20:27   #2376
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 419
Jack_of_shadows - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты

WizardNazyr, ваш код после сообщения можно описать как:
Код:
бесконечный цикл { проверка условия. }
В цикл нужно добавить sleep. Плюс, лучше если он будет выполняться в отдельном потоке (по приведенному коду неясно обёрнут он в поток или нет).
Jack_of_shadows вне форума   Ответить с цитированием
Старый 19.09.2017, 05:29   #2377
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Так, теперь я что-то совсем не так сделал. Игра виснет после того как закрываю сообщение "2"
Код:
MessageBox(GetMapDataPath()..'1.txt'); MessageBox(GetMapDataPath()..'2.txt'); Trigger(REGION_ENTER_AND_STOP_TRIGGER, 'Svetlana_Vyacheslav1', 'talk1'); Trigger(REGION_ENTER_AND_STOP_TRIGGER, 'demons', 'talk2'); function talk1 () MessageBox(GetMapDataPath()..'3.txt') Trigger(REGION_ENTER_AND_STOP_TRIGGER, 'Svetlana_Vyacheslav1', nil); end function talk2 () MessageBox(GetMapDataPath()..'4.txt'); Trigger(REGION_ENTER_AND_STOP_TRIGGER, 'demons', nil); end function task1() while GetObjectiveState('meet_demons', PLAYER_1) == OBJECTIVE_ACTIVE do sleep(5) end SetObjectiveState('hero_from_hell', OBJECTIVE_ACTIVE, PLAYER_1); MessageBox(GetMapDataPath()..'5.txt'); end; function task2() while 1 do if GetObjectiveState('kill_daeva', PLAYER_1)== OBJECTIVE_COMPLETED and GetObjectiveState('capture_mines', PLAYER_1) == OBJECTIVE_COMLETED then sleep(5) SetObjectiveState('hero_from_hell',OBJECTIVE_COMPLETED, PLAYER_1) SetObjectiveState('go_throw_dungeon',OBJECTIVE_ACTIVE, PLAYER_1) end end end; startThread(task1); startThread(task2) ;


Добавлено через 14 минут
И да, я не совсем понял куда именно нужно поставить sleep и какое значение должно быть в скобках.
WizardNazyr вне форума   Ответить с цитированием
Старый 19.09.2017, 08:40   #2378
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 419
Jack_of_shadows - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты

WizardNazyr, причина зависания та же. У вас же есть функция task1, которая выполняет аналогичную функцию и работает корректно. Просто переделайте task2 по аналогии с task1. В task2 во-первых цикл никогда не закончится (while 1 do), во-вторых в if нужно добавить else, срабатывающий пока условие не выполнено, и в нем sleep.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 19.09.2017, 16:39   #2379
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Jack_of_shadows, огромное спасибо!
в task2 цикл сломал. else и sleep добавил. Все работает!
WizardNazyr вне форума   Ответить с цитированием
Старый 01.10.2017, 11:26   #2380
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Здравствуйте, появился вопрос: Если я "выключу" героя, который сидит в замке, то он будет себе в армию нанимать юнитов или нет? А другие герои смогут в этом городе скупать армию?
WizardNazyr вне форума   Ответить с цитированием
Старый 01.10.2017, 13:09   #2381
AstralLein
 
Аватар для AstralLein
Регистрация: 02.06.2017
Адрес: На планете Земля.
Сообщения: 1424
AstralLein - уровень боевого духа AstralLein - уровень боевого духа
По умолчанию Re: Скрипты

Будет.

Смогут.
__________________
Карты для героев 5:
"Плата за любовь"
"Путь некроманта"

Карты для Disciples 3:
"Противостояние"

Моды для Disciples 3:
"Астельнаир"(сладкое отсутствие разработки)
AstralLein вне форума   Ответить с цитированием
Старый 01.10.2017, 13:16   #2382
WizardNazyr
 
Аватар для WizardNazyr
Регистрация: 24.06.2015
Сообщения: 941
WizardNazyr - уровень боевого духа
По умолчанию Re: Скрипты

Цитата:
Сообщение от AstralLein
Будет.

Смогут.
Спасибо.
WizardNazyr вне форума   Ответить с цитированием
Старый 18.10.2017, 16:21   #2383
AstralLein
 
Аватар для AstralLein
Регистрация: 02.06.2017
Адрес: На планете Земля.
Сообщения: 1424
AstralLein - уровень боевого духа AstralLein - уровень боевого духа
По умолчанию Re: Скрипты

Кто знает почему этот скрипт перестал(раньше работал, но может я случайно что-то поменял) работать? Суть: на седьмой день недели в армии героя Markel2 появляются призраки(одного подходящего типа) равные числом его уровню. Еще одно условие - наличие призраков в армии героя.

__________________
Карты для героев 5:
"Плата за любовь"
"Путь некроманта"

Карты для Disciples 3:
"Противостояние"

Моды для Disciples 3:
"Астельнаир"(сладкое отсутствие разработки)
AstralLein вне форума   Ответить с цитированием
Старый 18.10.2017, 21:20   #2384
Jack_of_shadows
 
Аватар для Jack_of_shadows
Регистрация: 08.09.2013
Сообщения: 419
Jack_of_shadows - уровень боевого духа
Выставка наград
По умолчанию Re: Скрипты

AstralLein, могу только сказать, что лучше проверять существование героя перед любой операцией с ним. В остальном выглядит нормально. Надо смотреть отладочными сообщениями, может там раньше была ошибка в скрипте, и интерпретатор просто не дошел до 158 строчки и не повесил триггер нового дня.
Jack_of_shadows вне форума   Ответить с цитированием
Старый 18.10.2017, 21:29   #2385
AstralLein
 
Аватар для AstralLein
Регистрация: 02.06.2017
Адрес: На планете Земля.
Сообщения: 1424
AstralLein - уровень боевого духа AstralLein - уровень боевого духа
По умолчанию Re: Скрипты

Ошибок нет. Вот в чем проблема. Есть правда еще один скрипт нового дня. Могу тоже показать. Герой существует, Маркел главный герой игрока.

Добавлено через 2 минуты
Кстати, как листать консоль вверх-вниз?
__________________
Карты для героев 5:
"Плата за любовь"
"Путь некроманта"

Карты для Disciples 3:
"Противостояние"

Моды для Disciples 3:
"Астельнаир"(сладкое отсутствие разработки)
AstralLein вне форума   Ответить с цитированием
Ответ


Опции темы

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

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


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


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

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

Авторские права - Copyright © 2002-2018 www.HeroesWorld.ru All rights reserved (new server)


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