Вышло обновление для HoMM 3 ERA
Текущая версия:
3.7.0
Что нового ?
[+] Добавлен новый синтаксис SN:H для работы с текстами заклинаний.
!!SN:H^spell^/#spell_id/#spell_text_type/$text
где #spell_text_type-одна из констант SPELL_TEXT_XXX.
Эта команда делает устаревшим использование SS для текстов.
Синтаксис удаления работает частично. Настройки сбрасываются, но текст будет восстановлен только при загрузке сохраненной игры.
Пример:
[+] SN:Команда V#1/#2/#3 теперь применяет операцию "mod 32" к аргументу № 2, позволяя использовать команды на картах XXL без ошибок.
[+] Добавлены глобальные экспортируемые функции для работы с глобальными именованными переменными ERM (i^..^ и s^...^):
int (__stdcall) GetAssocVarIntValue (const char *VarName);
char* (__stdcall) GetAssocVarStrValue (const char *VarName);
void (__stdcall) SetAssocVarIntValue (const char *VarName, int newValue);
void (__stdcall) SetAssocVarStrValue (const char *VarName, const char *newValue);
Не забудьте вызвать (__stdcall) MemFree (void* Addr) для освобождения памяти, возвращаемой строковыми функциями.
[+] Добавлены глобальные экспортированные функции для работы с общим глобальным реестром в памяти ERA.
Реестр может использоваться плагинами для обмена значениями конфигурации и сигналами.
int (__stdcall) GetEraRegistryIntValue (const char *VarName);
char* (__stdcall) GetEraRegistryStrValue (const char *VarName);
void (__stdcall) SetEraRegistryIntValue (const char *VarName, int newValue);
void (__stdcall) SetEraRegistryStrValue (const char *VarName, const char *newValue);
Не забудьте вызвать (__stdcall) MemFree (void* Addr) для освобождения памяти, возвращаемой строковыми функциями.
[+] Добавлены отсутствующие файлы crtrait0.txt и crtraits.txt в hmm35wog.pac.
[*] Сообщение "Не удалось загрузить изображение %s" больше не будет отображаться для отсутствующих изображений в родных диалогах WoG.
[*] Обновлен редактор Erm и Era Erm Framework.
Скачать:
https://mods.hmm35.ru/Era%203.X.exe
Code:
Version 3.7.0 (04/2020)
------------------------
[+] Added new SN:H syntax to work with spell texts.
!!SN:H^spell^/#spell_id/#spell_text_type/$text
where #spell_text_type is one of SPELL_TEXT_XXX constants.
This command deprecates SS usage for texts.
Deletion syntax works partially. The settings are reset, but text will be restored on savegame load only.
Example:
!?FU(OnAfterErmInstructions);
; List all spell, displaying all texts
!!re i/(SPELL_FIRST)/(SPELL_LAST_WOG);
!!SN:H^spell^/i/(SPELL_TEXT_NAME)/?(text0:z);
!!SN:H^spell^/i/(SPELL_TEXT_SHORT_NAME)/?(text1:z);
!!SN:H^spell^/i/(SPELL_TEXT_DESCR)/?(text2:z);
!!SN:H^spell^/i/(SPELL_TEXT_DESCR_BASIC)/?(text3:z);
!!SN:H^spell^/i/(SPELL_TEXT_DESCR_ADVANCED)/?(text4:z);
!!SN:H^spell^/i/(SPELL_TEXT_DESCR_EXPERT)/?(text5:z);
!!SN:H^spell^/i/(SPELL_TEXT_SOUND)/?(text6:z);
!!IF:M^Spell %i:
%(text0)
%(text1)
%(text2)
%(text3)
%(text4)
%(text5)
%(text6)^;
!!en;
[+] SN:V#1/#2/#3 command now applies "mod 32" operation to argument #2, allowing to use commands on XXL maps without errors.
[+] Added global exported functions to work with ERA global named ERM variables (i^..^ and s^...^):
int (__stdcall) GetAssocVarIntValue (const char *VarName);
char* (__stdcall) GetAssocVarStrValue (const char *VarName);
void (__stdcall) SetAssocVarIntValue (const char *VarName, int NewValue);
void (__stdcall) SetAssocVarStrValue (const char *VarName, const char *NewValue);
Do not forget to call (__stdcall) MemFree (void* Addr) to release memory, returned by string functions.
[+] Added global exported functions to work with ERA shared global in-memory registry.
The registry can be used by plugins to exchange config values and signals.
int (__stdcall) GetEraRegistryIntValue (const char *VarName);
char* (__stdcall) GetEraRegistryStrValue (const char *VarName);
void (__stdcall) SetEraRegistryIntValue (const char *VarName, int NewValue);
void (__stdcall) SetEraRegistryStrValue (const char *VarName, const char *NewValue);
Do not forget to call (__stdcall) MemFree (void* Addr) to release memory, returned by string functions.
[+] Added missing crtrait0.txt and crtraits.txt to hmm35wog.pac.
[*] "Failed to load image at %s" message will not be displayed anymore for missing images in wog native dialogs.
[*] Updated Erm Editor and Era Erm Framework.