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

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

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

Ответ
Страница 32 из 267
 
Опции темы
#466
Старый 06.03.2012, 16:04
  #466
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: Скрипты

А Вы уверены, что нумерация начинается с единицы? Разве не с нуля?
Ment вне форума
Ответить с цитированием
#467
Старый 06.03.2012, 16:16
  #467
^
KioM
 
Аватар для KioM
📖
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
По умолчанию
Re: Скрипты

я вот сам незнаю почему так, обычно всегда с 0 (по крайней мере на С++), но здесь при попытке начать нумерацию с 0 в консоли пишет ошибку, начинаеш с 1 все элементы списка передаются начиная с первого. (точно незнаю не изучал lua, но заглянул в справочник там тоже for-цикл пишется в таком формате).
KioM вне форума
Ответить с цитированием
#468
Старый 06.03.2012, 16:35
  #468
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: Скрипты

Хм, тогда вроде в порядке код...
Не понял последнего вопроса.
Ment вне форума
Ответить с цитированием
#469
Старый 06.03.2012, 16:37
  #469
^
KioM
 
Аватар для KioM
📖
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
По умолчанию
Re: Скрипты

Глупость написал
вот можно выбрать из списка например 8 наименований, какое-то одно для нужного случая (пример: blockedTavern[3]), а можно ли исключить определенное наименование? как-раз для моего случая, т.е. выбрать все 8 наимнований и затем исключить например 3-е
KioM вне форума
Ответить с цитированием
#470
Старый 06.03.2012, 16:42
  #470
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

	function regF ()
if IsObjectExist ('mon')~=nil then 
MessageBox (GetMapDataPath().."mes.txt");
else MessageBox (GetMapDataPath().."mes2.txt");
end;
end;
Trigger (REGION_ENTER_WITHOUT_STOP_TRIGGER, "reg", "regF");

не работает все-таки. пишет attempt to call a nil value
__________________
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Олегарх вне форума
Ответить с цитированием
#471
Старый 06.03.2012, 16:51
  #471
^
KioM
 
Аватар для KioM
📖
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
По умолчанию
Re: Скрипты

Олегарх, а не проще написать так:
if IsObjectExist('mon') == true then
MessageBox(GetMapDataPath().."mes.txt");
else...

а вообще можно использовать:
if IsObjectExist('mon') == not nil then
KioM вне форума
Ответить с цитированием
#472
Старый 06.03.2012, 16:52
  #472
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: Скрипты

вот можно выбрать из списка например 8 наименований, какое-то одно для нужного случая (пример: blockedTavern[3]), а можно ли исключить определенное наименование? как-раз для моего случая, т.е. выбрать все 8 наимнований и затем исключить например 3-е
Либо if туда засунуть на число i, либо просто пройтись сначала по первым двум в массиве, а потом по остальным.
не работает все-таки. пишет attempt to call a nil value
Не с nil сравнивать, а с true. Или, как мне кажется, всё-таки с false, но тогда на равенство, а не наоборот.
Ment вне форума
Ответить с цитированием
#473
Старый 06.03.2012, 17:25
  #473
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

MentЛибо if туда засунуть на число i, либо просто пройтись сначала по первым двум в массиве, а потом по остальным.

Не с nil сравнивать, а с true. Или, как мне кажется, всё-таки с false, но тогда на равенство, а не наоборот.
т.е
function regF ()
if IsObjectExist ('mon')=true then
MessageBox (GetMapDataPath().."mes2.txt");
else MessageBox (GetMapDataPath().."mes.txt");
end;
end;
Trigger (REGION_ENTER_WITHOUT_STOP_TRIGGER, "reg", "regF");?
__________________
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Олегарх вне форума
Ответить с цитированием
#474
Старый 06.03.2012, 17:36
  #474
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: Скрипты

function regF ()
if IsObjectExist ('mon')==true then
MessageBox (GetMapDataPath().."mes2.txt");
else MessageBox (GetMapDataPath().."mes.txt");
end;
end;
Trigger (REGION_ENTER_WITHOUT_STOP_TRIGGER, "reg", "regF");
Ment вне форума
Ответить с цитированием
#475
Старый 06.03.2012, 19:12
  #475
^
JonnyP
📖
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
По умолчанию
Re: Скрипты

if IsObjectExists ('mon')==true then , сори, вот посоветовал - а там ошибка в функции IsObjectExists - в конце буковка S обязательна. Если монстра нет то выдает nil (именно nil, а не всякие там true да false).
(Бывает , поэтому и скриптэдитором советовал пользоваться для проверочки).
Олегарх, в твоем случае надо
if IsObjectExists ('mon')==nil ...
Пользуйся принтами - идеальный вариант для перехвата ошибок
print (IsObjectExists('mon')); - и глянь в консоль
JonnyP вне форума
Ответить с цитированием
#476
Старый 07.03.2012, 13:34
  #476
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

JonnyPif IsObjectExists ('mon')==true then , сори, вот посоветовал - а там ошибка в функции IsObjectExists - в конце буковка S обязательна. Если монстра нет то выдает nil (именно nil, а не всякие там true да false).
(Бывает , поэтому и скриптэдитором советовал пользоваться для проверочки).
Олегарх, в твоем случае надо
if IsObjectExists ('mon')==nil ...
Пользуйся принтами - идеальный вариант для перехвата ошибок
print (IsObjectExists('mon')); - и глянь в консоль

А я написал Exist вместо Exists! Исправил, и все заработало сразу.
__________________
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Олегарх вне форума
Ответить с цитированием
#477
Старый 09.03.2012, 14:29
  #477
^
KioM
 
Аватар для KioM
📖
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
По умолчанию
Re: Скрипты

Кто знает как можно в готовом жилище увеличить прирост (в том случае если жилище не относится к городу). SetObjectDwellingCreatures только с городами к сожелению работает...
KioM вне форума
Ответить с цитированием
#478
Старый 09.03.2012, 15:28
  #478
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: Скрипты

Модами знаю (тогда повлияет на все приросты существ данного типа). Скриптами, увы, нет.
Ment вне форума
Ответить с цитированием
#479
Старый 09.03.2012, 15:49
  #479
^
KioM
 
Аватар для KioM
📖
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
Регистрация: 01.02.2012
Адрес: Херсон, Украина
Сообщения: 351
Выставка наград
По умолчанию
Re: Скрипты

эх... если бы вмешатся в принцип работы Get|SetObjectDwellingCreatures, чтобы она работала для всех объектов, а не только для городов
KioM вне форума
Ответить с цитированием
#480
Старый 10.03.2012, 17:07
  #480
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

По-моему, в версии 3.1 talkbox все таки не работает. Игра тоже ее не определяет как команду
__________________
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Мои карты:

Town

Готовится:Чума (40%), Сосиска(42%), Война Грааля
Олегарх вне форума
Ответить с цитированием
Ответ
Страница 32 из 267


Опции темы



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


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

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