Скрипты для начинающих - Страница 24 - Форум HeroesWorld-а

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

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

Ответ
Страница 24 из 29
 
Опции темы
#346
Старый 12.12.2022, 08:43
  #346
^
}{0TT@6bI4
 
Аватар для }{0TT@6bI4
📖
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 2056
Выставка наград
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 2056
Выставка наград
По умолчанию
Re: Скрипты для начинающих

Маху дали, уважаемый BlueHeavenHero) Необязательно явно указывать передачу nil в параметры (за исключением редкого случая, могу рассказать), так как любое необъявленное значение считается изначально nil. То есть три (четыре) последних nil'а можно вообще не писать. Кроме того, REGION_ENTER_... — это переменная с мнемоничным названием, хранящая именно число-айди триггера. И это число можно передавать вручную — как сделал это Лоли Никита. Нет, конечно, если он ошибся именно цифрой и 6 относится к триггеру смены состояния задания, то вы правы.
__________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 вне форума
Ответить с цитированием
#347
Старый 12.12.2022, 17:01
  #347
^
BlueHeavenHero
 
Аватар для BlueHeavenHero
📖
Регистрация: 20.08.2022
Сообщения: 428
Регистрация: 20.08.2022
Сообщения: 428
По умолчанию
Re: Скрипты для начинающих

}{0TT@6bI4Маху дали, уважаемый BlueHeavenHero) Необязательно явно указывать передачу nil в параметры (за исключением редкого случая, могу рассказать), так как любое необъявленное значение считается изначально nil. То есть три (четыре) последних nil'а можно вообще не писать. Кроме того, REGION_ENTER_... — это переменная с мнемоничным названием, хранящая именно число-айди триггера. И это число можно передавать вручную — как сделал это Лоли Никита. Нет, конечно, если он ошибся именно цифрой и 6 относится к триггеру смены состояния задания, то вы правы.
Да.. 
Такой я себе помощник) 
Я, после одного НЕвеселого случая в скрипте всегда указываю все nil'ы, а цифровые значения практически не использую
Кстати, про регион и битву - это самая простейшая функция, как по мне. 
BlueHeavenHero вне форума
Ответить с цитированием
#348
Старый 13.12.2022, 22:39
  #348
^
Лоли Никита
 
Аватар для Лоли Никита
📖
Регистрация: 24.03.2019
Сообщения: 34
Регистрация: 24.03.2019
Сообщения: 34
По умолчанию
Re: Скрипты для начинающих

Подскажите пожалуйста одну вещь. У меня на карте есть замок четвертого игрока, но у него в городе нет таверны и героев на карте тоже нет. Однако он призывает к себе войска из зданий на карте и к нему едут караваны в замок. Можно как-либо запретить ему так делать, может скрипт есть какой?
Лоли Никита вне форума
Ответить с цитированием
#349
Старый 13.12.2022, 23:25
  #349
^
Азгалор
 
Аватар для Азгалор
📖
Регистрация: 24.04.2016
Сообщения: 226
Регистрация: 24.04.2016
Сообщения: 226
По умолчанию
Re: Скрипты для начинающих

Лоли НикитаПодскажите пожалуйста одну вещь. У меня на карте есть замок четвертого игрока, но у него в городе нет таверны и героев на карте тоже нет. Однако он призывает к себе войска из зданий на карте и к нему едут караваны в замок. Можно как-либо запретить ему так делать, может скрипт есть какой?
Как вариант: поставить перед городом регион и заблокировать его для четвёртого игрока
Азгалор вне форума
Ответить с цитированием
#350
Старый 14.12.2022, 17:37
  #350
^
Лоли Никита
 
Аватар для Лоли Никита
📖
Регистрация: 24.03.2019
Сообщения: 34
Регистрация: 24.03.2019
Сообщения: 34
По умолчанию
Re: Скрипты для начинающих

АзгалорКак вариант: поставить перед городом регион и заблокировать его для четвёртого игрока

Большое спасибо за помощь
Лоли Никита вне форума
Ответить с цитированием
#351
Старый 03.06.2023, 01:11
  #351
^
JustPeasant
 
Аватар для JustPeasant
📖
Регистрация: 10.12.2022
Сообщения: 5
Регистрация: 10.12.2022
Сообщения: 5
По умолчанию
Re: Скрипты для начинающих

Подскажите, плиз, товарищи, а возможно ли читать обычный txt файл из скрипта?
JustPeasant вне форума
Ответить с цитированием
#352
Старый 03.06.2023, 11:32
  #352
^
}{0TT@6bI4
 
Аватар для }{0TT@6bI4
📖
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 2056
Выставка наград
Регистрация: 05.09.2019
Адрес: Серебряные Города, Аль-Сафир
Сообщения: 2056
Выставка наград
По умолчанию
Re: Скрипты для начинающих

Нет, только вывести через окно сообщений, например, MessageBox
__________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 вне форума
Ответить с цитированием
#353
Старый 03.06.2023, 12:05
  #353
^
JustPeasant
 
Аватар для JustPeasant
📖
Регистрация: 10.12.2022
Сообщения: 5
Регистрация: 10.12.2022
Сообщения: 5
По умолчанию
Re: Скрипты для начинающих

}{0TT@6bI4Нет, только вывести через окно сообщений, например, MessageBox
Не, я имел в виду именно взаимодействие с файловой системой. Консоль же пишет в файл. Т.е. в одну сторону есть. А в обратную? Может консоль умеет и что-то такое же. Видел функцию OpenFile, но она отключена

Добавлено через 14 минут
Это бы открыло очень много интересных взможностей

Добавлено через 3 минуты
Так сказать, общение скрипта с внешним миром
JustPeasant вне форума
Ответить с цитированием
#354
Старый 14.10.2023, 00:28
  #354
^
AngryTapok1337
📖
Регистрация: 14.10.2023
Сообщения: 16
Регистрация: 14.10.2023
Сообщения: 16
По умолчанию
Re: Скрипты для начинающих

Здравствуйте. Может кто помочь со скриптом? Я вообще не понимаю как работает команда StartCombat. Например я вот хочу, чтобы при входе в регион показывалось сообщение и потом начиналась битва. У меня получился следующий скрипт:

 

function Region1F ()
    
    sleep(5);
    MessageBox ("/Maps/SingleMissions/MapochkaTEST3/battletext.txt");
    sleep(5);
    StartCombat ( "RedHeavenHero04", "Ottar", 4, 166, 100, 166, 100, 167, 75, 169, 50, 170, 15);
    Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1",nil);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1","Region1F");

 

Но он не работает - сообщение показывается, но бой не начинается.

 

И второй вопрос - как заставить существ проигрывать анимации на карте? Например я хочу, чтобы на карте два стека существ проигрывали анимации атаки друг на против друга. Подскажите, пожалуйста, как это можно реализовать.

 

Заранее спасибо 

AngryTapok1337 вне форума
Ответить с цитированием
#355
Старый 14.10.2023, 07:47
  #355
^
BlueHeavenHero
 
Аватар для BlueHeavenHero
📖
Регистрация: 20.08.2022
Сообщения: 428
Регистрация: 20.08.2022
Сообщения: 428
По умолчанию
Re: Скрипты для начинающих

AngryTapok1337

Здравствуйте. Может кто помочь со скриптом? Я вообще не понимаю как работает команда StartCombat. Например я вот хочу, чтобы при входе в регион показывалось сообщение и потом начиналась битва. У меня получился следующий скрипт:

 

function Region1F ()
    
    sleep(5);
    MessageBox ("/Maps/SingleMissions/MapochkaTEST3/battletext.txt");
    sleep(5);
    StartCombat ( "RedHeavenHero04", "Ottar", 4, 166, 100, 166, 100, 167, 75, 169, 50, 170, 15);
    Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1",nil);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1","Region1F");

 

Но он не работает - сообщение показывается, но бой не начинается.

 

И второй вопрос - как заставить существ проигрывать анимации на карте? Например я хочу, чтобы на карте два стека существ проигрывали анимации атаки друг на против друга. Подскажите, пожалуйста, как это можно реализовать.

 

Заранее спасибо 

Сегодня скину скрипт на анимации атаки существ
BlueHeavenHero вне форума
Ответить с цитированием
#356
Старый 14.10.2023, 14:45
  #356
^
AngryTapok1337
📖
Регистрация: 14.10.2023
Сообщения: 16
Регистрация: 14.10.2023
Сообщения: 16
По умолчанию
Re: Скрипты для начинающих

BlueHeavenHeroСегодня скину скрипт на анимации атаки существ

Буду благодарен😊

AngryTapok1337 вне форума
Ответить с цитированием
#357
Старый 14.10.2023, 17:46
  #357
^
BlueHeavenHero
 
Аватар для BlueHeavenHero
📖
Регистрация: 20.08.2022
Сообщения: 428
Регистрация: 20.08.2022
Сообщения: 428
По умолчанию
Re: Скрипты для начинающих

AngryTapok1337

 

Буду благодарен😊

Прости, чет забыл про своё обещание( Вот скрипт:
function battle()
	local PlayObjectAnimation = function(mob, anim)
		if IsObjectExists(mob) then
			PlayObjectAnimation(mob, anim, 3)
		end
	end
	while IsObjectExists("имя атакующего существа") do
		if IsObjectVisible(1, "имя атакующего существа") then
			PlayObjectAnimation("имя атакующего существа", "attack00")
			sleep(4)
			PlayObjectAnimation("имя защищающегося существа", "hit")
			sleep(15 + random(15))
			PlayObjectAnimation("имя защищающегося существа", "attack00")
			sleep(4)
			PlayObjectAnimation("имя атакующего существа", "hit")
		end
		sleep(15 + random(15))
	end
end
startThread(battle)
BlueHeavenHero вне форума
Ответить с цитированием
#358
Старый 14.10.2023, 18:44
  #358
^
AngryTapok1337
📖
Регистрация: 14.10.2023
Сообщения: 16
Регистрация: 14.10.2023
Сообщения: 16
По умолчанию
Re: Скрипты для начинающих

BlueHeavenHeroПрости, чет забыл про своё обещание( Вот скрипт:
function battle()
	local PlayObjectAnimation = function(mob, anim)
		if IsObjectExists(mob) then
			PlayObjectAnimation(mob, anim, 3)
		end
	end
	while IsObjectExists("имя атакующего существа") do
		if IsObjectVisible(1, "имя атакующего существа") then
			PlayObjectAnimation("имя атакующего существа", "attack00")
			sleep(4)
			PlayObjectAnimation("имя защищающегося существа", "hit")
			sleep(15 + random(15))
			PlayObjectAnimation("имя защищающегося существа", "attack00")
			sleep(4)
			PlayObjectAnimation("имя атакующего существа", "hit")
		end
		sleep(15 + random(15))
	end
end
startThread(battle)


Спасибо, опробуем!

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

AngryTapok1337 вне форума
Ответить с цитированием
#359
Старый 14.10.2023, 19:18
  #359
^
BlueHeavenHero
 
Аватар для BlueHeavenHero
📖
Регистрация: 20.08.2022
Сообщения: 428
Регистрация: 20.08.2022
Сообщения: 428
По умолчанию
Re: Скрипты для начинающих

AngryTapok1337

Здравствуйте. Может кто помочь со скриптом? Я вообще не понимаю как работает команда StartCombat. Например я вот хочу, чтобы при входе в регион показывалось сообщение и потом начиналась битва. У меня получился следующий скрипт:

 

function Region1F ()
    
    sleep(5);
    MessageBox ("/Maps/SingleMissions/MapochkaTEST3/battletext.txt");
    sleep(5);
    StartCombat ( "RedHeavenHero04", "Ottar", 4, 166, 100, 166, 100, 167, 75, 169, 50, 170, 15);
    Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1",nil);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"Region1","Region1F");

 

Но он не работает - сообщение показывается, но бой не начинается.

 

И второй вопрос - как заставить существ проигрывать анимации на карте? Например я хочу, чтобы на карте два стека существ проигрывали анимации атаки друг на против друга. Подскажите, пожалуйста, как это можно реализовать.

 

Заранее спасибо 

Попробуй вместо своего старткомьат поставить этот:
StartCombat ( "RedHeavenHero04", "Ottar", 5,166, 100, 166, 100, 167, 75, 169, 50, 170, 15);
Если не работает, то значит, либо героя Ottar вообще нет в карте, либо его НЕТ в резерве у игрока-врага. Если Ottar стоит на глобальной карте как просто герой, битва не начнётся - надо пихать его в резерв игрока-врага. 
BlueHeavenHero вне форума
Ответить с цитированием
#360
Старый 14.10.2023, 19:30
  #360
^
AngryTapok1337
📖
Регистрация: 14.10.2023
Сообщения: 16
Регистрация: 14.10.2023
Сообщения: 16
По умолчанию
Re: Скрипты для начинающих

BlueHeavenHeroПопробуй вместо своего старткомьат поставить этот:
StartCombat ( "RedHeavenHero04", "Ottar", 5,166, 100, 166, 100, 167, 75, 169, 50, 170, 15);
Если не работает, то значит, либо героя Ottar вообще нет в карте, либо его НЕТ в резерве у игрока-врага. Если Ottar стоит на глобальной карте как просто герой, битва не начнётся - надо пихать его в резерв игрока-врага. 

Спасибо, про резерв не знал и действительно он был не зарезервирован. Сегодня-завтра попробую переделать, я пока временно убрал Ottar вообще. Просто поставил сильный отряд нейтралов-гномов в качестве костыля)

AngryTapok1337 вне форума
Ответить с цитированием
Ответ
Страница 24 из 29


Опции темы



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


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

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