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

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

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

Ответ
Страница 113 из 260
 
Опции темы
#1681
Старый 07.11.2013, 00:16
  #1681
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

а были же где-то всплывающие иконки монстров? на каком-то объекте? или мне казалось...
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1682
Старый 07.11.2013, 00:25
  #1682
^
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 вне форума
Ответить с цитированием
#1683
Старый 07.11.2013, 16:26
  #1683
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

блин, чего-то не работает скрипт.

	function burn()
----
for i, hut in GetObjectNamesByType('PEASANT_HUT') do
Trigger(4, hut, 'hutF')
end
-----
startThread(burn2)
end

startThread(burn)


---

fires = 0

function burn2(hero, hut)
while 1 do
sleep(1)
if GetCurrentPlayer() == 1 and fires == 0 then
SetObjectEnabled(hut , nil)
fires = 1
elseif GetCurrentPlayer() == 2 or GetCurrentPlayer() == 3 or GetCurrentPlayer() == 4 then
SetObjectEnabled(hut , true)
fires = 0
end
end
end


----

hutt = 0

----

fire2 = 0

function hutF(hero, hut)
if GetCurrentPlayer() == 1 and fire2 == 0 then
sleep(1)
QuestionBox ( "/Maps/SingleMissions/NewRandomMap 43/burn1.txt" , 'burnok' , 'burnno');
sleep(1)
end
end

function burnok(hero, hut)
sleep(1)
BlockGame()
--burn hut effects
hutt = hutt + 1
Trigger(4, hut, nil)
UnblockGame()
end

function burnno(hero, hut)
sleep(1)
fire2 = 1
SetObjectEnabled(hut, true)
sleep(1)
MakeHeroInteractWithObject('Nymus' , hut)
sleep(1)
SetObjectEnabled(hut, nil)
fire2 = 0
end


собственно, главное, что меня интересует, это как заставить скрипт считывать имя hut и использовать его в других ф-иях. Если пишу в скобках после названия ф-ии, почему-то не пашет(
на переменные можно не обращать внимания, просто ф-ий, где они будут, пока еще нет.
пробовал через GameVar вывести hut, но оно его не считывает.
ну и в кавычках вообще перестает видеть объект(
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1684
Старый 07.11.2013, 16:51
  #1684
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Сохрани hut в какую-нибудь глобальную переменную с другим именем, например, current_hut.
А вообще аргументы в функции передаются как обычно
функция(список_аргументов)
или
startThread(функция, список_аргументов)

Добавлено через 41 секунду
И, если хочешь делать MakeHeroInteractWithObject, то триггер надо отключать тоже.

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

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1685
Старый 07.11.2013, 16:52
  #1685
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

SetGameVar ('hut2' , hut)
---
hut3 = GetGameVar('hut2')
---
SetObjectEnabled('hut3', true)

так правильно? (кавычки там и все такое)

Добавлено через 55 секунд
Кстати, а зачем столько минусов между строк?

надо. я уставший и начинаю путаться, не могу отличить одно от другого. Вот и ставлю enterы и минусики)))
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1686
Старый 07.11.2013, 16:53
  #1686
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

SetGameVar - это общеигровая переменная, а не глобальная. Глобальная, это та, что не локальная.
В данном скрипте глобальными переменными будут являться burn, fires, burn2, hutt, fire2, hutF, burnok, burnno.
надо. я уставший и начинаю путаться, не могу отличить одно от другого. Вот и ставлю enterы и минусики)))
Попробуй каждый следующий уровень (после слов function ...(), do, then и перевода на новую строку ставить таб вначале).
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1687
Старый 07.11.2013, 16:55
  #1687
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

а как мне hut превратить в глобальную?
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1688
Старый 07.11.2013, 16:57
  #1688
^
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 вне форума
Ответить с цитированием
#1689
Старый 07.11.2013, 16:58
  #1689
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

ааа.

Ладно.

Ну и почему тогда не работает-то?))
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1690
Старый 07.11.2013, 16:58
  #1690
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

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

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1691
Старый 07.11.2013, 17:05
  #1691
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

RedHeavenHeroЕщё: startThread(burn2) нужно писать внутри цикла.

ага, это просмотрел. Исправим.

Добавлено через 6 минут
Так и не понял, почему тогда не работает. Раз ф-ия глобальная, значит кавычки не нужны? Но все-равно enabled не ставитцо.
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1692
Старый 07.11.2013, 17:09
  #1692
^
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 вне форума
Ответить с цитированием
#1693
Старый 07.11.2013, 17:11
  #1693
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

Буду очень признателен) Если что, я хотел еще подобного рода ф-ии сделать с башнями лучников, бараками и хэйвенским постом.
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1694
Старый 07.11.2013, 17:43
  #1694
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Пока так. Если будут ошибки, говори какие, будем исправлять.
	HAVEN_DWLS = {}
hutt = 0

function burn()
	for i, dw_type in {"PEASANT_HUT", "ARCHERS_HOUSE", "BARRACKS", "HEAVEN_MILITARY_POST"} do
		for j, dw in GetObjectNamesByType(dw_type) do
			HAVEN_DWLS[dw] = "откл"
			SetObjectEnabled(dw, nil)
			Trigger(4, dw, "BurnHavenDwelling")
		end
	end
	startThread(burn2)
end

startThread(burn)

function burn2()
	while 1 do
		repeat
			sleep()
		until IsPlayerCurrent(1)
		for dwelling, state in HAVEN_DWLS do 
			if state == "вкл" then
				HAVEN_DWLS[dwelling] = "откл"
				SetObjectEnabled(dwelling, nil)
				Trigger(4, dwelling, "BurnHavenDwelling")
			end
		end
		repeat
			sleep()
		until not IsPlayerCurrent(1)
		for dwelling, state in HAVEN_DWLS do
			if state == "откл" then
				HAVEN_DWLS[dwelling] = "вкл"
				SetObjectEnabled(dwelling, 1)
				Trigger(4, dwelling, nil)
			end
		end
	end
end

function BurnHavenDwelling(hero, hut)
	if GetCurrentPlayer() == 1 then
		QuestionBox ( "/Maps/SingleMissions/NewRandomMap 43/burn1.txt" , 'burnok("'..hut..'")' , 'burnno("'..hut..'")');
	end
end

function burnok(hut)
	Trigger(4, hut, nil)
	hutt = hutt + 1
	HAVEN_DWLS[hut] = nil
end

function burnno(hut)
	SetObjectEnabled(hut, 1)
	Trigger(4, hut, nil)
	sleep(1)
	MakeHeroInteractWithObject('Nymus' , hut)
	sleep(1)
	SetObjectEnabled(hut, nil)
	Trigger(4, hut, "BurnHavenDwelling")
end

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

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#1695
Старый 07.11.2013, 17:52
  #1695
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

а что должно быть на месте "вкл" и "откл" ?
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
Ответ
Страница 113 из 260


Опции темы



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


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

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