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

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

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

Ответ
Страница 70 из 260
 
Опции темы
#1036
Старый 08.03.2013, 18:46
  #1036
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30681
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30681
По умолчанию
Re: Скрипты

function Fight( heroname )
if heroname == 'Ish' then
if HasArtefact(heroname, ARTIFACT_HELM_OF_ENLIGHMENT) then
SetObjectPosition('rav', 105, 74, -1);
Trigger( REGION_ENTER_AND_STOP_TRIGGER, 'art', nil );
end;
end;

Trigger( REGION_ENTER_AND_STOP_TRIGGER, 'art', 'Fight' );
Ment вне форума
Ответить с цитированием
#1037
Старый 08.03.2013, 19:05
  #1037
^
GodRick
 
Аватар для GodRick
📖
Регистрация: 16.10.2012
Сообщения: 124
Регистрация: 16.10.2012
Сообщения: 124
По умолчанию
Re: Скрипты

скрипт не сработал =(
GodRick вне форума
Ответить с цитированием
#1038
Старый 08.03.2013, 19:38
  #1038
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30681
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30681
По умолчанию
Re: Скрипты

Да, виноват.
function Fight( heroname )
if ((heroname == 'Ish') and (HasArtefact(heroname, ARTIFACT_HELM_OF_ENLIGHMENT))) then
SetObjectPosition('rav', 105, 74, -1);
Trigger( REGION_ENTER_AND_STOP_TRIGGER, 'art', nil );
end;
end;

Trigger( REGION_ENTER_AND_STOP_TRIGGER, 'art', 'Fight' );
Ment вне форума
Ответить с цитированием
#1039
Старый 08.03.2013, 20:12
  #1039
^
GodRick
 
Аватар для GodRick
📖
Регистрация: 16.10.2012
Сообщения: 124
Регистрация: 16.10.2012
Сообщения: 124
По умолчанию
Re: Скрипты

герой останавливается в нужной области, но противник не перемещется
GodRick вне форума
Ответить с цитированием
#1040
Старый 08.03.2013, 22:33
  #1040
^
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 вне форума
Ответить с цитированием
#1041
Старый 09.03.2013, 18:52
  #1041
^
GodRick
 
Аватар для GodRick
📖
Регистрация: 16.10.2012
Сообщения: 124
Регистрация: 16.10.2012
Сообщения: 124
По умолчанию
Re: Скрипты

(тупой вопрос) какая консоль?
GodRick вне форума
Ответить с цитированием
#1042
Старый 09.03.2013, 19:32
  #1042
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30681
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30681
По умолчанию
Re: Скрипты

Ment вне форума
Ответить с цитированием
#1043
Старый 11.03.2013, 19:25
  #1043
^
JORAJAN
📖
Регистрация: 24.02.2013
Сообщения: 35
Регистрация: 24.02.2013
Сообщения: 35
По умолчанию
Re: Скрипты

SetObjectEnabled("имя гарнизона", nil);
Trigger(4, "имя гарнизона", "capture_gar");

function capture_gar(hero)
local a = {};
a[1], a[3], a[5], a[7], a[9], a[11], a[13] = GetObjectCreaturesTypes("имя гарнизона");
for i = 1, 7 do
if a[i*2-1] ~= 0 then
a[i*2] = 2 * GetObjectCreatures("имя гарнизона", a[i*2-1]);
end;
end;
SetObjectEnabled("имя гарнизона", 1);
Trigger(4, "имя гарнизона", nil);
MakeHeroInteractWithObject(hero, "имя гарнизона");
local i = GetLastSavedCombatIndex();
while i == GetLastSavedCombatIndex() do
sleep(1);
end;
if not IsHeroAlive(hero) then
SetObjectEnabled("имя гарнизона", nil);
Trigger(4, "имя гарнизона", "capture_gar");
return
end;
for i = 1, 7 do
if a[i*2] then
AddObjectCreatures("имя гарнизона", a[i*2-1], a[i*2]);
end;
end;
DenyGarrisonCreaturesTakeAway("имя гарнизона", 1);
end;



у меня не получается настроить этот скрипт на несколько гарнизонов на карте
пробовал называть все гарнизоны одним именем не получается
пробовал дублировать текст скрипта и вставляя в каждый скрипт своё имя тоже не получается
и ешё вопрос
допустил касяк при создании карты выбрал не мультиплеер арена а сингл сценарий
можно ли как нибудь исправить ?
JORAJAN вне форума
Ответить с цитированием
#1044
Старый 14.03.2013, 16:07
  #1044
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

	garrisons={'имя гарнизона 1', 'имя гарнизона 2', 'имя гарнизона 3',} -- и т.д. через запятую
for j, gar in garrisons do
	Trigger(5, gar, 'capture_gar')
	garrisons[gar] = {}
	for i = 0, 6 do
		local t, n = GetObjectArmySlotCreature(gar, i)
		garrisons[gar][i] = {t, n}
	end
end

function capture_gar(oldowner, newowner, hero, gar)
	for i = 0, 6 do
		if gar_army[gar][i][1] ~= 0 then
			AddObjectCreatures(gar, gar_army[gar][i][1], gar_army[gar][i][2]*2)
		end
	end
	DenyGarrisonCreaturesTakeAway(gar, 1)
	Trigger(5, gar, nil)
end


Добавлено через 43 минуты
и ешё вопрос
допустил касяк при создании карты выбрал не мультиплеер арена а сингл сценарий
можно ли как нибудь исправить ?
В архиве карты переместить содержимое папки SingleMissions в папку Multiplayer.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1045
Старый 15.03.2013, 02:32
  #1045
^
JORAJAN
📖
Регистрация: 24.02.2013
Сообщения: 35
Регистрация: 24.02.2013
Сообщения: 35
По умолчанию
Re: Скрипты

непонял вы показали пример или создали совсем другой скрипт
я на всякий случай попробовал и так и так
не работает где я накосячил ?
garrisons={'G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9'}
for j, gar in garrisons do
Trigger(5, gar, 'capture_gar')
garrisons[gar] = {}
for i = 0, 6 do
local t, n = GetObjectArmySlotCreature(gar, i)
garrisons[gar][i] = {t, n}
end
end

function capture_gar(oldowner, newowner, hero, gar)
for i = 0, 6 do
if gar_army[gar][i][1] ~= 0 then
AddObjectCreatures(gar, gar_army[gar][i][1], gar_army[gar][i][2]*2)
end
end
DenyGarrisonCreaturesTakeAway(gar, 1)
Trigger(5, gar, nil)
end
JORAJAN вне форума
Ответить с цитированием
#1046
Старый 15.03.2013, 13:57
  #1046
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Это я кое-что перепутал.
	garrisons={'G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9'}
for j, gar in garrisons do
	Trigger(5, gar, 'capture_gar')
	garrisons[gar] = {}
	for i = 0, 6 do
		local t, n = GetObjectArmySlotCreature(gar, i)
		garrisons[gar][i] = {t, n}
	end
end

function capture_gar(oldowner, newowner, hero, gar)
	for i = 0, 6 do
		if garrisons[gar][i][1] ~= 0 then
			AddObjectCreatures(gar, garrisons[gar][i][1], garrisons[gar][i][2]*2)
		end
	end
	DenyGarrisonCreaturesTakeAway(gar, 1)
	Trigger(5, gar, nil)
end
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1047
Старый 15.03.2013, 19:26
  #1047
^
JORAJAN
📖
Регистрация: 24.02.2013
Сообщения: 35
Регистрация: 24.02.2013
Сообщения: 35
По умолчанию
Re: Скрипты

почемуто
не работает
JORAJAN вне форума
Ответить с цитированием
#1048
Старый 15.03.2013, 20:41
  #1048
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

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

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1049
Старый 15.03.2013, 21:02
  #1049
^
JORAJAN
📖
Регистрация: 24.02.2013
Сообщения: 35
Регистрация: 24.02.2013
Сообщения: 35
По умолчанию
Re: Скрипты

я рисую карту в 3.1
+ дополнения
God's mod v7 + патч EWA
у меня работает этот скрипт
	SetObjectEnabled("имя гарнизона", nil);
Trigger(4, "имя гарнизона", "capture_gar");

function capture_gar(hero)
	local a = {};
	a[1], a[3], a[5], a[7], a[9], a[11], a[13] = GetObjectCreaturesTypes("имя гарнизона");
	for i = 1, 7 do
		if a[i*2-1] ~= 0 then
			a[i*2] = 2 * GetObjectCreatures("имя гарнизона", a[i*2-1]);
		end;
	end;
	SetObjectEnabled("имя гарнизона", 1);
	Trigger(4, "имя гарнизона", nil);
	MakeHeroInteractWithObject(hero, "имя гарнизона");
	local i = GetLastSavedCombatIndex();
	while i == GetLastSavedCombatIndex() do
		sleep(1);
	end;
	if not IsHeroAlive(hero) then 
		SetObjectEnabled("имя гарнизона", nil);
		Trigger(4, "имя гарнизона", "capture_gar");
		return
	end;
	for i = 1, 7 do
		if a[i*2] then
			AddObjectCreatures("имя гарнизона", a[i*2-1], a[i*2]);
		end;
	end;
	DenyGarrisonCreaturesTakeAway("имя гарнизона", 1);
end;
но только на один гарнизон
как переделать его так что бы он работал на 9 ?
JORAJAN вне форума
Ответить с цитированием
#1050
Старый 15.03.2013, 21:23
  #1050
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Ну если только тот работает...
	garrisons={'G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9'}
for i, gar in garrisons do
	SetObjectEnabled(gar, nil)
	Trigger(4, gar, "capture_gar")
end

function capture_gar(hero, gar)
	local a = {}
	a[1], a[3], a[5], a[7], a[9], a[11], a[13] = GetObjectCreaturesTypes(gar)
	for i = 1, 7 do
		if a[i*2-1] ~= 0 then
			a[i*2] = 2 * GetObjectCreatures(gar, a[i*2-1])
		end
	end
	SetObjectEnabled(gar, 1)
	Trigger(4, gar, nil)
	MakeHeroInteractWithObject(hero, gar)
	local i = GetLastSavedCombatIndex()
	while i == GetLastSavedCombatIndex() do
		sleep(1)
	end
	if not IsHeroAlive(hero) then 
		SetObjectEnabled(gar, nil)
		Trigger(4, gar, "capture_gar")
		return
	end
	for i = 1, 7 do
		if a[i*2] then
			AddObjectCreatures(gar, a[i*2-1], a[i*2])
		end
	end
	DenyGarrisonCreaturesTakeAway(gar, 1)
end
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

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


Опции темы



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


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

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