Форум HeroesWorld-а - Показать сообщение отдельно - NHF - новые герои для Heroes V 3.1
Показать сообщение отдельно
#2157
Старый 24.07.2015, 22:02
  #2157
^
Dyrman
 
Аватар для Dyrman
📖
Регистрация: 24.06.2008
Адрес: Там, где неба кончается край
Сообщения: 3479
Отправить сообщение для  Dyrman с помощью ICQ
Регистрация: 24.06.2008
Адрес: Там, где неба кончается край
Сообщения: 3479
Отправить сообщение для  Dyrman с помощью ICQ
По умолчанию
Re: NHF - новые герои для Heroes V 3.1

RedHeavenHeroDyrman, какие функции из 3.1 используются в NHF? Может, их можно заменить, чтобы подружить мод с 3.0 и EE (который, строго говоря, тоже 3.0).
Их всех не заменить.

+ добавлен дополнительный параметр функции SetObjectPosition(), работает только для героев, fx задаёт номер эффекта телепортации (-1 = по-умолчанию, 0 - выключен, 1 - warp, 2 - teleport, 3 - dimension door, 4 - town portal)
+ добавлен дополнительный параметр в функции AddHeroCreatures(), RemoveHeroCreatures(), AddObjectCreatures(), RemoveObjectCreatures(), задающий номер слота, для которого желательно совершить действие (если возможно)
+ добавлены новые триггера на героев: HERO_ADD_SKILL_TRIGGER, HERO_REMOVE_SKILL_TRIGGER, передаваемые параметры: heroName, skill, mastery
+ добавлены новый триггер для героев: HERO_TOUCH_TRIGGER (только для героев, выключенных функцией SetObjectEnabled())

Новые скриптовые функции:

+ floor(n) - возвращает ближайшее нижнее целое значение для n (пример: floor(1.75) вернёт 1, floor(-3.7) вернёт -3)
+ ceil(n) - возвращает ближайшее верхнее целое значение для n (пример: ceil(2.25) вернёт 3, ceil(-7.1) вернёт -8)
+ intg(n) - округляет n в сторону ближайшего целого (пример: intg(4.5) вернёт 5)
+ frac(n) - возвращает дробную часть числа (пример: frac(1.23) вернёт 0.23)
+ round(n) - возвращает целую часть числа (пример: round(1.23) вернёт 1)

+ GetPlayerRace( playerId ) - возвращает расу игрока по его номеру
+ IsAIPlayer( playerId ) - возвращает 1, если игрок - AI, 0 - если человек
+ GetPlayerTeam( playerId ) - возвращает номер команды (team) игрока
+ GetPlayerNecroEnergy( playerId ) - возвращает количество тёмной энергии у игрока (для некромантов)

+ GetObjectArmySlotCreature( objName, slotIndex ) - возвращает тип и количество кричей в слоте slotIndex объекта objName
+ GetTownRace( townName ) - возвращает расу города
+ GiveHeroBattleBonus( heroName, bonusType, amount ) - даёт герою heroName бонус на следующую битву вида bonusType, в количестве amount (виды бонусов см. в advmap-startup.lua)

+ WarpToMap( mapdbid, playerId = -1 ) - запускает другую карту, где игрок будет играть за игрока playerId (только для single player)
+ WarpHeroExp( heroName, exp ) - устанавливает количество опыта (experience) героя (а значит и его уровень), не влияет на умения и пр.

+ TalkBoxForPlayers( playersFilter, iconRef, iconTooltipRef, textRef, addTextRef, callback, mode, titleTextRef, selectTextRef, defaultOption, optionTextRef [, optionTextRef, ...] )
- открывает для выбранных игроков (playersFilter) диалог с несколькими вариантами ответа (от 1 до 5)
- функция не выдаёт сообщений об ошибке т.к. если параметры не верны, то используются значения по-умолчанию
- iconRef - ссылка на текстуру иконки
- iconTooltipRef - путь к тексту тултипа иконки
- textRef - путь к тексту диалога
- addTextRef - путь к тексту диалога (дополнительному)
- сallback - строка с именем lua-функции, через первый параметр которой сообщается ответ игрока (число: 0 - отмена, -1 - закрыт игрой, 1.. - номер выбранного игроком ответа)
- mode - режим: 0 - с кнопкой ОК, 1 - ОК/Закрыть
- titleTextRef - путь к тексту заголовка окна
- selectTextRef - путь к тексту заголовка перед опциями выбора
- defaultOption - номер ответа, подсвеченного по-умолчанию (число: 0 - нет, 1.. - номер ответа)
- optionTextRef - путь к тексту ответа № 1
- ... - путь к тексту ответа № ...
Dyrman вне форума
Ответить с цитированием