Zur13
Posts: 223
|
(03.03.2020 12:12)XEPOMAHT Wrote: (03.03.2020 05:02)Berserker Wrote: И что значит «инвертируется», если позиция монстра, судя по описанию, всегда направлена к стороне его героя (левая - правая). Пример бы.
Думаю, что имеется в виду гендерная ориентация монстра (т.е. в какую сторону отзеркален def, в какой стороне у монстра мэ и жо и т.д.). Изменяется содовской функцией (например, можно сделать, чтобы все монстры на поле боя смотрели только в одну сторону или наоборот - чтобы монстры атаковали друг друга задницами ), проверяется в структуре стека (в MoP это Структура_стека.Ориентация).
@Berserker Да монстр может наступить на две мины сразу двигаясь сверху вниз или снизу вверх, в этом случае они срабатывают последовательно.
С примером посложнее так как в статике, когда монстр просто стоит на поле боя всё работает верно, BM:P возвращает клетку под задней частью дефа монстра и передняя вычисляется путем +1 или -1. Проблема возникает в динамике, при движении деф монстра может несколько раз отзеркаливаться, например если монстр обходит препятствие, и когда деф отзеркален BM:P возвращает клетку под задней частью отзеркаленого дефа, а значит передняя часть будет в обратной стороне, к примеру не +1, как при статике, а -1.
Вот как-то так
@XEPOMAHT а это можно как-то из скриптов проверить для стека с заданным стекайди который от 0 до 41?
(This post was last modified: 03.03.2020 13:21 by Zur13.)
|
|
03.03.2020 13:18 |
|
XEPOMAHT
Posts: 2356
|
(03.03.2020 13:18)Zur13 Wrote: а это можно как-то из скриптов проверить для стека с заданным стекайди который от 0 до 41?
Главная беда ERM в том, что оно не содержит готовой команды для получения адреса структуры стека (как и адресов других структур), что затрудняет прямое считывание и изменение данных стека с помощью ERM. Вот весь копеечный код, который нужен для получения структуры (из исходников ВоГ):
Code:
bm = combatManager;
if (mn == -1)
if (CurrentMon)
mon = CurrentMon;
else
mn = M2B_GetMonNum(bm);
if (mn >= 0)
mon=&bm[0x54CC+0x548*mn];
Только сделать его отдельной ERM-командой увы никто не захотел.
|
|
03.03.2020 13:50 |
|
igrik
Posts: 2819
|
(03.03.2020 13:18)Zur13 Wrote: а это можно как-то из скриптов проверить для стека с заданным стекайди который от 0 до 41?
Можно. Ищи в теме по UN:C.
Смещение для данных о повороте стека: stack->0x44
game bug fixes extended.dll || My Plugins || My GitHub
|
|
03.03.2020 14:13 |
|
igrik
Posts: 2819
|
|
03.03.2020 15:07 |
|
Zur13
Posts: 223
|
(03.03.2020 15:07)igrik Wrote: Тема UN:C
Спасибо, тема не находится поиском по форуму по запросу UN:C. А там есть и решение второй моей проблемы по проигрыванию анимации стека. Сегодня попробую оба решения.
|
|
03.03.2020 15:33 |
|
Berserker
Posts: 16657
|
|
03.03.2020 20:34 |
|
Zur13
Posts: 223
|
(03.03.2020 14:13)igrik Wrote: (03.03.2020 13:18)Zur13 Wrote: а это можно как-то из скриптов проверить для стека с заданным стекайди который от 0 до 41?
Можно. Ищи в теме по UN:C.
Смещение для данных о повороте стека: stack->0x44
Код для проверки в какую сторону "смотрит" деф на поле битвы, на основе кода подсказаного igrik, вдруг кто-то будет искать готовое решение:
Code:
!!UN:C6919200/4/?y10; [y10 combat manager]
!!VRy1:Sx1 *1352 +21708 +y10; [y1 TMP address of memory struct of x1 stack]
!!VRy1:Sx1 *1352 +21708 +y10 +68; [y1 address of x1 stack face direction]
!!VRy2:S0; [y2 = 0]
!!UN:Cy1/1/?y2; [y2 face direction (0: faced left side; 1: faced right side)]
Возможно кто-то может помочь еще вот с такой проблемой. Мне нужно как-то отключить механику заклинания "мина", которая показывает и деактивирует вражеские мины если в армии героя есть существа для которых тип почвы на которой происходит битва является родным. Т.е. если битва происходит на траве и в армии вражеского героя есть существа из замка, например копейщики, то мины становятся бесполезными, они видимы вражескому герою и не срабатывают. Заклинание минного поля даже нельзя кастануть в этом случае, но я говорю про мины поставленные через !!BM:Q.
|
|
10.03.2020 22:22 |
|
Awesomealldays
Posts: 29
|
(30.01.2020 23:12)Berserker Wrote: (30.01.2020 18:45)Awesomealldays Wrote: Хоту удалил, там мистицизм 5\10\15, поместье 250\500\1000.
Awesomealldays, мистицизм чем именно плох?
2\3\4 -> 5\10\15.
2\4\6 норм было бы.
Vk.com/wa3analys Warcraft 3 custom maps, анализ карт и игры.
|
|
12.03.2020 14:17 |
|
Berserker
Posts: 16657
|
|
19.03.2020 00:00 |
|
V_Maiko
Posts: 610
|
Berserker, Do I really need to write an event for something that can easily be done with the object editor? So it is true that the types of objects are made for the terrain that was created and I cannot generate them even if I put other attributes that correspond where they should be placed?
|
|
19.03.2020 00:09 |
|