20

» WarCraft 3 / Патч 1.36 на ПТР!

ы". Зато обсерверам хорошо, да.
ГУИ даже W3CE не интересен... да и на деле да, что мой, что проект W3CE имеют выше шанс всё починить/доделать, чем близзурды.
20

» WarCraft 3 / WFE - Warcraft Feature Extender

Где можно посмотреть все команды для Аргумента запуска?
В ВФЕ только те аргументы, что поддерживаются игрой, а их список я не знаю где, вроде на хайве лежал. Но из самых важных, что помню:
-opengl
-window
-swtnl (рендер через процессор)
20

» WarCraft 3 / Пак анимированных рамок-спрайтов

Никто не знает как это адаптировать под мемхак?
Желательно уже забыть о нём, как о протухшем повидле.
А так, возможно нужно изменить в функции тип возврата убрать у SetCSpriteFrameScale возврат integer, ибо в игре оно возвращает void, других причин фатала не вижу.
20

» WarCraft 3 / WFE - Warcraft Feature Extender

Вышла новая версия! Прокрутить к ресурсу
WFE 3.1.11.68
Changelog:
  1. Fixed Mouse Lock not properly working with Top (in borderless mode) and Bottom (in both modes) parts of the window.
  2. Added PT (Portuguese) language, thanks nuzamacuxe.
20

» WarCraft 3 / WFE - Warcraft Feature Extender

На какой версии фатал, где краш лог? ФПС даже на предыдущей прекрасно повышался. Можно не будем выдумывать баги? :(
Скриншоты:
Загруженные файлы
20

» Unryze Jass API / UjAPI

Unryze, Спасибо! Теперь понятно)) так костыль группы - это единственная альтернатива фор групп, чтобы передать аргументы каждому юниту, вот и используется)
Потому я и дал методы, которые позволяют обходить костыли...
А примеры - это очень хорошо, чтобы люди имели понимание, как то или другое использовать. Особенно если название функции не совсем понятное на первый взгляд или непонятное.
Ну, всё следовало примеру групп + расширение их, но видать в виду обилия функций, можно запутаться.
20

» Unryze Jass API / UjAPI

Alan_Gu, ну да, похоже на то. Плюс упомянуто выше про Get by index. Только вот последняя нативка, которая HandleListForEach - она как аналог ForGroup - она неудобная в плане того, что туда нельзя загружать аргументы, без хеш таблиц, массивов и глобальных переменных. Поэтому что у неё Функция в виде аргумента.
HandleListForEach сделан для тех, кому не хочется заниматься переборами и перетасковками. Да и опять же, что мешает сделать код вот так:
local integer size = HandleListGetCount( list )
local integer i = 0
local agent a = null

loop
	exitwhen i == size
	set a = HandleListGetAgentByIndex( list, i )
	
	// действия пройдут по всему списку, и не нужно делать FirstOfList и удалять из группы, чтобы следующий хендл занял его позицию
	
	set i = i + 1
endloop
Зачем усложнять себе жизнь? Я думал это было и так понятно, но видать костыли групп очень вжились. :D
П.С. Я только заметил, что я не добавил именно получение хендла по индексу, добавлю и обновлю в ближайшее время. Хотя на деле agent == handle как я и писал выше, но будет удобнее таки с ними.

Эх, а ведь он ещё индексаторами типов не пользовался. Без спойлеров
Есть методы получения размера определённых типов, что позволит делать одинаковый код по логике и не париться про индексы разных типов в одном листе, надо будет я блин заполню UjAPI тему примерами, чтобы ты уже перестал без понимания "осуждать" то, что реально удобнее, чем ты себе представляешь.
20

» Unryze Jass API / UjAPI

Unryze, аналог группы - это круто! Только непонятно 3 момента:
Разве у объектов типа agent существуют координаты х и у, чтобы находить их в радиусе или в области? Они конечно есть где то в памяти, но не на карте же...
Будет ли аналог функции first of group, чтобы делать ручные переборы объектов в handle list?
Что тогда делать с предыдущими нативками по перебору предметов/эффектов/итд в радиусе, имеют ли они теперь смысл?
На деле хендл - это обёртка agent. HandleListGetAgentByIndex и аналоги для чего? Я не хочу делать FirstOfGroup, ибо он банально бесполезен, всегда пихать индекс 0 и далее удалять этот хендл из Листа.
Переборы те не требуют "группы" (листа), там можно просто обработать данные не записывая их в Лист, что юзать - дело пользователя.
20

» Unryze Jass API / UjAPI

Вопрос по HandleList, как я понял с помощью него можно сделать в карте свой условный Garbage Collector?
И да и нет, он создан как альтернатива группе, которая может хранить лишь юнитов. Но в целом, можно собирать туда вообще всё и потом проверять, вообще хендл что в себе хранит и т.д.
20

» WarCraft 3 / WFE - Warcraft Feature Extender

Вышла новая версия! Прокрутить к ресурсу
WFE 3.1.11.67
Changelog:
  1. Fixed Heroes binds not selecting paused heroes.
  2. Fixed incorrect Registry id for maxfps (it does not really affect anything, but still, thanks to DiX998 for finding this issue).
  3. Fixed WFE binds with/without autocast clicking "through" minimap and moving camera to that spot. (Note: this does not fix the basic normal clicks, since again, those are caused by Blizzard's problematic click handling).
  4. Fixed lockfb registry Id on 1.28f, its ID apparently was changed on 1.28a and above.
    Note: this id change was hitting Lighting option instead.
  5. Fixed Buff Duration text size not changing if "Draw Indicator" was disabled.
  6. WFEApp's size was adjusted to 600pixels.
  7. WFEApp's height can now be resized.
  8. Some buttons in main menu were slightly shrinked to fit the new size.
20

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия! Прокрутить к ресурсу

v1.0.20.84

  1. UjAPI.exe более не "заставляет" последующие запуски UjAPI запускаться от админ прав, теперь последующие запуски будут просто посылать свои команды в главное приложение. Это должно упростить создание "макетов запуска".
  2. Missile API переделан в Projectile API.
  3. Удалённые нативные функции:
    native GetAbilityCooldownEx takes ability whichAbility returns real
    native TriggerRegisterPlayerProjectileEvent takes trigger whichTrigger, player whichPlayer, playermissileevent whichEvent returns event
    Пометка: события теперь регистрируются через определённых игроков/юнитов используя TriggerRegisterPlayerUnitEvent and TriggerRegisterUnitEvent.
  4. Новые типы:
    type doodad extends agent
  5. Новые конвертеры:
    constant native ConvertProjectileType takes integer i returns projectiletype
  6. Новыее константы:
    constant playerunitevent EVENT_PLAYER_UNIT_BUFF_RECEIVED = ConvertPlayerUnitEvent(500)
    constant playerunitevent EVENT_PLAYER_UNIT_BUFF_REFRESHED = ConvertPlayerUnitEvent(501)
    constant playerunitevent EVENT_PLAYER_UNIT_BUFF_ENDED = ConvertPlayerUnitEvent(502)
    constant playerunitevent EVENT_PLAYER_UNIT_PROJECTILE_LAUNCH = ConvertPlayerUnitEvent(600)
    constant playerunitevent EVENT_PLAYER_UNIT_PROJECTILE_HIT = ConvertPlayerUnitEvent(601)
    constant unitevent EVENT_UNIT_BUFF_RECEIVED = ConvertUnitEvent(510)
    constant unitevent EVENT_UNIT_BUFF_REFRESHED = ConvertUnitEvent(511)
    constant unitevent EVENT_UNIT_BUFF_ENDED = ConvertUnitEvent(512)
    constant unitevent EVENT_UNIT_PROJECTILE_LAUNCH = ConvertUnitEvent(610)
    constant unitevent EVENT_UNIT_PROJECTILE_HIT = ConvertUnitEvent(611)
    constant projectiletype PROJECTILE_TYPE_BULLET = ConvertProjectileType(0)
    constant projectiletype PROJECTILE_TYPE_MISSILE = ConvertProjectileType(1)
    constant projectiletype PROJECTILE_TYPE_ARTILLERY = ConvertProjectileType(2)
    constant projectiletype PROJECTILE_TYPE_VISIBLE = ConvertProjectileType(4)
    constant projectiletype PROJECTILE_TYPE_DEAD = ConvertProjectileType(5)
  7. Новые нативные функции:
    native IsProjectileType takes projectile whichProjectile, projectiletype whichType returns boolean
    native GetProjectileTargetPointX takes projectile whichProjectile returns real
    native GetProjectileTargetPointY takes projectile whichProjectile returns real
    native GetProjectileTargetPointZ takes projectile whichProjectile returns real
    native GetProjectileTargetPoint takes projectile whichProjectile returns location
    native GetProjectileAreaOfEffectFullDamage takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectFullDamage takes projectile whichProjectile, real area returns nothing
    native GetProjectileAreaOfEffectMediumDamage takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectMediumDamage takes projectile whichProjectile, real area returns nothing
    native GetProjectileAreaOfEffectSmallDamage takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectSmallDamage takes projectile whichProjectile, real area returns nothing
    native GetProjectileAreaOfEffectMediumDamageFactor takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectMediumDamageFactor takes projectile whichProjectile, real factor returns nothing
    native GetProjectileAreaOfEffectSmallDamageFactor takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectSmallDamageFactor takes projectile whichProjectile, real factor returns nothing
    native EnumProjectilesInRect takes rect whichRect, boolexpr filter, code handlerFunc returns nothing
    native GetUnitRallyPointX takes unit whichUnit returns real
    native GetUnitRallyPointY takes unit whichUnit returns real
    native SetUnitKiller takes unit whichUnit, unit killer returns nothing
    native KillUnitEx takes unit whichUnit, unit killer returns nothing
    native GetAbilityOwner takes ability whichAbility returns unit
    native GetFilterAbility takes nothing returns ability
    native GetEnumAbility takes nothing returns ability
    native EnumUnitAbilities takes unit whichUnit, boolexpr whichBoolexpr, code whichCode returns boolean
    native GetBuffTypeId takes buff whichBuff returns integer
    native GetBuffBaseTypeId takes buff whichBuff returns integer
    native GetBuffOwner takes buff whichbuff returns unit
    native SetBuffLevel takes buff whichBuff, integer level returns nothing
    native GetFilterBuff takes nothing returns buff
    native GetEnumBuff takes nothing returns buff
    native EnumUnitBuffs takes unit whichUnit, boolexpr whichBoolexpr, code whichCode returns boolean
    native GetTriggerBuff takes nothing returns buff
    native GetTriggerBuffSourceAbility takes nothing returns ability
    native GetTriggerBuffSourceUnit takes nothing returns unit
    native GetTriggerBuffTarget takes nothing returns unit
    Doodad API
    native GetDoodadCount takes nothing returns integer
    native GetDoodadByIndex takes integer index returns doodad
    native GetDoodadIndex takes doodad whichDoodad returns integer
    native SetDoodadAnimationWithRarityByIndex takes doodad whichDoodad, integer animIndex, raritycontrol rarity returns nothing
    native SetDoodadAnimationWithRarity takes doodad whichDoodad, string animationName, raritycontrol rarity returns nothing
    native SetDoodadAnimationByIndex takes doodad whichDoodad, integer animIndex returns nothing
    native SetDoodadAnimationEx takes doodad whichDoodad, string animationName returns nothing
    native QueueDoodadAnimationByIndex takes doodad whichDoodad, integer animIndex returns nothing
    native QueueDoodadAnimation takes doodad whichDoodad, string animationName returns nothing
    native SetDoodadAnimationOffsetPercent takes doodad whichDoodad, real percent returns nothing
    native GetFilterDoodad takes nothing returns doodad
    native GetEnumDoodad takes nothing returns doodad
    native EnumDoodadsInRange takes real x, real y, real radius, boolexpr filter, code handlerFunc returns nothing
    native EnumDoodadsInRangeEx takes real x, real y, real radius, integer typeId, boolean nearestOnly, boolexpr filter, code handlerFunc returns nothing
    native EnumDoodadsInRect takes rect whichRect, boolexpr filter, code handlerFunc returns nothing
    native EnumDoodadsInRectEx takes rect whichRect, integer typeId, boolean nearestOnly, boolexpr filter, code handlerFunc returns nothing
    Handle List API
    native HandleListCreate takes nothing returns handlelist
    native HandleListDestroy takes handlelist whichHandleList returns nothing
    native HandleListAddHandle takes handlelist whichHandleList, handle whichHandle returns nothing
    native HandleListRemoveHandle takes handlelist whichHandleList, handle whichHandle returns nothing
    native HandleListAddList takes handlelist destHandleList, handlelist sourceHandleList returns integer
    native HandleListRemoveList takes handlelist destHandleList, handlelist sourceHandleList returns integer
    native HandleListClear takes handlelist whichHandleList returns nothing
    native HandleListContainsHandle takes handlelist whichHandleList, handle whichHandle returns boolean
    native HandleListGetCount takes handlelist whichHandleList returns integer
    native HandleListGetCountEx takes handlelist whichHandleList, integer handleTypeId returns integer
    native HandleListGetAgentCount takes handlelist whichHandleList returns integer
    native HandleListGetWidgetCount takes handlelist whichHandleList returns integer
    native HandleListGetUnitCount takes handlelist whichHandleList returns integer
    native HandleListGetItemCount takes handlelist whichHandleList returns integer
    native HandleListGetDestructableCount takes handlelist whichHandleList returns integer
    native HandleListGetAbilityCount takes handlelist whichHandleList returns integer
    native HandleListGetBuffCount takes handlelist whichHandleList returns integer
    native HandleListGetEffectCount takes handlelist whichHandleList returns integer
    native HandleListGetMissileCount takes handlelist whichHandleList returns integer
    native HandleListGetFrameCount takes handlelist whichHandleList returns integer
    native HandleListGetHandleByIndex takes handlelist whichHandleList, integer index returns handle
    native HandleListGetHandleByIndexEx takes handlelist whichHandleList, integer handleTypeId, integer index returns handle
    native HandleListGetAgentByIndex takes handlelist whichHandleList, integer index returns agent
    native HandleListGetWidgetByIndex takes handlelist whichHandleList, integer index returns widget
    native HandleListGetUnitByIndex takes handlelist whichHandleList, integer index returns unit
    native HandleListGetItemByIndex takes handlelist whichHandleList, integer index returns item
    native HandleListGetDestructableByIndex takes handlelist whichHandleList, integer index returns destructable
    native HandleListGetAbilityByIndex takes handlelist whichHandleList, integer index returns ability
    native HandleListGetBuffByIndex takes handlelist whichHandleList, integer index returns buff
    native HandleListGetEffectByIndex takes handlelist whichHandleList, integer index returns effect
    native HandleListGetMissileByIndex takes handlelist whichHandleList, integer index returns missile
    native HandleListGetFrameByIndex takes handlelist whichHandleList, integer index returns framehandle
    native HandleListGetFilterHandle takes nothing returns handle
    native HandleListGetFilterAgent takes nothing returns agent
    native HandleListGetFilterWidget takes nothing returns widget
    native HandleListGetFilterUnit takes nothing returns unit
    native HandleListGetFilterItem takes nothing returns item
    native HandleListGetFilterDestructable takes nothing returns destructable
    native HandleListGetFilterAbility takes nothing returns ability
    native HandleListGetFilterBuff takes nothing returns buff
    native HandleListGetFilterEffect takes nothing returns effect
    native HandleListGetFilterMissile takes nothing returns missile
    native HandleListGetFilterFrame takes nothing returns framehandle
    native HandleListGetEnumHandle takes nothing returns handle
    native HandleListGetEnumAgent takes nothing returns agent
    native HandleListGetEnumWidget takes nothing returns widget
    native HandleListGetEnumUnit takes nothing returns unit
    native HandleListGetEnumItem takes nothing returns item
    native HandleListGetEnumDestructable takes nothing returns destructable
    native HandleListGetEnumAbility takes nothing returns ability
    native HandleListGetEnumBuff takes nothing returns buff
    native HandleListGetEnumEffect takes nothing returns effect
    native HandleListGetEnumMissile takes nothing returns missile
    native HandleListGetEnumFrame takes nothing returns framehandle
    native HandleListEnumInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumInRangeEx takes handlelist whichHandleList, real x, real y, real radius, integer handleTypeId, boolexpr filter returns nothing
    native HandleListEnumAgentsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumWidgetsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumUnitsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumItemsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumDestructablesInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumEffectsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumMissilesInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumInRangeOfLocEx takes handlelist whichHandleList, location whichLocation, real radius, integer handleTypeId, boolexpr filter returns nothing
    native HandleListEnumAgentsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumWidgetsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumUnitsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumItemsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumDestructablesInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumEffectsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumMissilesInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumInRectEx takes handlelist whichHandleList, rect whichRect, integer handleTypeId, boolexpr filter returns nothing
    native HandleListEnumAgentsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumWidgetsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumUnitsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumItemsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumDestructablesInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumEffectsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumMissilesInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumByTypeId takes handlelist whichHandleList, integer typeId, boolexpr filter returns nothing
    native HandleListEnumByTypeIdEx takes handlelist whichHandleList, integer handleTypeId, integer typeId, boolexpr filter returns nothing
    native HandleListForEach takes handlelist whichHandleList, code c returns nothing
    native HandleListForEachByType takes handlelist whichHandleList, integer typeId, code c returns nothing
    native HandleListForEachByTypeEx takes handlelist whichHandleList, integer handleTypeId, integer typeId, code c returns nothing
  8. Исправлена опечатка (дополнительное слово "unit" в Get/SetUnitBaseMoveSpeed.
  9. Исправлена критическая ошибка от GetFrameText, если текст фрейма не был инициализирован.
  10. Исправлена критическая ошибка в SetUnitBonusMoveSpeedPercent.
  11. Исправлена критическая ошибка при запуске патча 1.27b.
  12. Исправлена критическая ошибка при смене "страниц" в главном меню на 1.28f.
  13. Добавлена экспериментальная поддержка карт, которые НЕ содержат W3MH (HM3W) заголовок, то бишь карты Рефоржа, у которых ТОЛЬКО MPQ заголовок, они должны теперь хотя бы отображаться в списке карт и их w3i файл должен считываться.
  14. Исправлены нативные функции SetAbilityField ломающие заклинания, максимальный уровень которых выше 4.
  15. Исправлена критическая ошибка при выходе с карты/игры после изменения заклинания типа "канал" ANcl через SetAbilityField и т.д.
  16. Исправлена некорректное изменение цвета виджетов в SetWidgetVertexColour.
  17. Добавлена "поддержка" новой нативной функции DzAPI_Map_GetPlayerUserName.
  18. Добавлена поддержка MMEngine, теперь вы можете запускать её через UjAPI.
20

» Unryze Jass API / UjAPI

Вышла новая версия! Прокрутить к ресурсу

v1.0.20.84

  1. UjAPI.exe более не "заставляет" последующие запуски UjAPI запускаться от админ прав, теперь последующие запуски будут просто посылать свои команды в главное приложение. Это должно упростить создание "макетов запуска".
  2. Missile API переделан в Projectile API.
  3. Удалённые нативные функции:
    native GetAbilityCooldownEx takes ability whichAbility returns real
    native TriggerRegisterPlayerProjectileEvent takes trigger whichTrigger, player whichPlayer, playermissileevent whichEvent returns event
    Пометка: события теперь регистрируются через определённых игроков/юнитов используя TriggerRegisterPlayerUnitEvent and TriggerRegisterUnitEvent.
  4. Новые типы:
    type doodad extends agent
  5. Новые конвертеры:
    constant native ConvertProjectileType takes integer i returns projectiletype
  6. Новыее константы:
    constant playerunitevent EVENT_PLAYER_UNIT_BUFF_RECEIVED = ConvertPlayerUnitEvent(500)
    constant playerunitevent EVENT_PLAYER_UNIT_BUFF_REFRESHED = ConvertPlayerUnitEvent(501)
    constant playerunitevent EVENT_PLAYER_UNIT_BUFF_ENDED = ConvertPlayerUnitEvent(502)
    constant playerunitevent EVENT_PLAYER_UNIT_PROJECTILE_LAUNCH = ConvertPlayerUnitEvent(600)
    constant playerunitevent EVENT_PLAYER_UNIT_PROJECTILE_HIT = ConvertPlayerUnitEvent(601)
    constant unitevent EVENT_UNIT_BUFF_RECEIVED = ConvertUnitEvent(510)
    constant unitevent EVENT_UNIT_BUFF_REFRESHED = ConvertUnitEvent(511)
    constant unitevent EVENT_UNIT_BUFF_ENDED = ConvertUnitEvent(512)
    constant unitevent EVENT_UNIT_PROJECTILE_LAUNCH = ConvertUnitEvent(610)
    constant unitevent EVENT_UNIT_PROJECTILE_HIT = ConvertUnitEvent(611)
    constant projectiletype PROJECTILE_TYPE_BULLET = ConvertProjectileType(0)
    constant projectiletype PROJECTILE_TYPE_MISSILE = ConvertProjectileType(1)
    constant projectiletype PROJECTILE_TYPE_ARTILLERY = ConvertProjectileType(2)
    constant projectiletype PROJECTILE_TYPE_VISIBLE = ConvertProjectileType(4)
    constant projectiletype PROJECTILE_TYPE_DEAD = ConvertProjectileType(5)
  7. Новые нативные функции:
    native IsProjectileType takes projectile whichProjectile, projectiletype whichType returns boolean
    native GetProjectileTargetPointX takes projectile whichProjectile returns real
    native GetProjectileTargetPointY takes projectile whichProjectile returns real
    native GetProjectileTargetPointZ takes projectile whichProjectile returns real
    native GetProjectileTargetPoint takes projectile whichProjectile returns location
    native GetProjectileAreaOfEffectFullDamage takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectFullDamage takes projectile whichProjectile, real area returns nothing
    native GetProjectileAreaOfEffectMediumDamage takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectMediumDamage takes projectile whichProjectile, real area returns nothing
    native GetProjectileAreaOfEffectSmallDamage takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectSmallDamage takes projectile whichProjectile, real area returns nothing
    native GetProjectileAreaOfEffectMediumDamageFactor takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectMediumDamageFactor takes projectile whichProjectile, real factor returns nothing
    native GetProjectileAreaOfEffectSmallDamageFactor takes projectile whichProjectile returns real
    native SetProjectileAreaOfEffectSmallDamageFactor takes projectile whichProjectile, real factor returns nothing
    native EnumProjectilesInRect takes rect whichRect, boolexpr filter, code handlerFunc returns nothing
    native GetUnitRallyPointX takes unit whichUnit returns real
    native GetUnitRallyPointY takes unit whichUnit returns real
    native SetUnitKiller takes unit whichUnit, unit killer returns nothing
    native KillUnitEx takes unit whichUnit, unit killer returns nothing
    native GetAbilityOwner takes ability whichAbility returns unit
    native GetFilterAbility takes nothing returns ability
    native GetEnumAbility takes nothing returns ability
    native EnumUnitAbilities takes unit whichUnit, boolexpr whichBoolexpr, code whichCode returns boolean
    native GetBuffTypeId takes buff whichBuff returns integer
    native GetBuffBaseTypeId takes buff whichBuff returns integer
    native GetBuffOwner takes buff whichbuff returns unit
    native SetBuffLevel takes buff whichBuff, integer level returns nothing
    native GetFilterBuff takes nothing returns buff
    native GetEnumBuff takes nothing returns buff
    native EnumUnitBuffs takes unit whichUnit, boolexpr whichBoolexpr, code whichCode returns boolean
    native GetTriggerBuff takes nothing returns buff
    native GetTriggerBuffSourceAbility takes nothing returns ability
    native GetTriggerBuffSourceUnit takes nothing returns unit
    native GetTriggerBuffTarget takes nothing returns unit
    Doodad API
    native GetDoodadCount takes nothing returns integer
    native GetDoodadByIndex takes integer index returns doodad
    native GetDoodadIndex takes doodad whichDoodad returns integer
    native SetDoodadAnimationWithRarityByIndex takes doodad whichDoodad, integer animIndex, raritycontrol rarity returns nothing
    native SetDoodadAnimationWithRarity takes doodad whichDoodad, string animationName, raritycontrol rarity returns nothing
    native SetDoodadAnimationByIndex takes doodad whichDoodad, integer animIndex returns nothing
    native SetDoodadAnimationEx takes doodad whichDoodad, string animationName returns nothing
    native QueueDoodadAnimationByIndex takes doodad whichDoodad, integer animIndex returns nothing
    native QueueDoodadAnimation takes doodad whichDoodad, string animationName returns nothing
    native SetDoodadAnimationOffsetPercent takes doodad whichDoodad, real percent returns nothing
    native GetFilterDoodad takes nothing returns doodad
    native GetEnumDoodad takes nothing returns doodad
    native EnumDoodadsInRange takes real x, real y, real radius, boolexpr filter, code handlerFunc returns nothing
    native EnumDoodadsInRangeEx takes real x, real y, real radius, integer typeId, boolean nearestOnly, boolexpr filter, code handlerFunc returns nothing
    native EnumDoodadsInRect takes rect whichRect, boolexpr filter, code handlerFunc returns nothing
    native EnumDoodadsInRectEx takes rect whichRect, integer typeId, boolean nearestOnly, boolexpr filter, code handlerFunc returns nothing
    Handle List API
    native HandleListCreate takes nothing returns handlelist
    native HandleListDestroy takes handlelist whichHandleList returns nothing
    native HandleListAddHandle takes handlelist whichHandleList, handle whichHandle returns nothing
    native HandleListRemoveHandle takes handlelist whichHandleList, handle whichHandle returns nothing
    native HandleListAddList takes handlelist destHandleList, handlelist sourceHandleList returns integer
    native HandleListRemoveList takes handlelist destHandleList, handlelist sourceHandleList returns integer
    native HandleListClear takes handlelist whichHandleList returns nothing
    native HandleListContainsHandle takes handlelist whichHandleList, handle whichHandle returns boolean
    native HandleListGetCount takes handlelist whichHandleList returns integer
    native HandleListGetCountEx takes handlelist whichHandleList, integer handleTypeId returns integer
    native HandleListGetAgentCount takes handlelist whichHandleList returns integer
    native HandleListGetWidgetCount takes handlelist whichHandleList returns integer
    native HandleListGetUnitCount takes handlelist whichHandleList returns integer
    native HandleListGetItemCount takes handlelist whichHandleList returns integer
    native HandleListGetDestructableCount takes handlelist whichHandleList returns integer
    native HandleListGetAbilityCount takes handlelist whichHandleList returns integer
    native HandleListGetBuffCount takes handlelist whichHandleList returns integer
    native HandleListGetEffectCount takes handlelist whichHandleList returns integer
    native HandleListGetMissileCount takes handlelist whichHandleList returns integer
    native HandleListGetFrameCount takes handlelist whichHandleList returns integer
    native HandleListGetHandleByIndex takes handlelist whichHandleList, integer index returns handle
    native HandleListGetHandleByIndexEx takes handlelist whichHandleList, integer handleTypeId, integer index returns handle
    native HandleListGetAgentByIndex takes handlelist whichHandleList, integer index returns agent
    native HandleListGetWidgetByIndex takes handlelist whichHandleList, integer index returns widget
    native HandleListGetUnitByIndex takes handlelist whichHandleList, integer index returns unit
    native HandleListGetItemByIndex takes handlelist whichHandleList, integer index returns item
    native HandleListGetDestructableByIndex takes handlelist whichHandleList, integer index returns destructable
    native HandleListGetAbilityByIndex takes handlelist whichHandleList, integer index returns ability
    native HandleListGetBuffByIndex takes handlelist whichHandleList, integer index returns buff
    native HandleListGetEffectByIndex takes handlelist whichHandleList, integer index returns effect
    native HandleListGetMissileByIndex takes handlelist whichHandleList, integer index returns missile
    native HandleListGetFrameByIndex takes handlelist whichHandleList, integer index returns framehandle
    native HandleListGetFilterHandle takes nothing returns handle
    native HandleListGetFilterAgent takes nothing returns agent
    native HandleListGetFilterWidget takes nothing returns widget
    native HandleListGetFilterUnit takes nothing returns unit
    native HandleListGetFilterItem takes nothing returns item
    native HandleListGetFilterDestructable takes nothing returns destructable
    native HandleListGetFilterAbility takes nothing returns ability
    native HandleListGetFilterBuff takes nothing returns buff
    native HandleListGetFilterEffect takes nothing returns effect
    native HandleListGetFilterMissile takes nothing returns missile
    native HandleListGetFilterFrame takes nothing returns framehandle
    native HandleListGetEnumHandle takes nothing returns handle
    native HandleListGetEnumAgent takes nothing returns agent
    native HandleListGetEnumWidget takes nothing returns widget
    native HandleListGetEnumUnit takes nothing returns unit
    native HandleListGetEnumItem takes nothing returns item
    native HandleListGetEnumDestructable takes nothing returns destructable
    native HandleListGetEnumAbility takes nothing returns ability
    native HandleListGetEnumBuff takes nothing returns buff
    native HandleListGetEnumEffect takes nothing returns effect
    native HandleListGetEnumMissile takes nothing returns missile
    native HandleListGetEnumFrame takes nothing returns framehandle
    native HandleListEnumInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumInRangeEx takes handlelist whichHandleList, real x, real y, real radius, integer handleTypeId, boolexpr filter returns nothing
    native HandleListEnumAgentsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumWidgetsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumUnitsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumItemsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumDestructablesInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumEffectsInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumMissilesInRange takes handlelist whichHandleList, real x, real y, real radius, boolexpr filter returns nothing
    native HandleListEnumInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumInRangeOfLocEx takes handlelist whichHandleList, location whichLocation, real radius, integer handleTypeId, boolexpr filter returns nothing
    native HandleListEnumAgentsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumWidgetsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumUnitsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumItemsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumDestructablesInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumEffectsInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumMissilesInRangeOfLoc takes handlelist whichHandleList, location whichLocation, real radius, boolexpr filter returns nothing
    native HandleListEnumInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumInRectEx takes handlelist whichHandleList, rect whichRect, integer handleTypeId, boolexpr filter returns nothing
    native HandleListEnumAgentsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumWidgetsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumUnitsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumItemsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumDestructablesInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumEffectsInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumMissilesInRect takes handlelist whichHandleList, rect whichRect, boolexpr filter returns nothing
    native HandleListEnumByTypeId takes handlelist whichHandleList, integer typeId, boolexpr filter returns nothing
    native HandleListEnumByTypeIdEx takes handlelist whichHandleList, integer handleTypeId, integer typeId, boolexpr filter returns nothing
    native HandleListForEach takes handlelist whichHandleList, code c returns nothing
    native HandleListForEachByType takes handlelist whichHandleList, integer typeId, code c returns nothing
    native HandleListForEachByTypeEx takes handlelist whichHandleList, integer handleTypeId, integer typeId, code c returns nothing
  8. Исправлена опечатка (дополнительное слово "unit" в Get/SetUnitBaseMoveSpeed.
  9. Исправлена критическая ошибка от GetFrameText, если текст фрейма не был инициализирован.
  10. Исправлена критическая ошибка в SetUnitBonusMoveSpeedPercent.
  11. Исправлена критическая ошибка при запуске патча 1.27b.
  12. Исправлена критическая ошибка при смене "страниц" в главном меню на 1.28f.
  13. Добавлена экспериментальная поддержка карт, которые НЕ содержат W3MH (HM3W) заголовок, то бишь карты Рефоржа, у которых ТОЛЬКО MPQ заголовок, они должны теперь хотя бы отображаться в списке карт и их w3i файл должен считываться.
  14. Исправлены нативные функции SetAbilityField ломающие заклинания, максимальный уровень которых выше 4.
  15. Исправлена критическая ошибка при выходе с карты/игры после изменения заклинания типа "канал" ANcl через SetAbilityField и т.д.
  16. Исправлена некорректное изменение цвета виджетов в SetWidgetVertexColour.
  17. Добавлена "поддержка" новой нативной функции DzAPI_Map_GetPlayerUserName.
  18. Добавлена поддержка MMEngine, теперь вы можете запускать её через UjAPI.
20

» Unryze Jass API / UjAPI

JNProcessStart и JNGetModuleHandle (это очень-очень опасные штуки)
format c: и cmd.exe это тоже очень очень опасные штуки, что не мешает успешно пользоваться bat-скриптами по всему миру
ну нет так нет, шо
Логика поражает, одно - локально у юзера, другое - картодел может тебе System32 отправить в Вальгаллу, разницы не видно?
П.С. Список очень "безопасных" нативок:
JNProcessStart / JNGetModule / JNFindModuleHandle / JNMemoryGetByte / JNMemorySetByte / JNMemoryGetInteger / JNMemorySetInteger / JNMemoryGetReal / JNMemorySetReal / JNMemoryGetString / JNMemorySetString / JNProcCall / JNOpenBrowser.
20

» Unryze Jass API / UjAPI

JN использует слишком много небезопасных нативок, множество из них необходимы для карт, потому полной поддержки не будет, это слишком муторно и не принесёт буквально никакой пользы. Из JN полноценно поддерживаются лишь эти нативки:
BitOr
BitAnd
BitXor
BitShiftL
BitShiftR
JNI2R
JNR2I
JNGetMaxAttackSpeed
IsReplayMode
IsHostPlayer
JNStringPos
JNStringReverse
JNStringTrim
JNStringTrimStart
JNStringTrimEnd
JNStringCount
JNStringContains
JNStringReplace
JNStringInsert
JNStringSub
JNStringLength
Говоря проще, JN поддержку я наверное даже уберу, ибо от неё больше проблем, чем пользы ибо 99% карт использует банально небезопасные функции, некоторые даже используют JNProcessStart и JNGetModuleHandle (это очень-очень опасные штуки, которые если же в МемХаке ещё как-то ограничены, то на С++ стороне можно сделать много неприятных приколов).
Потому правильнее будет переписать карту, ибо всё что с Dz и даже больше UjAPI умеет и возможностей куда больше чем на обеих платформах вместе взятых, да и в новой версии будет ещё больше функционала.
20

» WarCraft 3 / WFE - Warcraft Feature Extender

Проблему решили в Дискорде (виной оказался стандартный профиль, который нельзя менять).
20

» Unryze Jass API / UjAPI

-1 не может быть ни в каком случае, акстись.
20

» Unryze Jass API / UjAPI

BlzFrameGetChild(ORIGIN_FRAME_COMMAND_BAR, 0) и GetFrameChild(ORIGIN_FRAME_COMMAND_BAR, 0) ссылается на фрейм(расположение кнопки) х3 у2, а не х3 у3. х3 у3 не видно никаким индексом в диапазоне от -1 до 11.
И да, забыл добавить, Y2 ограничение имеет, откуда Y3? Напоминаю, что столбов (X) 4 (0-3) а строк (Y) 3 (0-2). И получается 4 * 3 = 12 (11 индекс). А ты хочешь получить 4 * 4 = 16ый индекс, вопрос откуда и куда.
Borodach:
Название примерное, смысл что любые "доп. услуги" из UJAPI не откроют карту.
Краш лог в студию, я не могу угадать что и как может крашить, когда у других пользователей такой проблемы нет. Ну и версию варкрафта - тоже гадать не особо хочется.
20

» Unryze Jass API / UjAPI

BlzFrameGetChild(ORIGIN_FRAME_COMMAND_BAR, 0) и GetFrameChild(ORIGIN_FRAME_COMMAND_BAR, 0) ссылается на фрейм(расположение кнопки) х3 у2, а не х3 у3. х3 у3 не видно никаким индексом в диапазоне от -1 до 11.
Диапазон начинается от 0 (откуда вообще -1?) и внутренний код, который используется для получения кнопок используется во ВФЕ, там как-то проблем с этим не наблюдалось, собственно...)
OSKEY_LEFT и RIGHT, UP, DOWN не работают, но так понимаю в 1.19.78 работает.Обновление в дискорде и гитхабе нет, а с сайта блочит вирус( отключал антивирус и брандмауэр). Windows 7
Что значит не работают? Все кнопки работают и их код не был тронут. Эта версия и есть в данный момент последняя, и на гитхабе она тоже лежит.
20

» WarCraft 3 / АнтиХак

А где скачать?
Работает с мемхак лайт?
Должно, ибо МемХак Лайт делался с последнего загруженного, а АнтиХак использует все переменные/функции оттуда, а свои новые не "сталкиваются" с оригиналом.
20

» Unryze Jass API / UjAPI

EugeAl, можешь свои потоки создавать. Что это даёт? Ну, допустим ты сможешь разбить код карты на несколько скриптов, а потом подключать их по-отдельности. Надеюсь, я правильно всё понял.
Всё верно.
EugeAl:
Ev3nt, а, понял. Только не понятно, зачем. Другое дело, если бы создавать внешний файл с кодом, типа bj, это да, имеет смысл. Особенно для кампаний.
Позволяет сделать пресеты (отдельно живущий код и т.д.) и не захламлять общий код, подгрузил нужный скрипт, выполнил - отключил когда нужно.
По большей части я это добавил для избавления от косого прелоада ну и просто потому, что могу (а если точнее, чего добру пропадать?)
EugeAl, это что то для тех, кто работал с прелоадом
Угу.
20

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия! Прокрутить к ресурсу

v1.0.19.78

  1. Новые Типы:
    type jassthread extends handle
  2. Новые Константы:
    constant widgetevent EVENT_WIDGET_DAMAGING = ConvertWidgetEvent(400)
    constant widgetevent EVENT_WIDGET_DAMAGED = ConvertWidgetEvent(401)
    constant abilityreallevelfield ABILITY_RLF_CAST_BACK_SWING = ConvertAbilityRealLevelField('acbs')
    constant abilityreallevelfield ABILITY_RLF_CAST_POINT = ConvertAbilityRealLevelField('acpt')
    constant unitintegerfield UNIT_IF_AGILITY_BONUS = ConvertUnitIntegerField('uag+') Get Only
    constant unitintegerfield UNIT_IF_INTELLIGENCE_BONUS = ConvertUnitIntegerField('uin+') Get Only
    constant unitintegerfield UNIT_IF_STRENGTH_BONUS = ConvertUnitIntegerField('ust+') Get Only
    constant unitrealfield UNIT_RF_HEALTH_FROM_BONUS_STRENGTH = ConvertUnitRealField('uhs+') Get Only
    constant unitrealfield UNIT_RF_MANA_FROM_BONUS_INTELLIGENCE = ConvertUnitRealField('umi+') Get Only
    constant unitrealfield UNIT_RF_DEFENSE_BONUS = ConvertUnitRealField('udf+') Get Only
    constant unitrealfield UNIT_RF_SPEED_BONUS = ConvertUnitRealField('umv+') Get Only
    constant unitweaponintegerfield UNIT_WEAPON_IF_ATTACK_DAMAGE_BONUS = ConvertUnitWeaponIntegerField('ud1+') Get Only | this is the + (Green) or - (Red) value next to attack.
    constant unitweaponrealfield UNIT_WEAPON_RF_ATTACK_SPEED_BONUS = ConvertUnitWeaponRealField('us1+') Get Only
  3. Новые Нативные Функции:
    Jass VM Natives
    native GetJassMainThread takes nothing returns jassthread
    native GetJassCurrentThread takes nothing returns jassthread
    native RunJassScriptEx takes string parentScriptFile, string helperScriptFile, string jassScriptFile returns jassthread
    native RunJassScript takes string helperScriptFile, string jassScriptFile returns jassthread
    native RunJassScriptSimple takes string jassScriptFile returns jassthread
    native StopJassThread takes jassthread thread returns boolean
    native GetJassGlobalInteger takes jassthread thread, string variableName returns integer
    native GetJassGlobalReal takes jassthread thread, string variableName returns real
    native GetJassGlobalString takes jassthread thread, string variableName returns string
    native GetJassGlobalHandle takes jassthread thread, string variableName returns handle
    native GetJassGlobalBoolean takes jassthread thread, string variableName returns boolean
    native SetJassGlobalInteger takes jassthread thread, string variableName, integer value returns boolean
    native SetJassGlobalReal takes jassthread thread, string variableName, real value returns boolean
    native SetJassGlobalString takes jassthread thread, string variableName, string value returns boolean
    native SetJassGlobalHandle takes jassthread thread, string variableName, handle value returns boolean
    native SetJassGlobalBoolean takes jassthread thread, string variableName, boolean value returns boolean

    native GetWidgetModel takes widget whichWidget returns string
    native TriggerRegisterWidgetEvent takes trigger whichTrigger, widget whichWidget, widgetevent whichWidgetEvent returns event
    native SetSpecialEffectPlayerColour takes effect whichEffect, playercolor color returns nothing
    native SetSpecialEffectMaterialTexture takes effect whichEffect, string textureName, integer materialId, integer textureIndex returns nothing
    native SetSpecialEffectTexture takes effect whichEffect, string textureName, integer textureIndex returns nothing
    native SetSpecialEffectReplaceableTexture takes effect whichEffect, string textureName, integer textureIndex returns nothing
    native SetTrackablePlayerColour takes trackable whichTrackable, playercolor color returns nothing
    native SetMissilePlayerColour takes missile whichMissile, playercolor color returns nothing
    native SetMissileMaterialTexture takes missile whichMissile, string textureName, integer materialId, integer textureIndex returns nothing
    native SetMissileTexture takes missile whichMissile, string textureName, integer textureIndex returns nothing
    native SetMissileReplaceableTexture takes missile whichMissile, string textureName, integer textureIndex returns nothing
    native SetFrameSpritePlayerColour takes framehandle whichFrame, playercolor color returns nothing
    native GetFrameSpriteAlpha takes framehandle whichFrame returns integer
    native SetFrameSpriteMaterialTexture takes framehandle whichFrame, string textureName, integer materialId, integer textureIndex returns nothing
    native SetFrameSpriteTexture takes framehandle whichFrame, string textureName, integer textureIndex returns nothing
    native SetFrameSpriteReplaceableTexture takes framehandle whichFrame, string textureName, integer textureIndex returns nothing
    native GetUnitInSelectionByIndex takes player whichPlayer, integer index returns unit
    native GetLastUnitInSelection takes player whichPlayer returns unit
  4. UNIT_IF_INTELLIGENCE теперь возвращает правильное значение.
  5. Добавлены эти поля во внутренний обработчик Get/SetUnitField:
    UNIT_IF_AGILITY_PERMANENT
    UNIT_IF_INTELLIGENCE_PERMANENT
    UNIT_IF_STRENGTH_PERMANENT
    UNIT_IF_AGILITY_WITH_BONUS
    UNIT_IF_INTELLIGENCE_WITH_BONUS
    UNIT_IF_STRENGTH_WITH_BONUS
  6. Добавлены эти поля во внутренний обработчик GetUnitField:
    UNIT_IF_AGILITY_BONUS
    UNIT_IF_INTELLIGENCE_BONUS
    UNIT_IF_STRENGTH_BONUS
    UNIT_RF_HEALTH_FROM_BONUS_STRENGTH
    UNIT_RF_MANA_FROM_BONUS_INTELLIGENCE
    UNIT_RF_DEFENSE_BONUS
    UNIT_RF_SPEED_BONUS
    UNIT_WEAPON_IF_ATTACK_DAMAGE_BONUS
    UNIT_WEAPON_RF_ATTACK_SPEED_BONUS
  7. Исправлено GetTriggerFrame возвращающее всегда null.
  8. BlzSetSpecialEffectColorByPlayer теперь закрашивает временные(командные) текстуры, как оно и должно было.
  9. Исправлена критическая ошибка со всеми BlzSetField.
  10. ABILITY_ILF_TARGET_TYPE добавлена во внутренний обработчик SetAbilityField.
  11. Исправлена критическая ошибка от ORIGIN_FRAME_BUFF_BAR_INDICATOR, добавлена проверка действительности, так как игра не создаёт сразу все индикаторы.
    Пояснение: игра по стандарту создаёт лишь 1 индикатор, затем, когда у игры нет "свободных" индикаторов, она создаёт ещё 1 вплоть до 7.
  12. Исправлены некоторые "опечатки" среди OSKEY_ переменных, причиной послужила моя мышка, которая устраивает дабл клик, потому при табуляциях, часть букв была удалена/заменена и так далее.
  13. Исправлено Missile API, оно "перестало работать" после поспешных исправлений/переделок.
  14. Исправлены BUFF_SF поля, теперь они возвращают реальное значение, а не "<null>".
  15. Добавлены эти поля Заклинаний во внутренний обработчик Get/SetAbilityField:
    ABILITY_RLF_CASTING_TIME
    ABILITY_RLF_CAST_BACK_SWING
    ABILITY_RLF_CAST_POINT.
20

» Unryze Jass API / UjAPI

Вышла новая версия! Прокрутить к ресурсу

v1.0.19.78

  1. Новые Типы:
    type jassthread extends handle
  2. Новые Константы:
    constant widgetevent EVENT_WIDGET_DAMAGING = ConvertWidgetEvent(400)
    constant widgetevent EVENT_WIDGET_DAMAGED = ConvertWidgetEvent(401)
    constant abilityreallevelfield ABILITY_RLF_CAST_BACK_SWING = ConvertAbilityRealLevelField('acbs')
    constant abilityreallevelfield ABILITY_RLF_CAST_POINT = ConvertAbilityRealLevelField('acpt')
    constant unitintegerfield UNIT_IF_AGILITY_BONUS = ConvertUnitIntegerField('uag+') Get Only
    constant unitintegerfield UNIT_IF_INTELLIGENCE_BONUS = ConvertUnitIntegerField('uin+') Get Only
    constant unitintegerfield UNIT_IF_STRENGTH_BONUS = ConvertUnitIntegerField('ust+') Get Only
    constant unitrealfield UNIT_RF_HEALTH_FROM_BONUS_STRENGTH = ConvertUnitRealField('uhs+') Get Only
    constant unitrealfield UNIT_RF_MANA_FROM_BONUS_INTELLIGENCE = ConvertUnitRealField('umi+') Get Only
    constant unitrealfield UNIT_RF_DEFENSE_BONUS = ConvertUnitRealField('udf+') Get Only
    constant unitrealfield UNIT_RF_SPEED_BONUS = ConvertUnitRealField('umv+') Get Only
    constant unitweaponintegerfield UNIT_WEAPON_IF_ATTACK_DAMAGE_BONUS = ConvertUnitWeaponIntegerField('ud1+') Get Only | this is the + (Green) or - (Red) value next to attack.
    constant unitweaponrealfield UNIT_WEAPON_RF_ATTACK_SPEED_BONUS = ConvertUnitWeaponRealField('us1+') Get Only
  3. Новые Нативные Функции:
    Jass VM Natives
    native GetJassMainThread takes nothing returns jassthread
    native GetJassCurrentThread takes nothing returns jassthread
    native RunJassScriptEx takes string parentScriptFile, string helperScriptFile, string jassScriptFile returns jassthread
    native RunJassScript takes string helperScriptFile, string jassScriptFile returns jassthread
    native RunJassScriptSimple takes string jassScriptFile returns jassthread
    native StopJassThread takes jassthread thread returns boolean
    native GetJassGlobalInteger takes jassthread thread, string variableName returns integer
    native GetJassGlobalReal takes jassthread thread, string variableName returns real
    native GetJassGlobalString takes jassthread thread, string variableName returns string
    native GetJassGlobalHandle takes jassthread thread, string variableName returns handle
    native GetJassGlobalBoolean takes jassthread thread, string variableName returns boolean
    native SetJassGlobalInteger takes jassthread thread, string variableName, integer value returns boolean
    native SetJassGlobalReal takes jassthread thread, string variableName, real value returns boolean
    native SetJassGlobalString takes jassthread thread, string variableName, string value returns boolean
    native SetJassGlobalHandle takes jassthread thread, string variableName, handle value returns boolean
    native SetJassGlobalBoolean takes jassthread thread, string variableName, boolean value returns boolean

    native GetWidgetModel takes widget whichWidget returns string
    native TriggerRegisterWidgetEvent takes trigger whichTrigger, widget whichWidget, widgetevent whichWidgetEvent returns event
    native SetSpecialEffectPlayerColour takes effect whichEffect, playercolor color returns nothing
    native SetSpecialEffectMaterialTexture takes effect whichEffect, string textureName, integer materialId, integer textureIndex returns nothing
    native SetSpecialEffectTexture takes effect whichEffect, string textureName, integer textureIndex returns nothing
    native SetSpecialEffectReplaceableTexture takes effect whichEffect, string textureName, integer textureIndex returns nothing
    native SetTrackablePlayerColour takes trackable whichTrackable, playercolor color returns nothing
    native SetMissilePlayerColour takes missile whichMissile, playercolor color returns nothing
    native SetMissileMaterialTexture takes missile whichMissile, string textureName, integer materialId, integer textureIndex returns nothing
    native SetMissileTexture takes missile whichMissile, string textureName, integer textureIndex returns nothing
    native SetMissileReplaceableTexture takes missile whichMissile, string textureName, integer textureIndex returns nothing
    native SetFrameSpritePlayerColour takes framehandle whichFrame, playercolor color returns nothing
    native GetFrameSpriteAlpha takes framehandle whichFrame returns integer
    native SetFrameSpriteMaterialTexture takes framehandle whichFrame, string textureName, integer materialId, integer textureIndex returns nothing
    native SetFrameSpriteTexture takes framehandle whichFrame, string textureName, integer textureIndex returns nothing
    native SetFrameSpriteReplaceableTexture takes framehandle whichFrame, string textureName, integer textureIndex returns nothing
    native GetUnitInSelectionByIndex takes player whichPlayer, integer index returns unit
    native GetLastUnitInSelection takes player whichPlayer returns unit
  4. UNIT_IF_INTELLIGENCE теперь возвращает правильное значение.
  5. Добавлены эти поля во внутренний обработчик Get/SetUnitField:
    UNIT_IF_AGILITY_PERMANENT
    UNIT_IF_INTELLIGENCE_PERMANENT
    UNIT_IF_STRENGTH_PERMANENT
    UNIT_IF_AGILITY_WITH_BONUS
    UNIT_IF_INTELLIGENCE_WITH_BONUS
    UNIT_IF_STRENGTH_WITH_BONUS
  6. Добавлены эти поля во внутренний обработчик GetUnitField:
    UNIT_IF_AGILITY_BONUS
    UNIT_IF_INTELLIGENCE_BONUS
    UNIT_IF_STRENGTH_BONUS
    UNIT_RF_HEALTH_FROM_BONUS_STRENGTH
    UNIT_RF_MANA_FROM_BONUS_INTELLIGENCE
    UNIT_RF_DEFENSE_BONUS
    UNIT_RF_SPEED_BONUS
    UNIT_WEAPON_IF_ATTACK_DAMAGE_BONUS
    UNIT_WEAPON_RF_ATTACK_SPEED_BONUS
  7. Исправлено GetTriggerFrame возвращающее всегда null.
  8. BlzSetSpecialEffectColorByPlayer теперь закрашивает временные(командные) текстуры, как оно и должно было.
  9. Исправлена критическая ошибка со всеми BlzSetField.
  10. ABILITY_ILF_TARGET_TYPE добавлена во внутренний обработчик SetAbilityField.
  11. Исправлена критическая ошибка от ORIGIN_FRAME_BUFF_BAR_INDICATOR, добавлена проверка действительности, так как игра не создаёт сразу все индикаторы.
    Пояснение: игра по стандарту создаёт лишь 1 индикатор, затем, когда у игры нет "свободных" индикаторов, она создаёт ещё 1 вплоть до 7.
  12. Исправлены некоторые "опечатки" среди OSKEY_ переменных, причиной послужила моя мышка, которая устраивает дабл клик, потому при табуляциях, часть букв была удалена/заменена и так далее.
  13. Исправлено Missile API, оно "перестало работать" после поспешных исправлений/переделок.
  14. Исправлены BUFF_SF поля, теперь они возвращают реальное значение, а не "<null>".
  15. Добавлены эти поля Заклинаний во внутренний обработчик Get/SetAbilityField:
    ABILITY_RLF_CASTING_TIME
    ABILITY_RLF_CAST_BACK_SWING
    ABILITY_RLF_CAST_POINT.