Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Топ:
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
2018-01-29 | 173 |
5.00
из
|
Заказать работу |
|
|
Возвращает, жив ли герой с именем sHeroName.
void DeployReserveHero(sHeroName, nX, nY, nFloorID = GROUND)
Разместить по указанным координатам героя из резерва. Герои резервируются при дизайне карты. В таверне, соответственно, их нанять нельзя. Если указанный тайл уже занят, герой будет размещен на ближайшем свободном тайле. Если на момент вызова функции герой мертв, он все равно будет размещен по указанному тайлу в своем изначальном состоянии (т.е. с армией, указанной при дизайне карты).
Если указанный герой не был резервирован при дизайне, вызов функции приведет к ошибке.
Void UnreserveHero(sHeroName)
Вывести указанного героя из резерва. Соответственно, данный герой становится доступным к найму в тавернах. Если к моменту вызова функции этот герой еще жив, и находится под контролем игрока, то из под контроля он не выводится. К найму он будет доступен только после гибели.
Если указанный герой не был резервирован при дизайне, вызов функции приведет к ошибке.
nCost CalcHeroMoveCost(sHeroName, nX, nY, nFloorID = -1)
Возвращает количество movepoints героя, которые ему придется затратить при перемещении в точку с указанными координатами. Если в данную точку переместиться нельзя (т.е., например, путь кем-либо заблокирован), функция вернет -1. Данная функция не работает с героями, находящимися внутри города. Если не указан этаж, то будет использован тот, на котором герой уже находится.
void MoveHeroRealTime(sHeroName, nX, nY, nFloorID = -1)
Герой поскачет в точку с указанными координатами. Безотносительно того, чей ход и наличия/отсутствия у него movepoints. Данная функция не работает с героями, находящимися внутри города. Если не указан этаж, то будет использован тот, на котором герой находится. Если герой не может достичь указанного тайла, вызов функции приведет к ошибке. Если тайл занят героем противника (и герой находится в «разрешенном» состоянии, см. SetObjectEnabled), стартует тактическая битва.
|
Функция немодальна – скрипт продолжит выполнение сразу после вызова функции, а не после того, как герой достигнет точки назначения. Интерфейс пользователя и действия АИ блокируются на время движения героя.
NCount GetHeroCreatures(sHeroName, nCreatureID)
Void AddHeroCreatures(sHeroName, nCreateureID, nCount)
Void RemoveHeroCreatures(sHeroName, nCreatureID, nCount)
Функции соответственно возвращают/добавляют/удаляют герою с именем sHeroName стек юнитов типа nCreatureID. Соотв. константы CREATURE_* для nCreatureID см. в /scripts/common.lua. Сюда писать не буду ввиду большого объема. Если стек должного типа отсутствует у героя, то вызов RemoveHeroCreatures к ошибке не приводит. В случае, если у героя отсутствуют стеки за исключением удаляемых, одно существо из стека герою будет оставлено.
Герой с именем sHeroName может отсутствовать на глобальной карте (например, может находиться в городе).
void GiveArtefact(sHeroName, nArtID, nBindToHero = 0)
Выдает герою с именем sHeroName артефакт nArtID. Соотв. константы ARTIFACT_* для nArtID см. в /scripts/advmap-startup.lua. Сюда писать не буду ввиду большого объема.
Если третий параметр отличен от нуля, то передать артефакт другому герою будет нельзя.
Артефакт всегда экипируется, если это возможно, и всегда выдается в единичном количестве. Чтобы выдать два одинаковых – нужно вызвать функцию с одинаковыми параметрами дважды.
Если после выдачи артефакта подразумевается к/л немедленное продолжение работы с этим предметом (типа удаления, или проверки наличия) рекомендую писать sleep(1) сразу после GiveArtefact. Т.к. иначе предмет может не успеть выдаться. Собственно, это замечание относится ко всем функциям, в которых герою (или объекту) что-либо выдается. Отсюда мораль – ставьте sleep, он лишним не будет. Функция имеет алиас с именем GiveArtifact.
Bool HasArtefact(sHeroName, nArtID)
Функция возвращает, есть ли у героя с именем sHeroName хотя бы один артефакт nArtID. Узнать, использует ли герой артефакт, или последний просто валяется в торбе, нельзя.
Void RemoveArtefact(sHeroName, nArtID)
Функция удаляет у героя с именем sHeroName один артефакт nArtID. Если он у него есть. Если нет – вызов функции приводит к ошибке.
Void SetHeroLootable(sHeroName, bEnable)
|
|
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!