Добавлен , опубликован

v1.1.15.218

UjAPI.dll

1. Новые Константы:
	constant frameeventtype				FRAMEEVENT_FRAME_ITEM_CHANGED								= ConvertFrameEventType(10)
	constant controlstyleflag 			CONTROL_STYLE_DRAW											= ConvertControlStyleFlag(32)
2. Новые Нативные Функции:
	native BitwiseShiftLeftLogical							takes integer i, integer bitsToShift returns integer
	native BitwiseShiftRightLogical							takes integer i, integer bitsToShift returns integer
	//
	native CountUnitAbilities								takes unit whichUnit, boolean alsoCountBuffs returns integer
	native CountUnitBuffs									takes unit whichUnit returns integer
	//
	native GetBuffOwningAbility								takes buff whichbuff returns ability // experimental
	native SetBuffOwningAbility								takes buff whichBuff, ability whichAbility returns nothing // experimental
	//
	native SetProjectileSourceAbility						takes projectile whichProjectile, ability whichAbility returns nothing
	//
	native GetFrameChildrenCountEx							takes framehandle whichFrame, integer listId returns integer // listId: CFrames: 0 for default | 1 for layouts (will return CLayer) | CSimpleFrames 0 - 6 | CSimpleRegions any number, as they only have 1 child node.
	native GetFrameChildEx									takes framehandle whichFrame, integer listId, integer index returns framehandle
	native GetFrameTextAlignmentValue						takes framehandle whichFrame, integer id returns real // CSimpleFontString: 0 - x, 1 - y | CTextFrame: 0 - x, 1 - y, 2 - x Shadow, 3 - y Shadow, 4 = FontJustificationOffset
	native SetFrameTextAlignmentValue						takes framehandle whichFrame, integer id, real offset returns nothing
	native GetTriggerFrameTargetFrame						takes nothing returns framehandle
3. Исправлена поддержка отрицательных чисел с сеттерами цифровых полей, ранее они обрабатывались без знака.
4. CListBox API теперь работает с CMenu.
5. CListBox API теперь работает с CPopupMenu.
6. CListBox API теперь работает с CRadioGroup.
7. GetFrameTextColourEx теперь работает с CListBoxItem.
8. SetFrameTextColourEx теперь работает с CListBoxItem.
9. SetFrameFont теперь работает с CTimerTextFrame.
10. SetFrameFont теперь работает с CListBoxItem.
11. SetFrameTextAlignment теперь работает с CTimerTextFrame.
12. SetFrameTextAlignment теперь работает с CListBoxItem.
13. SetFrameTextVerticalAlignment теперь работает с CTimerTextFrame.
14. SetFrameTextVerticalAlignment теперь работает с CListBoxItem.
15. SetFrameTextHorizontalAlignment теперь работает с CTimerTextFrame.
16. SetFrameTextHorizontalAlignment теперь работает с CListBoxItem.
17. FRAMEEVENT_POPUPMENU_ITEM_CHANGED теперь работает с CListBox.
18. AddFrameListItem теперь работает с CRadioGroup.
19. FRAMEEVENT_POPUPMENU_ITEM_CHANGED теперь работает с CRadioGroup.
20. Исправлено SetLightningTargetX устанавливающее x источника, вместо цели.
21. Исправлено SetLightningTargetY устанавливающее y источника, вместо цели.
22. Исправлено SetLightningTargetZ устанавливающее z источника, вместо цели.
23. Исправлено SetLightningTargetPositionLoc устанавливающее позицию источника, вместо цели.
24. Исправлено GroupContainsUnit всегда возвращающее true.
25. Перенесён весь внутренний код jFramea API во FrameAPI. Это пометка для себя, данное изменение не должно повлиять ни на что.
26. Исправлено BlzSetUnitMaxMana устанавливающее максимальное здоровье вместо маны.
27. Исправлено не работающее SetFrameTextHorizontalAlignment.
28. Исправлено SetFrameTextColourEx для CSimpleFontString.

Launcher

1. CLI теперь может обрабатывать эти warcraft 3 комманды: d3d, opengl, swtnl, classic, datadir, gametype, fullscreen.
2. Добавлена опция Dev Mode для AngelScript.
3. Добавлена опция Console для AngelScript.
4. Добавлена опция No Warnings для AngelScript.
5. Добавлена опция "dev" CLI команда для AngelScript.
6. Добавлена опция "console" CLI команда для AngelScript.
7. Добавлена опция "nowarnings" CLI команда для AngelScript.
8. Добавлен модуль FastMenu.dll в Modules.
9. Добавлена опция Fast Menu для Launcher.
10. Добавлена -fastmenu CLI команда для Launcher.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.18.74

  1. Новые Константы:
constant originframetype ORIGIN_FRAME_CURSOR_FRAME = ConvertOriginFrameType(44)
  1. Новые Нативные Функции:
native BitwiseGetBit takes integer number, integer bitIndex returns integer
native BitwiseGetByte takes integer number, integer byteIndex returns integer
native StringCount takes string s, string whichString, boolean caseSensitive returns integer
native StringTrimLeft takes string s, boolean caseSensitive returns string
native StringTrimRight takes string s, boolean caseSensitive returns string
native StringTrim takes string s, boolean caseSensitive returns string
native StringReverse takes string s, boolean caseSensitive returns string
native StringReplace takes string s, string whichString, string replaceWith, boolean caseSensitive returns string
native StringInsert takes string s, string whichString, integer whichPosition, boolean caseSensitive returns string
native GetTriggerSyncPlayer takes nothing returns player this is simply mimicking GetTriggerPlayer, added for simplicity.
native IsTextTagVisible takes texttag whichTextTag returns boolean
native IsTextTagSuspended takes texttag whichTextTag returns boolean
native IsTextTagPermanent takes texttag whichTextTag returns real
native GetTextTagX takes texttag whichTextTag returns real
native SetTextTagX takes texttag whichTextTag, real x returns nothing
native GetTextTagY takes texttag whichTextTag returns real
native SetTextTagY takes texttag whichTextTag, real y returns nothing
native GetTextTagZ takes texttag whichTextTag returns real
native SetTextTagZ takes texttag whichTextTag, real z returns nothing
native GetTextTagHeight takes texttag whichTextTag returns real
native SetTextTagHeight takes texttag whichTextTag, real height returns nothing
native GetTextTagLocation takes texttag whichTextTag returns location
native SetTextTagPositionLocation takes texttag whichTextTag, location whichLocation returns nothing
native GetTextTagColour takes texttag whichTextTag returns integer
native GetTextTagAlpha takes texttag whichTextTag returns integer
native SetTextTagAlpha takes texttag whichTextTag, integer alpha returns nothing
native GetTextTagVelocityX takes texttag whichTextTag returns real
native SetTextTagVelocityX takes texttag whichTextTag, real velX returns nothing
native GetTextTagVelocityY takes texttag whichTextTag returns real
native SetTextTagVelocityY takes texttag whichTextTag, real velY returns nothing
native GetTextTagVelocityZ takes texttag whichTextTag returns real
native SetTextTagVelocityZ takes texttag whichTextTag, real velZ returns nothing
native GetTextTagAge takes texttag whichTextTag returns real
native GetTextTagLifespan takes texttag whichTextTag returns real
native GetTextTagFadepoint takes texttag whichTextTag returns real
native GetTextTagShadowColour takes texttag whichTextTag returns integer
native SetTextTagShadowColour takes texttag whichTextTag, integer colour returns nothing
native GetTextTagShadowAlpha takes texttag whichTextTag returns integer
native SetTextTagShadowAlpha takes texttag whichTextTag, integer alpha returns nothing
native GetTextTagText takes texttag whichTextTag returns string
  1. Добавлены недостающие константы из предыдущей версии.
  2. Версия UjAPI теперь прописывается в главном меню Warcraft.
  3. Добавлена опция "Load Library" в главную секцию. Это включает/выключает подгрузку UjAPI.mpq и нативных функций.
Пометка: эта опция по стандарту включена и смена этой опции на уже запущенном Warctaft не будет работать.
  1. Добавлена опция "Load Library" для секции LUA. Это включает/выключает подгрузку библиотеки war3_lua.dll.
Пометка: эта опция по стандарту выключена и смена этой опции на уже запущенном Warctaft не будет работать.
  1. Добавлена "CLI" обработка в UjAPI, теперь каждый последующий запуск приложения UjAPI будет просто на просто отправлять аргументы запуска в уже запущенное приложение.
Пример 1: "D:\Files\Work Files\Programming\uJAPI\Release\UjAPILauncher.exe" -ujapi "dev" -lua "dev console nowarnings" -multiwindow -window -loadfile "Maps\Test\WorldEditTestMap.w3x"
Пометка 1: Это выполнит UjAPI и включит его режим разработчика, а так же включит луа с заданными к ней параметрами, игра будет в мультиоконном режиме и в режиме окна. Затем будет запущена карта заданная в loadfile аргументе.
Пример 2 (полный): "D:\Files\Work Files\Programming\uJAPI\Release\UjAPILauncher.exe" -ujapi "dev" -lua "dev console nowarnings" -multiwindow -window -launch "Warcraft" -gamepath "D:\Games\Warcraft III TFT\war3.exe" -loadfile "Maps\Test\WorldEditTestMap.w3x"
Пометка 2: Это выполнит всё, что описано в Примере 1, однако если присутствуют (-gamepath или -editorpath) оно также "переопределит" путь игры/редактора основываясь на аргументах поданных в них.
  1. CLI команды:
Пометка: пояснения команд будут в скобочках, вот так - (информация).
-justdoupdate (просто на просто выполнит форсированное скачивание последней версии и выполнит автообновление UjAPI, остальные команды будут проигнорированы).
-ujapi (даёт возможность переопределения некоторых базовых настроек UjAPI, пример: -ujapi "dev"), "" (кавычки) обязательны!
noload (отключает подгрузку UjAPI.mpq и UjAPI нативных функций).
dev (включает режим разработчика, который также включит консоль).
-lua (даёт возможность переопределения некоторых базовых настроек war3_lua.dll, пример: -lua "dev console nowarnings"), "" (кавычки) обязательны!
dev (включает режим разработчика).
console (включает консоль для луа ошибок и так далее).
nowarnings (отключает некоторые внутренние ошибки типов).
-multiwindow (включает режим Multi-Window и загружает необходимый модуль).
-window (запустит приложение в оконном режиме).
-launch (даёт возможность переопределения/указания пути для запуска игры или редактора, по стандарту будет запускаться игра, пример: -launch "Editor"), "" (кавычки) обязательны!
-gamepath (переопределяет и использует путь игры заданный в UjAPI Launcher, пример: -gamepath "D:\Games\Warcraft III TFT\war3.exe"), "" (кавычки) обязательны!
-editorpath (переопределяет и использует путь редактора заданный в UjAPI Launcher, пример: -editorpath "D:\Programs\WC3 Tools\JNPG-R1.4-Prometheus-Edition\NewGen WE.exe"), "" (кавычки) обязательны!
-loadfile (повторяет 1 в 1 метод запуска карт, путь до карты для игры ВСЕГДА относителен пути игры, однако для редактора нужно указывать ПОЛНЫЙ путь до карты).
  1. Добавлена -loadfile команда для секции World Editor, однако путь до карты НЕ относителен пути игры, нужно указывать полный путь до карты.
  2. Добавлена опция "Load Library" в секции World Editor.
  3. Добавлена опция "Dev Mode" в секции World Editor.
Пометка: #10 и #11 работают точно так же как такие же опции в Warcraft 3.
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.18.75

  1. Исправлены проблемы с полноэкранным режимом запуска игры.
20
Вышла новая версия! Прокрутить к ресурсу

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
Вышла новая версия! Прокрутить к ресурсу

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
Вышла новая версия! Прокрутить к ресурсу

v1.0.21.85

  1. Новые Константы:
    constant targetflag TARGET_FLAG_SELF = ConvertTargetFlag(4096)
    constant targetflag TARGET_FLAG_PLAYER_UNITS = ConvertTargetFlag(8192)
    constant targetflag TARGET_FLAG_ALLIED = ConvertTargetFlag(16384)
    constant targetflag TARGET_FLAG_FRIEND = ConvertTargetFlag(24576) ALLIED | PLAYER_UNITS
    constant targetflag TARGET_FLAG_NEUTRAL = ConvertTargetFlag(32768)
    constant targetflag TARGET_FLAG_ENEMY = ConvertTargetFlag(65536)
    constant targetflag TARGET_FLAG_NOT_SELF = ConvertTargetFlag(122880) ENEMY | NEUTRAL | FRIEND
    constant targetflag TARGET_FLAG_VULNERABLE = ConvertTargetFlag(1048576)
    constant targetflag TARGET_FLAG_INVULNERABLE = ConvertTargetFlag(2097152)
    constant targetflag TARGET_FLAG_HERO = ConvertTargetFlag(4194304)
    constant targetflag TARGET_FLAG_NON_HERO = ConvertTargetFlag(8388608)
    constant targetflag TARGET_FLAG_ALIVE = ConvertTargetFlag(16777216)
    constant targetflag TARGET_FLAG_DEAD = ConvertTargetFlag(33554432)
    constant targetflag TARGET_FLAG_ORGANIC = ConvertTargetFlag(67108864)
    constant targetflag TARGET_FLAG_MECHANICAL = ConvertTargetFlag(134217728)
    constant targetflag TARGET_FLAG_NON_SUICIDAL = ConvertTargetFlag(268435456)
    constant targetflag TARGET_FLAG_SUICIDAL = ConvertTargetFlag(536870912)
    constant targetflag TARGET_FLAG_NON_ANCIENT = ConvertTargetFlag(1073741824)
    constant targetflag TARGET_FLAG_ANCIENT = ConvertTargetFlag(2147483648)
    constant targetflag TARGET_FLAG_EMPTY = ConvertTargetFlag(4294967295)

    constant abilityrealfield ABILITY_RF_AURA_REFRESH_TIME = ConvertAbilityRealField('artm')
    constant abilityintegerlevelfield ABILITY_ILF_TARGETS_ALLOWED = ConvertAbilityIntegerLevelField('atar')

    constant playerunitevent EVENT_PLAYER_UNIT_ATTACK_FINISHED = ConvertPlayerUnitEvent(317)
    constant unitevent EVENT_UNIT_ATTACK_FINISHED = ConvertUnitEvent(316)
  2. Новые Нативные Функции:
    native IsAbilityTargetAllowed takes ability whichAbility, widget whichWidget returns boolean
    native GetSpecialEffectModelObjectPositionX takes effect whichEffect, string whichObject returns real
    native GetSpecialEffectModelObjectPositionY takes effect whichEffect, string whichObject returns real
    native GetSpecialEffectModelObjectPositionZ takes effect whichEffect, string whichObject returns real
    native GetSpecialEffectModelObjectPositionLoc takes effect whichEffect, string whichObject returns location
    native GetTrackableModelObjectPositionX takes trackable whichTrackable, string whichObject returns real
    native GetTrackableModelObjectPositionY takes trackable whichTrackable, string whichObject returns real
    native GetTrackableModelObjectPositionZ takes trackable whichTrackable, string whichObject returns real
    native GetTrackableModelObjectPositionLoc takes trackable whichTrackable, string whichObject returns location
    native GetWidgetModelObjectPositionX takes widget whichWidget, string whichObject returns real
    native GetWidgetModelObjectPositionY takes widget whichWidget, string whichObject returns real
    native GetWidgetModelObjectPositionZ takes widget whichWidget, string whichObject returns real
    native GetWidgetModelObjectPositionLoc takes widget whichWidget, string whichObject returns location
    native GetDestructableModelObjectPositionX takes destructable whichDestructable, string whichObject returns real
    native GetDestructableModelObjectPositionY takes destructable whichDestructable, string whichObject returns real
    native GetDestructableModelObjectPositionZ takes destructable whichDestructable, string whichObject returns real
    native GetDestructableModelObjectPositionLoc takes destructable whichDestructable, string whichObject returns location
    native GetItemModelObjectPositionX takes item whichItem, string whichObject returns real
    native GetItemModelObjectPositionY takes item whichItem, string whichObject returns real
    native GetItemModelObjectPositionZ takes item whichItem, string whichObject returns real
    native GetItemModelObjectPositionLoc takes item whichItem, string whichObject returns location
    native GetUnitModelObjectPositionX takes unit whichUnit, string whichObject returns real
    native GetUnitModelObjectPositionY takes unit whichUnit, string whichObject returns real
    native GetUnitModelObjectPositionZ takes unit whichUnit, string whichObject returns real
    native GetUnitModelObjectPositionLoc takes unit whichUnit, string whichObject returns location
    native GetProjectileModelObjectPositionX takes projectile whichProjectile, string whichObject returns real
    native GetProjectileModelObjectPositionY takes projectile whichProjectile, string whichObject returns real
    native GetProjectileModelObjectPositionZ takes projectile whichProjectile, string whichObject returns real
    native GetProjectileModelObjectPositionLoc takes projectile whichProjectile, string whichObject returns location
    Frame API
    native GetFrameCheckState takes fremehandle whichFrame returns boolean
    native SetFrameCheckState takes framehandle whichFrame, boolean isCheck returns nothing
    native GetTriggerFrameMouseButton takes nothing returns mousebuttontype
    native RegisterFrameMouseButton takes framehandle whichFrame, mousebuttontype whichButton, boolean isAdd returns nothing
  3. Исправлены CLI команды, которые порой не посылались/приходили с ошибкой.
  4. Исправлена ошибка "дочерних" приложений UjAPI, которая мешала им посылать CLI команды главному приложению.
  5. Исправлена IsTextTagVisible, которая возвращала инверсное значение.
  6. Исправлена CastAbilityTarget вызывающая критическую ошибку при применении на поддерживаемой целевом заклинании.
  7. Переделана SetUnitSelectable, теперь она более не имитирует "смерть", чтобы достигнуть невыделяемого/ненаводимого состояния.
  8. SetFrameTexture теперь работает с CSimpleButton/CCommandButton/CSimpleCheckBox.
  9. CSimpleCheckBox теперь поддерживается, так же добавлена поддержка CLICK/CHECK событий, вместе с RegisterFrameMouseButton.
  10. CONTROL_CLICK и MOUSE_DOUBLECLICK события теперь могут быть применены к CListBoxWar3 фреймам.
  11. Исправлены почти все ABILITY_RLF_ поля, которые имеют цифру в конце их typeId, они теперь должны работать как и задумывалось.
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.22.88

  1. Новые Типы:
type pathingaitype extends handle
type collisiontype extends handle
type textfilehandle extends handle
  1. Новые Конвертеры:
constant native ConvertPathingAIType takes integer i returns pathingaitype
constant native ConvertCollisionType takes integer i returns collisiontype
  1. Новые Константы:
constant pathingaitype PATHING_AI_TYPE_FOOT = ConvertPathingAIType(0)
constant pathingaitype PATHING_AI_TYPE_AMPHIBIOUS = ConvertPathingAIType(64)
constant pathingaitype PATHING_AI_TYPE_FLOAT = ConvertPathingAIType(128)
constant pathingaitype PATHING_AI_TYPE_FLY = ConvertPathingAIType(192) MOVE_TYPE_AMPHIBIOUS | MOVE_TYPE_FLOAT
constant collisiontype COLLISION_TYPE_NONE = ConvertCollisionType(0)
constant collisiontype COLLISION_TYPE_ANY = ConvertCollisionType(1)
constant collisiontype COLLISION_TYPE_FOOT = ConvertCollisionType(2)
constant collisiontype COLLISION_TYPE_AIR = ConvertCollisionType(4)
constant collisiontype COLLISION_TYPE_BUILDING = ConvertCollisionType(8)
constant collisiontype COLLISION_TYPE_HARVESTER = ConvertCollisionType(16)
constant collisiontype COLLISION_TYPE_BLIGHTED = ConvertCollisionType(32)
constant collisiontype COLLISION_TYPE_FLOAT = ConvertCollisionType(64)
constant collisiontype COLLISION_TYPE_AMPHIBIOUS = ConvertCollisionType(128)
constant collisiontype COLLISION_TYPE_GROUND = ConvertCollisionType(202) COLLISION_TYPE_FOOT | COLLISION_TYPE_BUILDING | COLLISION_TYPE_FLOAT | COLLISION_TYPE_AMPHIBIOUS
constant originframetype ORIGIN_FRAME_INVENTORY_COVER_FRAME = ConvertOriginFrameType(45)
constant originframetype ORIGIN_FRAME_UNIT_TIP = ConvertOriginFrameType(46)
constant unitevent EVENT_UNIT_DECAY_FINISHED = ConvertUnitEvent(318)
constant playerunitevent EVENT_PLAYER_UNIT_DECAY_FINISHED = ConvertPlayerUnitEvent(319)
constant frameeventtype FRAMEEVENT_CHECKBOX_CHANGED = ConvertFrameEventType(17)
constant frameeventtype FRAMEEVENT_CONTROL_RELEASE = ConvertFrameEventType(18)
constant frameeventtype FRAMEEVENT_CONTROL_DRAG = ConvertFrameEventType(19)
constant unitintegerfield UNIT_IF_COLLISION_TYPE = ConvertUnitIntegerField('ucot')
constant unitintegerfield UNIT_IF_PATHING_AI = ConvertUnitIntegerField('upai')
constant unitintegerfield UNIT_IF_PATHING_TYPE = ConvertUnitIntegerField('upat')
  1. Удалённые Нативные Функции:
native SetUnitMoveTypeByIndex takes unit whichUnit, integer moveIndex returns nothing
  1. Новые Нативные Функции:
native IntToChar takes integer i returns string
native BitwiseSetBit takes integer i, integer bitIndex, integer bitValue returns integer
native BitwiseSetByte takes integer i, integer byteIndex, integer byteValue returns integer
native BitwiseToInteger takes integer byte1, integer byte2, integer byte3, integer byte4 returns integer

native GetTimeStamp takes boolean isLocalTime, integer isMiliseconds returns string
native ConsoleEnable takes boolean flag returns nothing
native ConsolePrint takes string s returns nothing

native TextFileOpen takes string filePath returns textfilehandle
native TextFileGetPath takes textfilehandle whichTextFile returns string
native TextFileClose takes textfilehandle whichTextFile returns nothing
native TextFileClear takes textfilehandle whichTextFile returns nothing
native TextFileErase takes textfilehandle whichTextFile returns nothing
native TextFileCountLines takes textfilehandle whichTextFile returns integer
native TextFileReadLine takes textfilehandle whichTextFile, integer lineNumber returns string
native TextFileReadAll takes textfilehandle whichTextFile returns string
native TextFileWriteLine takes textfilehandle whichTextFile, string text returns nothing

native IsCursorEnabled takes nothing returns boolean
native SetCursorEnabled takes boolean enable returns nothing
native IsCursorAnimationLocked takes nothing returns boolean
native SetCursorAnimationLocked takes boolean isLock returns nothing
native IsFrameDraggable takes framehandle whichFrame returns boolean
native SetFrameDraggable takes framehandle whichFrame, boolean enabled returns nothing
native GetFrameModel takes framehandle whichFrame returns string
native SetFrameSpriteMaterialScale takes framehandle whichFrame, real sizeX, real sizeY, real sizeZ returns nothing
native IsWidgetTipEnabled takes nothing returns boolean
native SetWidgetTipEnabled takes boolean enable returns nothing
native IsAbilityBaseTargetAllowed takes integer abilityId, widget source, widget target returns boolean source can be null
native IsWidgetTargetAllowed takes widget source, widget target, targetflag whichFlags returns boolean

native GetUnitCollisionType takes unit whichUnit returns collisiontype
native SetUnitCollisionType takes unit whichUnit, collisiontype collisionType returns nothing
  1. Изменение Констант:
JASS_MAX_ARRAY_SIZE increased from 8192 to 262144.
  1. Исправлена IsSpecialEffectVisible, ранее возвращала инверсное значение.
  2. Исправлена ShowFrame, теперь она полноценно работает с CSimpleRegion/CSimpleTexture/CSimpleFrame и со всеми их дочерними типами.
  3. SetFrameTexture изменено имя аргумента "flag" на "textureId".
  4. SetFrameTexture теперь работает на CConsoleUI.
Пример: call SetFrameTexture( frm, "UI\\Console\\Orc\\OrcUITile01.blp", 0, false )
Пояснение: Консоль имеет 4 "части" потому индексы 0-3.
  1. Исправлена IsAbilityTargetAllowed, теперь она правильно определяет все флаги целей.
  2. Тип хендла targetflag type теперь работает по принципу CDataFieldWar3, чтобы избежать критической ошибки на флагах выше 0x100000 конвертируемые через ConvertTargetFlag.
  3. Исправлено поле ITEM_SF_ABILITY_LIST возвращающая "<null>".
  4. Исправлена критическая ошибка вызванная ABILITY_SLF_SPELL_LIST.
  5. ABILITY_SLF_SPELL_LIST опция теперь так же работает и на базовом заклинании и на интстанцируемом (Get и Set).
Примечание: данное поле игнорирует минимальное/максимальное количество заклинании, потому что мне было лень это делать.
Пример использования: call SetAbilityStringLevelField( GetUnitAbility( u, 'Aspb' ), ABILITY_SLF_SPELL_LIST, 0, "AHad,AHhb,AHbz,AUau" )
  1. SetFrameTexture теперь автоматически будет проверять расширения .tga/.blp (в этом порядке) если в пути файла отсутствует расширение файла.
Пример: call SetFrameTexture( frm, "UI\\Console\\Orc\\OrcUITile01", 0, false ), автоматически добавит .blp в конец пути.
  1. Исправлено по-большей части сломанное API синхронизации, пометка для себя попытка инстансирования CGameWar3 - была ужасно тупой затеей.
  2. Исправлен очень-очень старый баг со спеллбуком, когда он был частью предмета и этот предмет был переложен из одного слота в другой, тем самым применение предмета не прорисовывало эти заклинания.
Пометка: старый метод "исправления" этой ошибки являлся банальным выбрасыванием и подбором предмета.
  1. Значительно улучшено Frame API для CCursor фрейма.
  2. Удалён (или по крайней мере сильно увеличен) лимит RCString (Джасс строки).
Пометка: оригинальный лимит был 4097 (4096 + 1 для нуль-терминирования).
  1. Отладчик Jass ошибок, теперь печатает ошибки сгруппировано.
  2. Исправлена ошибка ввиду которой функция GetFrameChildByIndex не выдавала фрейм на 0 индексе.
  3. Исправлена критическая ошибка с SetFrameEnabled и BlzSetFrameEnable на Backdrop фреймах.
  4. Исправлен нерабочий внутренний обработчик ITEM_IF полей. (одним из этих полей являлся ITEM_IF_GOLD_COST).
  5. Переделаны GetFrameChild и GetFrameChildrenCount.
  6. FRAMEEVENT_MOUSE_ENTER и FRAMEEVENT_MOUSE_LEAVE теперь могут быть применены с IconDamage, IconHero, IconArmor, и т.д..
  7. Исправлены некоторые "неподдерживаемые" клавиши, такие как OSKEY_TAB, VK_SHIFT, и т.д..
  8. Потенциально полностью исправлена ошибка "паузы игры", которая ломала одиночный режим при альт-табе, если какой-либо KeyEvent был зарегистрирован.
Пояснение: этот баг только "преследовал" режим одиночной игры и никак не мог произойти в локальной/мультиплеерном режиме.
  1. Исправлены нерабочие события FRAMEEVENT_MOUSE_DOWN и FRAMEEVENT_MOUSE_UP для всех CControl фреймов.
  2. Исправлена RegisterFrameMouseButton неправильно обрабатывающая mousebuttontype, MIDDLE считывался как RIGHT, а RIGHT как MIDDLE.
  3. Исправлена ошибка в UjAPILauncher.exe, которая порой не позволяла запустить игру в виду полноэкранного режима.
  4. Исправлена ошибка в UjAPILauncher.exe, которая не позволяла CLI обработчику запустить игру, если все настройки были пустые.
  5. Поле юнита COLLISION_SIZE теперь работает в уникальном/инстанцируемом типа. Данное поле не меняет базовые данные, для изменения базовых данных используйте SetUnitBaseRealField, и т.д..
  6. Get/SetUnitMoveAIType "Move" переименован в "Pathing" и они теперь используют pathingaitype как аргументы.
  7. Get/SetUnitMoveType "Move" переименован в "Pathing" и они теперь используют pathingtype как аргументы.
  8. Добавлен модуль UnlockMapSizeLimit.dll.
  9. Добавлена опция Remove Map Size Limit в UjAPILauncher.
  10. Добавлена CLI команда -nomapsizelimit, для загрузки UnlockMapSizeLimit модуля
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.23.91

  1. Новые Нативные Функции:
native MathRealClamp takes real value, real min, real max returns real
native MathRealLerp takes real a, real b, real t returns real
native MathIntegerClamp takes integer value, integer min, integer max returns integer
native SetFrameWidth takes framehandle whichFrame, real width returns nothing
native SetFrameHeight takes framehandle whichFrame, real height returns nothing
native SetFrameTextVerticalAlignment takes framehandle whichFrame, textaligntype verticalAlign returns nothing
native SetFrameTextHorizontalAlignment takes framehandle whichFrame, textaligntype horizontalAlign returns nothing
native GetFrameTexture takes framehandle whichFrame, integer textureId returns string
native GetFrameTrackState takes framehandle whichFrame returns boolean
native SetFrameTrackState takes framehandle whichFrame, integer trackState returns nothing 0 - NONE | 1 - Track | 2 - Ignore Track
native SetFrameTextureEx takes framehandle whichFrame, string backgroundTextureFile, string borderTextureFile, integer textureId, boolean blend returns nothing
  1. CSimpleTexture теперь могут быть созданы через CreateFrameByType, используя фреймтип "SIMPLETEXTURE".
  2. CSimpleFontString теперь могут быть созданы через CreateFrameByType, используя фреймтип "SIMPLETEXT".
  3. FRAMEEVENT_MOUSE_DOWN и FRAMEEVENT_MOUSE_UP теперь полноценно работают со CSimpleButtons и со всеми их дочерними типами.
  4. Исправлено нерабочее Frame API для CScrollBar.
  5. Исправлен инверсированный флаг в BlzUnitHideAbility.
  6. Исправлены все нестандартные/новые события, которые работали лишь с последним добавленным действием.
    Спасибо пользователю Radioactive за то, что он заметил и сообщил об этой серьёзной проблеме.
  7. В очередной раз исправлены CSpellbook взимодействия и ABILITY_SF_FIELD_ABILITY_LIST.
  8. Исправлена критическая ошибка на загрузке карт на 1.27a/1.27b/1.28f.
    Пометка: это была новая ошибка, которая "всплыла" в виду снятия лимита RCString (джасс строк).
  9. Исправлена SetAbilityString не вызывающая клонирование UI данных.
  10. Исправлена ошибка, в виду которой StringReplace заменяла лишь 1 символ, заместо всех.
  11. Исправлена ошибка, в виду которой StringReplace не срабатывала, если заменяемая строка была пустой.
  12. Слегка увеличено время ожидания обработки пакетов, это должно исправить проблему, по которой UjAPI иногда не запускало карту, если она была указана в аргументах запуска.
  13. Добавлена Jass секция в UjAPI аппликацию.
  14. Добавлена опция Dev Mode в Jass секцию. Включение этой опции даст UjAPI возможность отображать имя текущей выполняемой функции в консоли.
  15. Добавлена опция Log Actions в Jass секцию. Включение этой опции даст UjAPI возможность отображать каждый шаг выполнения джасс байткода в консоли.
    Пример: ADD real -> -2816.000000 + 512.000000 = -2304.000000.
    Note: there are a total of 43 different types of operations (opcodes).
  16. Добавлена "-jass" CLI опция, для получения доступа к новому функционалу как Dev Mode и Log Actions.
  17. Добавлена "dev" опция для "-jass" CLI опции.
    Пример: "-jass dev".
  18. Добавлена "logactions" опция для "-jass" CLI опции.
    Пример: "-jass logactions".
  19. Get/SetFrameAlpha теперь должны работать с CSimpleFrames, у которых есть текстуры, а также со всеми CSimpleRegions.
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.24.92

  1. Новые Нативные Функции:
    native RemoveSound takes sound whichSound returns nothing
    native ReplaceSound takes sound whichSound, string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string eaxSetting returns sound
    native ReplaceSoundWithLabel takes sound whichSound, string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string SLKEntryName returns sound
    native ReplaceSoundFromLabel takes sound whichSound, string soundLabel, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate returns sound
    native ReplaceMIDISound takes sound whichSound, string soundLabel, integer fadeInRate, integer fadeOutRate returns sound

    native TextFileExists takes string filePath returns boolean
  2. В очередной раз исправлена функция SetFrameTexture для CBackdropFrame.
  3. Исправлена критическая ошибка в GetStringField при использовании на пустое поле.
  4. TextFileErase переименовано в TextFileDelete.
  5. Исправлен не выполняющийся EVENT_WIDGET_DEATH.
  6. GetKillingUnit теперь работает с EVENT_WIDGET_DEATH.
  7. Исправлена критическая ошибка от HandleListEnumByTypeId.
  8. Исправлены частично-сломанные функции HandleListGetTYPEByIndex, теперь они работают как и должны.
    Пометка: HandleListGetHandleByIndex и HandleListGetAgentByIndex работали без каких-либо проблем.
  9. Исправлен Jass Logger Dev Mode не открывающий Дебаг Консоль.
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.25.94

  1. Новые Нативные Функции:
    native ConsolePause takes string s returns nothing
    native GetTickCount takes nothing returns integer
    native GetSpecialEffectCurrentAnimationId takes effect whichEffect returns integer
    native GetTrackableCurrentAnimationId takes trackable whichTrackable returns integer
    native GetWidgetCurrentAnimationId takes widget whichWidget returns integer
    native GetDestructableCurrentAnimationId takes destructable whichDestructable returns integer
    native GetItemCurrentAnimationId takes item whichItem returns integer
    native GetUnitCurrentAnimationId takes unit whichUnit returns integer
    native GetProjectileCurrentAnimationId takes projectile whichProjectile returns integer
    native GetFrameSpriteCurrentAnimationId takes framehandle whichFrame returns integer
    native GetFrameColourEx takes framehandle whichFrame, integer textureId returns integer
    native SetFrameColourEx takes framehandle whichFrame, integer textureId, integer colour returns nothing
    native GetFrameColour takes framehandle whichFrame returns integer
    native SetFrameColour takes framehandle whichFrame, integer colour returns nothing
    native GetFrameAlphaEx takes framehandle whichFrame, integer textureId returns integer
    native SetFrameAlphaEx takes framehandle whichFrame, integer textureId, integer alpha returns nothing
  2. Исправлена ошибка при которой HideOriginFrames также скрывала и фреймы предметов, чего быть не должно.
  3. Исправлена неправильно работающая IsFrameVisible с CSimpleRegions/CSimpleFrames и с их дочерними фреймами.
20
Вышла новая версия! Прокрутить к ресурсу

v1.0.26.97

  1. Новые Типы:
    type mappedfield extends handle
    type mappedtype extends handle
    type attachmenttype extends mappedtype
    type bonetype extends attachmenttype
    type cursoranimtype extends mappedtype
  2. Новые Конверторы:
    constant native ConvertMappedField takes integer i returns mappedfield
    constant native ConvertAttachmentType takes integer i returns attachmenttype
    constant native ConvertBoneType takes integer i returns bonetype
    constant native ConvertCursorAnimType takes integer i returns cursoranimtype
  3. Новые Константы:
    constant mappedfield MAPPED_FIELD_ATTACHMENT = ConvertMappedField(0)
    constant mappedfield MAPPED_FIELD_BONE = ConvertMappedField(1)
    constant mappedfield MAPPED_FIELD_ANIMATION = ConvertMappedField(2)
    constant mappedfield MAPPED_FIELD_SUB_ANIMATION = ConvertMappedField(3)
    constant mappedfield MAPPED_CURSOR_SUB_ANIMATION = ConvertMappedField(4)

    constant attachmenttype ATTACHMENT_TYPE_CHEST = ConvertAttachmentType('ches')
    constant attachmenttype ATTACHMENT_TYPE_FEET = ConvertAttachmentType('feet')
    constant attachmenttype ATTACHMENT_TYPE_FOOT = ConvertAttachmentType('foot')
    constant attachmenttype ATTACHMENT_TYPE_HAND = ConvertAttachmentType('hand')
    constant attachmenttype ATTACHMENT_TYPE_HEAD = ConvertAttachmentType('head')
    constant attachmenttype ATTACHMENT_TYPE_ORIGIN = ConvertAttachmentType('orig')
    constant attachmenttype ATTACHMENT_TYPE_OVERHEAD = ConvertAttachmentType('over')
    constant attachmenttype ATTACHMENT_TYPE_SPRITE = ConvertAttachmentType('spri')
    constant attachmenttype ATTACHMENT_TYPE_WEAPON = ConvertAttachmentType('weap')
    constant attachmenttype ATTACHMENT_TYPE_ALTERNATE = ConvertAttachmentType('alte')
    constant attachmenttype ATTACHMENT_TYPE_LEFT = ConvertAttachmentType('left')
    constant attachmenttype ATTACHMENT_TYPE_RIGHT = ConvertAttachmentType('righ')
    constant attachmenttype ATTACHMENT_TYPE_MOUNT = ConvertAttachmentType('moun')
    constant attachmenttype ATTACHMENT_TYPE_REAR = ConvertAttachmentType('rear')
    constant attachmenttype ATTACHMENT_TYPE_SMART = ConvertAttachmentType('smar')
    constant attachmenttype ATTACHMENT_TYPE_FIRST = ConvertAttachmentType('firs')
    constant attachmenttype ATTACHMENT_TYPE_SECOND = ConvertAttachmentType('seco')
    constant attachmenttype ATTACHMENT_TYPE_THIRD = ConvertAttachmentType('thir')
    constant attachmenttype ATTACHMENT_TYPE_FOURTH = ConvertAttachmentType('four')
    constant attachmenttype ATTACHMENT_TYPE_FIFTH = ConvertAttachmentType('fift')
    constant attachmenttype ATTACHMENT_TYPE_SIXTH = ConvertAttachmentType('sixt')
    constant attachmenttype ATTACHMENT_TYPE_SMALL = ConvertAttachmentType('smal')
    constant attachmenttype ATTACHMENT_TYPE_MEDIUM = ConvertAttachmentType('medi')
    constant attachmenttype ATTACHMENT_TYPE_LARGE = ConvertAttachmentType('larg')
    constant attachmenttype ATTACHMENT_TYPE_GOLD = ConvertAttachmentType('gold')
    constant attachmenttype ATTACHMENT_TYPE_RALLYPOINT = ConvertAttachmentType('rall')
    constant attachmenttype ATTACHMENT_TYPE_EAT_TREE = ConvertAttachmentType('eatt')

    constant bonetype BONE_TYPE_CHEST = ConvertBoneType('ches')
    constant bonetype BONE_TYPE_FOOT = ConvertBoneType('foot')
    constant bonetype BONE_TYPE_HAND = ConvertBoneType('hand')
    constant bonetype BONE_TYPE_HEAD = ConvertBoneType('head')
    constant bonetype BONE_TYPE_TURRET = ConvertBoneType('turr')
    constant bonetype BONE_TYPE_ALTERNATE = ConvertBoneType('alte')
    constant bonetype BONE_TYPE_LEFT = ConvertBoneType('left')
    constant bonetype BONE_TYPE_RIGHT = ConvertBoneType('righ')
    constant bonetype BONE_TYPE_MOUNT = ConvertBoneType('moun')
    constant bonetype BONE_TYPE_SMART = ConvertBoneType('smar')

    constant cursoranimtype CURSORANIM_TYPE_NORMAL = ConvertCursorAnimType(0)
    constant cursoranimtype CURSORANIM_TYPE_SELECT = ConvertCursorAnimType(1)
    constant cursoranimtype CURSORANIM_TYPE_TARGET = ConvertCursorAnimType(2)
    constant cursoranimtype CURSORANIM_TYPE_TARGET_SELECT = ConvertCursorAnimType(3)
    constant cursoranimtype CURSORANIM_TYPE_INVALID_TARGET = ConvertCursorAnimType(4)
    constant cursoranimtype CURSORANIM_TYPE_HOLD_ITEM = ConvertCursorAnimType(5)
    constant cursoranimtype CURSORANIM_TYPE_SCROLL = ConvertCursorAnimType(6)
    constant cursoranimtype CURSORANIM_TYPE_LEFT = ConvertCursorAnimType(7)
    constant cursoranimtype CURSORANIM_TYPE_RIGHT = ConvertCursorAnimType(8)
    constant cursoranimtype CURSORANIM_TYPE_UP = ConvertCursorAnimType(9)
    constant cursoranimtype CURSORANIM_TYPE_DOWN = ConvertCursorAnimType(10)
  1. Удалённые Нативные Функции:
    native GetAnimationName takes animtype whichAnim returns string
  2. Новые Нативные Функции:
    native GetMiscDataString takes string sectionName, string optionName, integer index returns string
    native SetMiscDataString takes string sectionName, string optionName, integer index, string value returns nothing

    native GetSkinDataString takes string raceName, string sectionName, string optionName, integer index returns string raceName can be null
    native SetSkinDataString takes string raceName, string sectionName, string optionName, integer index, string value returns nothing raceName can be null

    native GetFDFDataString takes string sectionName, string optionName returns string
    native SetFDFDataString takes string sectionName, string optionName, string value returns nothing

    native GetMappedTypeName takes mappedfield whichField, mappedtype whichMapType returns string

    native TriggerCountEvents takes trigger whichTrigger returns integer
    native TriggerCountConditions takes trigger whichTrigger returns integer
    native TriggerCountActions takes trigger whichTrigger returns integer
    native TriggerRemoveEvent takes trigger whichTrigger, event whichEvent returns nothing
    native TriggerRemoveEventId takes trigger whichTrigger, eventid whichEventId, boolean removeAllOccurences returns nothing
    native TriggerClearEvents takes trigger whichTrigger returns nothing
    native TriggerClear takes trigger whichTrigger returns nothing

    native GetSpecialEffectCurrentAnimationName takes effect whichEffect returns string
    native GetTrackableCurrentAnimationName takes trackable whichTrackable returns string
    native GetWidgetCurrentAnimationName takes widget whichWidget returns string
    native GetDestructableCurrentAnimationName takes destructable whichDestructable returns string
    native GetItemCurrentAnimationName takes item whichItem returns string
    native GetUnitCurrentAnimationName takes unit whichUnit returns string
    native GetProjectileCurrentAnimationName takes projectile whichProjectile returns string
    native GetFrameSpriteCurrentAnimationName takes framehandle whichFrame returns string

    native CreateSimpleGlueFrame takes framehandle whichSimpleParent, framehandle whichSpriteFrame returns framehandle
    native SetFrameName takes framehandle whichFrame, string contextName returns nothing
    native GetFrameContext takes framehandle whichFrame returns integer
    native SetFrameContext takes framehandle whichFrame, integer createContext returns nothing
    native SetFrameContextName takes framehandle whichFrame, string contextName, integer createContext returns nothing
  3. Исправлен неправильный typeId поля ABILITY_IF_BUTTON_HOTKEY_RESEARCH's с aukh на arhk.
  4. Переименовано поле ABILITY_ILF_RESTORED_MANA__1_FOR_CURRENT в ABILITY_ILF_RESTORED_MANA_1_FOR_CURRENT.
  5. textfilehandle тип более не использует реальный менеджмент хендлов, теперь оно использует мнимые хендлы, как fogstate, то бишь теперь оно может быть использовано в локальном блоке.
  6. Добавлен новый экспериментальный парсер w3i, который умеет читать Reforged карты и отображать данные Сил/Игроков (слотов) и информацию карты. А также дать её запускать.
    Пометка: карты написанные на "чистом" луа всё ещё не будут работать, пока Ev3nt не исправит его war3_lua.dll.
    Пометка 2: это "маленькое" изменение потребовало более 1000 строк кода, что же я делаю со своей жизнью...
  7. Технически исправлена неправильная информация в структуре связанной с MemoryAllocation, которая относился к Jass стэку и так далее.
    Пометка: хотя ранее не было ошибок/проблем связанных с этой структурой, это было либо в виду везения, либо в виду малой популярности.
  8. Исправлены все функции связанные с SetAnimationOffsetPercent.
  9. Исправлена критическая ошибка от GetFrameName.
  10. Исправлена GetFrameName, которая ранее работала только со фреймами типа CFrame и его дочерними типами.
  11. Исправлена критическая ошибка, когда GetHandleId применялся на "слишком большие" значения.
  12. ClickFrameEx теперь использует mousebuttontype заместо булевого флага.
  13. Исправлено перекрытие стандартных действий фреймов Предметов/Заклинаний, после регистрации события FRAMEEVENT_MOUSE_DOWN.
  14. Исправлена критическая ошибка от GetFrameParent.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.