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

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

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

Ответ
Страница 159 из 260
 
Опции темы
#2371
Старый 18.08.2017, 11:21
  #2371
^
WizardNazyr
 
Аватар для WizardNazyr
📖
Регистрация: 24.06.2015
Сообщения: 940
Регистрация: 24.06.2015
Сообщения: 940
По умолчанию
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 вне форума
Ответить с цитированием
#2372
Старый 18.08.2017, 12:30
  #2372
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
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
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

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

Доброго Времени Суток! допустим у меня есть герой, условный Винраэль и я хотел бы вызвать ему бой например с 200 латников и 150 гаргулей. Возможно ли это сделать в одиночной игре через консоль?
VolgaBear вне форума
Ответить с цитированием
#2375
Старый 18.09.2017, 18:24
  #2375
^
WizardNazyr
 
Аватар для WizardNazyr
📖
Регистрация: 24.06.2015
Сообщения: 940
Регистрация: 24.06.2015
Сообщения: 940
По умолчанию
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 вне форума
Ответить с цитированием
#2376
Старый 18.09.2017, 20:27
  #2376
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
По умолчанию
Re: Скрипты

WizardNazyr, ваш код после сообщения можно описать как:
	бесконечный цикл
{
  проверка условия.
}
В цикл нужно добавить sleep. Плюс, лучше если он будет выполняться в отдельном потоке (по приведенному коду неясно обёрнут он в поток или нет).
Jack_of_shadows вне форума
Ответить с цитированием
#2377
Старый 19.09.2017, 05:29
  #2377
^
WizardNazyr
 
Аватар для WizardNazyr
📖
Регистрация: 24.06.2015
Сообщения: 940
Регистрация: 24.06.2015
Сообщения: 940
По умолчанию
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 вне форума
Ответить с цитированием
#2378
Старый 19.09.2017, 08:40
  #2378
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
По умолчанию
Re: Скрипты

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

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

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

Будет.

Смогут.
__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


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

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

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


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

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

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
#2382
Старый 01.10.2017, 13:16
  #2382
^
WizardNazyr
 
Аватар для WizardNazyr
📖
Регистрация: 24.06.2015
Сообщения: 940
Регистрация: 24.06.2015
Сообщения: 940
По умолчанию
Re: Скрипты

AstralLeinБудет.

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

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

__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


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

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

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


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

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

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
#2384
Старый 18.10.2017, 21:20
  #2384
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
Регистрация: 08.09.2013
Сообщения: 507
Выставка наград
По умолчанию
Re: Скрипты

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

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

Добавлено через 2 минуты
Кстати, как листать консоль вверх-вниз?
__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


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

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

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


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

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

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
Ответ
Страница 159 из 260


Опции темы



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


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

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