Current time: 13.04.2024, 22:35 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Era Erm Framework
» Стандартная библиотека Эры
Author Message
Berserker Offline
Administrators

Posts: 16471
Post: #1
Кирпич 
Обновление: https://dropmefiles.com/ExWs8
Code:
[+] Added new constants to "Era Erm Framework" mod:
  - ARG_SYNTAX_GET, ARG_SYNTAX_SET, ARG_SYNTAX_ADD for FU:S argument syntax types.

[+] Added new events to "Era Erm Framework" mod:

  - "OnAfterBattleSetup", occuring right after "OnBeforeBattle" and "OnBeforeBattleUniversal" events.
  New event allows to to be sure, that basic battle parameters (heroes, quick battle, coordinates) are set up.

  - "OnBeforeBattle" and    "OnBeforeBattleUniversal" events were improved, storing most of prebattle parameters in global variables.
  i^battle_isQuick^:       (TRUE) if quick battle is enabled, (FALSE) otherwise
  i^battle_x^:             Battle x-coordinate
  i^battle_y^:             Battle y-coordinate
  i^battle_z^:             Battle z-coordinate
  i^battle_owner_0^:       Left side owner or (NO_OWNER)
  i^battle_owner_1^:       Right side owner or (NO_OWNER)
  i^battle_hero_0^:        Left side hero or (NO_HERO)
  i^battle_hero_1^:        Right side hero or (NO_HERO). Any negative value is normalized into (NO_HERO)
  i^battle_ai_0^:          (TRUE) if left side is controlled by AI, (FALSE) otherwise.
  i^battle_ai_1^:          (TRUE) if right side is controlled by AI, (FALSE) otherwise.
  i^battle_human_0^:       (TRUE) if left side is controlled by human, (FALSE) otherwise.
  i^battle_human_1^:       (TRUE) if right side is controlled by human, (FALSE) otherwise.
  i^battle_remote_0^:      (TRUE) if left side is controlled by remote human, (FALSE) otherwise.
  i^battle_remote_1^:      (TRUE) if right side is controlled by remote human, (FALSE) otherwise.
  i^battle_local_0^:       (TRUE) if left side is controlled by local human or AI, (FALSE) otherwise.
  i^battle_local_1^:       (TRUE) if right side is controlled by local human or AI, (FALSE) otherwise.
  i^battle_localHuman_0^:  (TRUE) if left side is controlled by local human, (FALSE) otherwise.
  i^battle_localHuman_1^:  (TRUE) if right side is controlled by local human, (FALSE) otherwise.
  i^battle_hasHuman^:      (TRUE) if least one side is controlled by human, (FALSE) otherwise.
  i^battle_humanOnly^:     (TRUE) if all sides are controlled by humans, (FALSE) otherwise.
  i^battle_aiOnly^:        (TRUE) if all sides are controlled by AI, (FALSE) otherwise.
  i^battle_isVisible^:     (TRUE) if at least one side is human and quick battle is off, (FALSE) otherwise.
  i^battle_isNetwork^:     (TRUE) if it's network human vs human battle, (FALSE) otherwise.
  i^battle_type^:          Battle type bit mask: a collection of BATTLE_TYPE_FLAG_XXX constants.

[+] The following improvements were introduced in "Era Erm Framework" mod:
  
  - i^battle_round^ keeps current valid round (same as in OnBattleRound event) and can be used throughout battle triggers
  and in OnBattleRound condition like !?FU(OnBattleRound)&i^battle_round^=0 instead of v997.

[+] Added the following functions to "Era Erm Framework" mod:

  !?FU(NewIntArray);
  ; Creates and returns trigger local array of integers.
  ; Alternative function arguments:
  ;  (?result)                     The result array will have 0 items.
  ;  (size)/(?result)              The result array will have (size) items with 0 value.
  ;  (size)/(fillValue)/(?result)  The result array will have (size) items will (fillValue) value
  ;  You may optionally specify (storageType) parameter after (?result) argument with value like M_STORED or M_TEMP.
  
  !?FU(NewStrArray);
  ; Creates and returns trigger local array of strings.
  ; Alternative function arguments:
  ;  (?result)                     The result array will have 0 items.
  ;  (size)/(?result)              The result array will have (size) items with ^^ value.
  ;  (size)/(fillValue)/(?result)  The result array will have (size) items will (fillValue) value
  ;  You may optionally specify (storageType) parameter after (?result) argument with value like M_STORED or M_TEMP.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
24.10.2020 01:32
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #2

Пост обновлён.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
25.10.2020 05:09
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #3

для форума, иногда без доступа к ПК, тож будет полезно иметь базу констант из 9999 era - consts.erm Yes
UNIVERSAL (Click to View)
ERM COMMANDS (Click to View)
MOUSE CLICKS (Click to View)
MOUSE CLICK SUBTYPES (Click to View)
PLAYER BITS (Click to View)
RESOURCES (Click to View)
MONSTER FLAGS (Click to View)
HERO SKILLS (Click to View)
SPELL SCHOOLS (Click to View)
HERO ARTIFACT SLOTS (Click to View)
ARTIFACTS (Click to View)
OBJECT TYPES (Click to View)
ERM FLAGS (Click to View)
WOG OPTIONS (Click to View)
BATTLE TYPE FLAGS (Click to View)
BATTLE ACTIONS (Click to View)
GAME LIMITS (Click to View)
CALLING CONVENTIONS (Click to View)
UN:C DATA TYPES (Click to View)
DATA TYPES (Click to View)
DEPRECATED (Click to View)
25.10.2020 20:05
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #4

Bes, это ты ловко придумал, спасибо.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
25.10.2020 21:44
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #5

добавь в раздел ERM FLAGS две строки для 1000/-1000 (человек/ИИ)
28.10.2020 05:52
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #6

!#DC(ERM_FLAG_IS_HUMAN) = 1000; уже есть, для ИИ будет "-(ERM_FLAG_IS_HUMAN)".


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
28.10.2020 06:12
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #7

понял, с минусом не догадался, спасибо
28.10.2020 06:24
Visit this user's website Find all posts by this user Quote this message in a reply
slater777 Offline

Posts: 136
Post: #8

Подскажите, пожалуйста, где можно узнать статус переменных: вакантные и занятые.
UPD: неактуально, ужё всё нашёл.
(This post was last modified: 28.10.2020 21:21 by slater777.)
28.10.2020 21:14
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #9

Era Erm Framework не использует воговских глобальных переменных. А именованные нужно префиксовать аббревиатурой мода.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
29.10.2020 00:38
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #10

9999 key codes:

А ещё игра не перехватывает LALT, а на RALT выдаёт сразу 17 и 18

Так ли оно должно быть? Вот я сомневаюсь, если честно.


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
11.01.2021 15:01
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #11

daemon_n, левый ALT не ловится, подтверждаю. Он работает как модификатор только. Клавиша Alt Gr — это не просто правый альт, а CTRL + правый ALT
https://stackoverflow.com/questions/3575...ng-vk-menu
https://en.wikipedia.org/wiki/AltGr_key

Сам не зал, но разную реакцию давно приметил.

Синоним KEY_TILDE добавил, спасибо.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
11.01.2021 16:35
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #12

Сделаю глобальные переменные для состояния кнопок с возможностью различения.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
11.01.2021 17:48
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #13

9999 era - consts.erm
строка 1639;
Почему "COMBAT", а не "BATTLE"? - ориентируюсь по IDA


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
09.02.2021 12:14
Visit this user's website Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 2271
Post: #14

(09.02.2021 12:14)daemon_n Wrote:  Почему "COMBAT", а не "BATTLE"? - ориентируюсь по IDA

В разных IDA-базах этот менеджер может назваться по-разному. Родное название (от NWC) - combatManager. В базе от WoG используются свои имена, свой жаргон.
09.02.2021 12:24
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #15

XEPOMAHT, вот оно что... - спасибо за объяснения!


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
09.02.2021 13:26
Visit this user's website Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group