Current time: 03.05.2024, 02:04 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Ваши вопросы по ERM-скриптам
Author Message
SergOz Offline

Posts: 1294
Post: #6181

Berserker,
спасибо за подсказку, я и сам думал так сделать, но надеялся сэкономить время...121


Карта-мод "Война на Холсте"
24.02.2020 19:27
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1013
Post: #6182

Berserker спасибо Вам за готовый код по иммунитету от снятия заклинания...

Буду пробовать потом Sm

Я хотел вот такой код сделать, чтобы у всех врагов при нападении на меня (красного игрока) давало всей армии единоразово по 3 защиты, кроме меня (независимо от того я на них нападу или они на меня)

это действует на всех и на меня в том числе, а я не могу понять как можно меня исключить и чтобы только это было у всех врагов, кроме меня
пробовал разное если это
то ничего не происходит Bad

Quote:попробуй вместо выхода из функции !!FU&y1=0:E; поставить условие на выполнение дальнейшей команды/команд.
Например: !!BG&y<>0:A?y2;
- SergOz, я не очень понял как в отдельности выйти красным игроком со скрипта, при этом чтобы для врага скрипт прочитался..

!!BG&y1<>0:N?y2; - я не думаю что может что-то измениться, если будет выполняться другая команда Bad Компьютер уже не так прочитывает условие Bad

Так пытался даже
и ещё многое другое, но ничего Bad
(This post was last modified: 24.02.2020 19:43 by fatsawhorse.)
24.02.2020 19:36
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16502
Post: #6183

fatsawhorse, тебе нужно выходить, если отряд не принадлежит красному игроку. Командой !!BA:O?y1/?y2 ты узнаёшь хозяев левой и правой стороны, но ведь нужно сперва узнать, к какой стороне принадлежит отряд, так ведь? Если к левой, то проверять по y1. Если к правой, то по y2. Либо вычислить индекс переменной, в которой хранятся хозяева сторон, по самой стороне:

Скажем, есть код.
!!BA:O?y50/?y51

Тогда индекс переменной со значением хозяина стороны можно рассчитать как 50 + Сторона(0..1). Получим 50 или 51.
!!VRy52:S50 +сторона_монстра;
Далее нужно обратиться к переменной y с индексом, хранимой в другой переменной.

yy52 вычисляется так:

- вычислить y52 (это 50 или 51)
- получить значение переменной y50 или y51 соответственно. Здесь y52 выступает своего рода указателем, адресом, номером, если угодно.


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

Posts: 1013
Post: #6184

Спасибо Berserker, вроде бы понятно стало, хотя слишком заумно написано для меня Bad... Сейчас попробую разобраться в написанном и понять что надо сделать и соответственно попробую это проделать...
(This post was last modified: 24.02.2020 20:05 by fatsawhorse.)
24.02.2020 19:49
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #6185

SergOz, открывай через MMarchive файл Data\Heroes3.snd - и вот тебе список звуков.
Звуки заклинаний обычно называются также как и заклинания - MIRTH, DISEASE и т.д.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
24.02.2020 21:19
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16502
Post: #6186

fatsawhorse, представь, что y1..y100 — номера клеток тетради.
Code:
[-][-][-][-][-][-]
y1 y2 y3 y4 y5 y6
Допустим, ты записал в y5 хозяина левой стороны, в y6 — хозяина правой
Code:
[-][-][-][-][0][-1]
y1 y2 y3 y4 y5 y6
Слева — красный (0), справа — нейтралы (-1).

Теперь ты получаешь номер отряда на поле боя. Допустим, 19.
Приводишь его к стороне боя (0..1) путём деления на 21, ведь максимум 21 отряд на сторону.
19 : 21 = 0. (целочисленное деление без остатка).
То есть сторона — ЛЕВАЯ.

Далее тебе нужно получить номер y-переменной, в которой хранится хозяин нужной нам стороны.
Code:
[-][-][-][-][0][-1]
y1 y2 y3 y4 y5 y6

Этот номер: 5 + стороная отряда (0..1). Получим 5 и запомним в y1 его.
Code:
[5][-][-][-][0][-1]
y1 y2 y3 y4 y5 y6

Затем нужно прочитать переменную с индексом, хранящейся в другой переменной.
yy1 = y5 = 0 (красный игрок)
Если бы y1 была равна 6, то есть монстр был на стороне нейтралов, yy1 вернуло бы -1, то есть НЕТ ХОЗЯИНА.

Algor, это лайфхак какой-то…Beee


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

Posts: 1294
Post: #6187

Algor, спасибо, а MMarchive это где?


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

Posts: 16502
Post: #6188

SergOz, Tools\MMarchive или Стартовое Меню Эры - Редактор snd/lod/pac


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

Posts: 1294
Post: #6189

Berserker
Спасибо, всё получилось. И радует, что там же сразу можно прослушать выбранный звук. Stinker

P.S. А можно ли в эту таблицу заносить свои файлы и потом использовать?


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

Posts: 16502
Post: #6190

SergOz, это не таблица, просто архив. Можете создать свой snd-архив и поместить в папку своего мода в Mods\ваш_мод\Data. Эра загрузит архив автоматически.


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

Posts: 1294
Post: #6191

Berserker, я понял. Спасибо.
Чем больше узнаю об Эре, тем больше впечатляет.
Всем Эра-создателям огромнейшая благодарность и "nizkiy poklon".
Ваше здоровье! Laie_95


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

Posts: 16502
Post: #6192

SergOz, спасибо ))


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

Posts: 1013
Post: #6193

Здравствуйте..

Berserker спасибо за совет.. Всё получилось как Вы и сказали..

Quote:fatsawhorse, тебе нужно выходить, если отряд не принадлежит красному игроку. Командой !!BA:O?y1/?y2 ты узнаёшь хозяев левой и правой стороны, но ведь нужно сперва узнать, к какой стороне принадлежит отряд, так ведь? Если к левой, то проверять по y1. Если к правой, то по y2. Либо вычислить индекс переменной, в которой хранятся хозяева сторон, по самой стороне
- после проверки стороны и часовых подборок, проверок и мук сумел с горем пополам выполнить такое условие (с трудом сообразил что именно нужно мне сделать.. Для меня это слишком заумно написано Bad ) и всё прекрасно получилось..

Условие сработало и если красный, то выходит из скрипта..

Я бы никогда не додумался сделать подобным образом и до сих пор мне многое тут не очень понятно. Создается впечатление, что написано это программистом или преподавателем математики и если бы не примеры Ваши, то я бы не смог никак понять о чем Вы написали Bad

Спасибо за совет...
(This post was last modified: 25.02.2020 17:55 by fatsawhorse.)
25.02.2020 17:52
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16502
Post: #6194

fatsawhorse, на здоровье. ЕРМ всё же язык программирования, а программирование, как и любая другая область знаний, включает в себя определённые термины, концепции, приёмы, принципы. Постараюсь излагать проще.


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

Posts: 4338
Post: #6195

Хочу узнать насчёт именовванных функций и переменных, точнее, важен ли регистр в их создании:
равно?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
25.02.2020 19:30
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