Current time: 05.07.2022, 05:03 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA II
» WoG Era 2: Русская и Английская версии
Author Message
Bes Offline

Posts: 5386
Post: #4756

Berserker, можно ли получить порядковый номер определённого символа в текстовой переменной?
Я хочу вклиниваться в предложение неизвестного заранее по содержанию туда, где появится определённый символ.
Известные мне команды над текстом базируются на том, что пользователь знает номер символа в строке.

Вариант поиском циклами через посимвольное сравнение каждой позиции строки с искомым символом - это на крайний случай. Я надюсь, что есть более простой способ, неизвестный мне Unsure
02.08.2020 01:32
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15834
Post: #4757

Bes, есть, именно через поиск символа в цикле. Можно вынести в функции вида FindChar.
Archer30, sorry, I didn't change anything in werewolves mechanics. You're right about storm elementals description, but is ability not implemented or wrong description left? I didn't ask H3 developpers on that )


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

Posts: 5386
Post: #4758

Berserker, а так надеялся что в era.dll есть встроенная ф-ция, наподобие таких вариантов 4
ладно, буду писать свои первые циклы через !!re Beee
Ab это я сам себе тут работу поддаю, опять из-за стремления к прекрасному

P.S. а что делает FireEvent, в двух словах буквально?
02.08.2020 02:58
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15834
Post: #4759

Генерирует новое событие, на которое может подписаться любой плагин или сама Эра. По сути там имя события + указатель на произвольную структуру данных.
Успехов тебе с функцией. Напиши, если возникнут трудности.


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

Posts: 5386
Post: #4760

спасибо, понял.

А вот с моей затеей облом.
Я хотел искать символ ;
Так вот, ERA2.9.14, запустил чистую era в полноэкранке, словил пару странных фишек и один вылет из-за этого:
  • через диалог ввода пишу
    Code:
    VRz1:S^1;2^;IF:M1/1
    естественно, ругнулся движок, что неправильная команда, а следом и ругнулся ExecErmCmd и предложил дамп записать. Диалог вызываемый мной игра показала пустой, в лог игры сообщение не прошло (я так понял тож пустоту послало)
  • иду дальше, пишу
    Code:
    VRz2:S^1;2^;IF:M1/1
    опять ругнулись, НО в диалоге моём весь введённый код показало, вместе с двумя символами ;. В лог игры так же всё целиком прошло, без проблем
  • дай думаю извращусь... пишу
    Code:
    VRz2:S^1;2^;IF:M^%Z1^
    Ругается только ExecErmCmd и всё, дальше появляется мой диалог с рекурсией текста из z1 (естественно), но обрывается текстом "2^;IF:M^(null)1^^^^^" и это же попадает в лог игры.
    Хотя если ту же рекурсию провернуть, но без ; в строке, то обрыва такого нет, просто весь диалог забит повторением текста, ошибок нет, и та же каша в лог идёт.
  • Ок. думаю я, дай-ка через ассоциативную память зайду...
    Code:
    SN:W^test^/^;^;IF:M^%S(test)^
    Вылет игры, причём окошко было в винде, так что не сразу понял почему всё не работает а окна вылета игры нет
    архив
Короче, я собственно чего так завёлся - почему-то эта злополучная ; таки может отображаться в диалогах, а проблема в ограничениях самого интерполятора.
Berserker, могу я как-то таки без ошибок в процессе ЕРМ-циклов сделать поиск символа ;, и уже перед выводом в окно удалять его?
или мне тупо забить с моей глумной затеей? (Click to View)
02.08.2020 04:48
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15834
Post: #4761

Bes, просто не используй ";" при передаче в ExecErmCmd. Эта функция разбивает изначально текст на команды по ";" без анализа содержимого. Может быть, исправлю в следующих версиях.


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

Posts: 5386
Post: #4762

Berserker, а как я пойму о начале другой команды, кроме как используя ; Unsure у меня больше нет вариантов
03.08.2020 00:33
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 3993
Post: #4763

Code:
[+] Added SN:H subcommand "spec" for applying custom hero specialty names.
SN:H^spec^/hero/short name (0), full name (1) or description (2)/hint

Berserker, а где посмотреть весь текст? С кодом ниже имеем лишь "hint3" на ЛКМ/ПКМ.


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
03.08.2020 00:43
Visit this user's website Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5386
Post: #4764

daemon_n, а какой ещё есть текст у героя кроме этих трёх позиций?
03.08.2020 00:56
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 3993
Post: #4765

(03.08.2020 00:56)Bes Wrote:  daemon_n, а какой ещё есть текст у героя кроме этих трёх позиций?

Так где его встретить? 1 и 2 позицию?
Но меня смутило иное - название (hint 1) специализации нигде не посмотреть - получается, его надо писать в расширенное (hint 3) описание - так?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
03.08.2020 01:10
Visit this user's website Find all posts by this user Quote this message in a reply
wessonsm Offline
Moderators

Posts: 733
Post: #4766

daemon_n, это то, что в текстовике herospec.txt.
1-ю позицию можно увидеть в окне выбора стартового героя для сценария. Правда, erm-ом там название специализации не изменить.
2-я позиция кажется нигде в игре не используется.
То есть, похоже, что в скриптах есть смысл менять только описание (hint3).
03.08.2020 01:34
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5386
Post: #4767

daemon_n, нет, наоборот, используется только hint1 и hint3 в игре
hint2 не используется

P.S. вот wessonsm уже это и сказал
(This post was last modified: 03.08.2020 01:43 by Bes.)
03.08.2020 01:42
Visit this user's website Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 839
Post: #4768

Speaking of SN:H^spec^, is Berserker planning on updating Nagash and Jeddite's spec description (w/o wogification)? Their description are still the ones from SoD in Scenario Screen. Rolleyes


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 03.08.2020 02:10 by Archer30.)
03.08.2020 02:08
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 3993
Post: #4769

Bes, тогда это надо и внести в справку, а то чейнджлог эры только путает


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
03.08.2020 02:32
Visit this user's website Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5386
Post: #4770

daemon_n, так есть же?!...
ERM-Help Wrote:H^spec^/#1/#2/^текст^
H^spec^/#1/#2/?z#
Настроить свой текст для специализации героя
    #1 – герой
    #2 – тип текста для специализации:
    0 – название
    1 – краткое описание (не используется в игре)
    2 – полное описание
116
03.08.2020 03:45
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-2022 MyBB Group