Current time: 14.04.2024, 00:08 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Школа ERM 2
» ERM 2.0 для ERA III
Author Message
SergOz Offline

Posts: 1287
Post: #121

Quote:Тут главное понять, то переменные с суффиком Ptr (Pointer) хранят индекс y-переменной элемента массива.
Berserker, да это я понял ещё по скрипту с палатками, а вот дальше...
Учиться тяжжело, а переучиваться - ещё труднее
Новый афоризм. На тех же условиях


Карта-мод "Война на Холсте"
(This post was last modified: 22.11.2020 02:25 by SergOz.)
22.11.2020 02:16
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #122

SergOz, можешь нажать F11 и посмотреть код в Debug\Era\Scripts. Сравнить для себя, чтобы понимать разницу.


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

Posts: 1287
Post: #123

Berserker, есть ли разница в написании:
и
и если есть, то как лучше?


Карта-мод "Война на Холсте"
(This post was last modified: 05.12.2020 03:25 by SergOz.)
05.12.2020 03:24
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #124

отвечу за него, но в режиме "тебя не спрашивали"
Первый вариант удобнее, когда есть ф-ция, с параметрами, и их сразу есть смысл описать за ранее, чтобы потом не думать как назвать вновь используемый x@
А так, как по мне, если код пишется постепенно и он мал (умещается в окне без длительного скроллинга), нет смысла тратить время на VA-шки. В других же случаях будет уместно и удобнее видеть сразу весь перечень имён локалок, что даст быстрое понимание какие переменные нужны для интеграции в этот кусок кода чего-то другого и т.п.
05.12.2020 03:31
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1287
Post: #125

Bes, да, про наглядность (удобство) переченя всех переменных в !#VA, в начале скрипта я сам думал и "лишние" движения вполне оправданы. Но, меня интересовала чисто техническая сторона, хотя думаю разницы нет, но хочу утвердиться в своей мысли.


Карта-мод "Война на Холсте"
05.12.2020 03:43
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #126

технически точно нет разницы, даже не знаю что ты хотел в таком ключе услышать?
05.12.2020 04:01
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1287
Post: #127

(05.07.2020 19:50)Berserker Wrote:  
Code:
; (-someStr) удалит переменную someStr.
Речь шла об z-переменных.
И как правильно именовать z-1...z-10;


Карта-мод "Война на Холсте"
(This post was last modified: 05.12.2020 05:11 by SergOz.)
05.12.2020 05:08
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #128

SergOz, разницы нет. Предпочтителен вариант объявления по месту использования, за исключением массивов и аргументов функций.
На массивы нужно иметь возможность визуально обращаться внимание. А аргументы функции выполняют роль документации и страхуют от ошибок, поскольку там важен порядок объявлений. Первая переменная будет привязана к x1, вторая к x2 и т.д.

В целом же в практике большинства ЯП пришли к тому, что объявлять нужно по месту, не перегружая мозг и его ограниченную контекстную память.

Quote:!$OB30/5/0;
; вот здесь мне нужно удалить переменную (goldRed). Как это сделать?
!!IF:M^%(goldRed)^;
Там её уже нет. Привязка имён переменных к локальным y1..y100 и z-1..z-10 простирается от начала !?/!$ до следующего !?/!$.


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

Posts: 16471
Post: #129

Когда ты объявляешь локальную z-переменную, она уже привязывается к одной из z-1..z-10.


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

Posts: 1287
Post: #130

Хорошо, а внутри одного триггера?
я про удаление локальной z переменной


Карта-мод "Война на Холсте"
(This post was last modified: 05.12.2020 05:21 by SergOz.)
05.12.2020 05:17
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #131

А зачем тебе удаление/освобождение? Не хватает 10 строк если только.
Пожалуйста.


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

Posts: 1287
Post: #132

Спасибо, Berserker, я всё-всё-всё понял Thank_you


Карта-мод "Война на Холсте"
05.12.2020 05:31
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #133

Berserker, чёт любопытно стало.
Как всегда, без тестов уповаю на твою осведомлённость работы ЕРМ2

А написание строки с инструкцией не прерывает тело триггера, локальные переменные таким образом не сбросятся?
06.12.2020 01:28
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16471
Post: #134

Нет, инструкции выполняются на этапе трансляции ЕРМ в промежуточное представление. Как парсер по тексту проходит, так и выполняет. А !! команды добавляются в последний тригер. Потому, хоть это и коряво, инструкции могут быть где угодно.


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

Posts: 4338
Post: #135

А что за новая SN:B команда?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
09.01.2021 15:51
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