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

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

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

Ответ
Страница 83 из 267
 
Опции темы
#1231
Старый 04.05.2013, 17:10
  #1231
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

endы после else всё же должны стоять.
Вот скрипт уже с другой карты:
	function am()
	local old = 8
	while 1 do
		local count = 0
		for i=36,43 do
			count = count + (HasArtefact("Muscip", i) or 0)
		end
		if count ~= old then
			if old == 8 then
				SetObjectiveState("obj", OBJECTIVE_ACTIVE);
				sleep(5);
			end
			if count == 8 then
				SetObjectiveState("obj", OBJECTIVE_COMPLETED);
			else
				SetObjectiveProgress('obj', count);
			end;
			old = count
		end;
		sleep(5);
	end;
end;
И он прекрасно работает
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1232
Старый 04.05.2013, 17:12
  #1232
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

Heroist лишний end перед else

Warrior777 endы после else

Может быть, дело в этом? На этом коде все правильно
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1233
Старый 04.05.2013, 17:13
  #1233
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

Всё, я сам понял. Тупо спутал ПЕРЕД с ПОСЛЕ

Добавлено через 51 секунду
Убрал я эти енды, сейчас посмотрим...
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1234
Старый 04.05.2013, 17:43
  #1234
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

Теперь он совсем нелепое стал писать:

Вызванная функция:
function eh1F(heroname)
if eh1p == 0 then
eh1p = 1
AddHeroCreatures(heroname,91,fac);
AddHeroCreatures(heroname,85,eac);
AddHeroCreatures(heroname,86,eac);
AddHeroCreatures(heroname,87,eac);
AddHeroCreatures(heroname,88,eac);
ShowFlyingSign(w.."ehe.txt");
sleep(5);
else
ShowFlyingSign(w.."ehp.txt");
end;
end;
Изображения
Тип файла: jpg ощибка1.jpg (4.5 Кбайт, 145 просмотров)
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1235
Старый 04.05.2013, 17:46
  #1235
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

она (ошибка/консоль) пишет, что где-то в скрипте есть ссылка на объект, но с именем "", т.е без имени. И естественно его нет на карте...
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1236
Старый 04.05.2013, 17:49
  #1236
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

В конкретно вызванной функции нет объектов с пустым именем.
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1237
Старый 04.05.2013, 17:58
  #1237
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

а почему Вы решили, что ошибка именно об этой функции говорит? В консоли вроде об этом ничего не сказано...
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1238
Старый 04.05.2013, 18:01
  #1238
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

Потому что это сообщение выскочило не в начале, а во время вызова функции. И ещё я проверял скрипт и пустых полей нигде не оставалось.
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1239
Старый 04.05.2013, 18:06
  #1239
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

а, ясно. Она (ф-ия) heroname не восприняла, как героя. Функция-то активироваться должна от героя. Например, повесить на неё touch/region триггер. Иначе она не понимает, какому герою ей давать армию...
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1240
Старый 04.05.2013, 18:29
  #1240
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

Триггер есть.
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1241
Старый 04.05.2013, 18:43
  #1241
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

можно на него посмотреть (скриптовое выражение триггера с вызовом функции) ?
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1242
Старый 04.05.2013, 18:47
  #1242
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

Trigger(OBJECT_TOUCH_TRIGGER,"eh1","eh1F");
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1243
Старый 04.05.2013, 18:53
  #1243
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

переменные eac и fac >= 0 ? (хотя, это не важно совсем)

Тогда не знаю, в чем беда. До данного объекта дотрагивался герой? Значит - heroname. А далее уже работа с ним...

Добавлено через 2 минуты
Так, а имя у объекта (на котром висит триггер) есть?

(Или уже спрашивал?)
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#1244
Старый 04.05.2013, 18:57
  #1244
^
Warrior777
 
Аватар для Warrior777
📖
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
Регистрация: 15.09.2012
Адрес: Под кроватью
Сообщения: 602
По умолчанию
Re: Скрипты

1) fac = random(4,4);
eac = random(20,30);
2)Так видно же по ошибке.
__________________
502 Bad Gateway

__________________________________

nginx/0.8.54
502 Bad Gateway

__________________________________

nginx/0.8.54
Warrior777 вне форума
Ответить с цитированием
#1245
Старый 04.05.2013, 19:17
  #1245
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 15810
Выставка наград
По умолчанию
Re: Скрипты

Как видно, в данной функции (+тригерре) есть два объекта. Один - это герой. Второй - это объект, при соприкосновении с которым героем начинается функция.
Хотя да, раз функция вызвана, значит объект есть. Вопрос снимается.

Даже не знаю, чем помочь. Проверил в редакторе скриптов - по синтаксису все правильно.

Еще раз (для уточнения). Вы начали карту заново. Подошли героем к объекту. Нажали. Функция дала сбой. Так? Просто я уже не знаю, как в такой простой ф-ии может выпасть ошибка.
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
Ответ
Страница 83 из 267


Опции темы



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


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

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