всем привет, кто может помочь разобратся с командой: CreateStatic пример из описания: CreateStatic(scriptName, DataFile, x, y, floorId, rotation, terrainAligned, scalePercent);
все параметры ясны кроме DataFile я почему-то решил, что должен указыватся путь к извлеченному объекту, а нет там чтото другое (название нужно, только что за название я не пойму...)
Указатель на тип объекта в ресурсной базе. Может, путь к Shared?
KioM
14 лет назад
именно его и указывал, проблема может быть еще в том что нужный мне объект в оригинале типа: Building, а не Static... :(
Добавлено через 34 минуты вобщем разобрался, следовало сразу обратить внимание на тип объекта, вся проблема была в нем) пересоздал объект с типом статик и все работает ;) (а я грешным делом начал думать, что команда не пашет)
Есть какая-нибудь команда на разблокирование региона? Да, и еще насчет IsObjectExist ('имя монстра'). Как с его помощью, нарпример, можно выдать мессагу, если монстр побежден?
Ment
14 лет назад
Загнать в бесконечный цикл, и если результат отрицательный, выдать сообщение и выйти из цикла (чтобы ресурсы зря не есть).
Я вот не знаю, возвращает ли он nil или false, скорее последнее. Вот такой вариант точно сработает: ~=true then
Спсибо. Тогда насчет первого вопроса: как разблокировать регион?
Ment
14 лет назад
SetRegionBlocked(имя региона с сохранением регистра символов, nil);
KioM
14 лет назад
Никто не в курсе, почему разработчики игры забыли объявить глобальные константы для рас в игре?)))
RACE_HEAVEN, RACE_PRESERVE и т.п. не объявлены, числа то есть но самих констант нету. Или нужно к скрипту отдельный файл подключать еще? где эти расы объявлены, я такого не нашел лично...
================ Еще вопрос такого характера: если я даю игроку при старте три города, но при загрузке карты и скриптов отбираю два замка, можно ли как нибудь закрыть туман войны для этих двух городов?), а то на практике выходит права на оба города перешли к другому игроку, но города остались видны 1-ому.
Ment
14 лет назад
Ну не объявили и ладно. По номеру их тогда зовите. Думаю, будут такие же, как у типов городов:
По поводу тумана я уже говорил, что ни разу в жизни не встречал такую функцию.
KioM
14 лет назад
да такие же, уже проверил) просто интересно под какими номерами должны были бы быть: RACE_SPECIAL, RACE_RANDOM_TYPE, RACE_NO_TYPE... жаль насчет тумана (к слову о недостаточном функционале скриптовой библиотеки героев :() а если попробовать отключить автоматическое открытие тумана войны, отобрать города, и обратно включить?) или врятли... при загрузке, города принадлежащие игроку автоматом свою зону тумана откроют?
Ment
14 лет назад
Не знаю, на самом деле. Думаю, что да, откроется.
KioM
14 лет назад
Ув. Ment, вы не сталкивались по ближе с командой AllowHeroHiringByRaceInTown() ? Очень странно работает, хочу выставить к примеру 2 городам (город людей и город эльфов) чтобы в каждом городе был найм героев только расы города, пишу:
и так же через цикл запрещаю в этих городах найм всех героев остальных рас. В итоге у меня в 1ом городе в котором стартует игрок (к примеру люди) найм героев людей есть, все в норме, а во втором городе вообще нет героев. В чем беда не в курсе?)
Ment
14 лет назад
Не сталкивался. Мне кажется, в цикле что-то не так. Вы бы проверили или код выложили.
for i = 1, blockedTavern.n do for j = 1, length(allTown) do AllowHeroHiringByRaceInTown(allTown[j], blockedTavern, 0); end; end; AllowHeroHiringByRaceInTown('AcademyTown', TOWN_ACADEMY, 1); AllowHeroHiringByRaceInTown('HeavenTown', TOWN_HEAVEN, 1); AllowHeroHiringByRaceInTown('SylvanTown', TOWN_PRESERVE, 1); AllowHeroHiringByRaceInTown('DwarvenTown', TOWN_FORTRESS, 1); AllowHeroHiringByRaceInTown('NecropolisTown', TOWN_NECROMANCY, 1); AllowHeroHiringByRaceInTown('InfernoTown', TOWN_INFERNO, 1); AllowHeroHiringByRaceInTown('HordeTown', TOWN_STRONGHOLD, 1); AllowHeroHiringByRaceInTown('DungeonTown', TOWN_DUNGEON, 1);
т.е. я сперва запрещаю во всех городах найм всех героев, а затем разрешаю в каждом городе по отдельности найм героев его расы. Скорее всего в цикле не правильно, я так думаю что не верно запрещать найм всех героев, может есть способ выбирать отдельные значения из списка blockedTavern для каждого случая?