EviLInside #1 - 2 дня назад 1   

» WarCraft 3 Reforged / Special Effect Height + рельеф (часть вторая)

МрачныйВорон:
Тут надо понять как деформируется рельеф по высоте. Проще брать сеточкой (карта состоит из клеток тайлов), как рассчитываете размер шага брать? мин шаг - 32 или 128?
1 берете заводите темп глобалку maxH, и координаты XH YH. в ней записываете высоту центра окружности и координаты XH YH
2 Можно взять квадрат, который вписан в окружность. или правильно сказать окружность вписанная в квадрат. путаю эти понятия. далее циклом пробегаете по каждой точке квадрата. и сравниваете размер высоты с maxH.
Цикл происходит так (описываю примерно): сначала от левого верхнего угла квадрата берем точку, и проверяем
2.1 лежит ли точка в окружности, это надо сравнить: расстояние этой точки от центра окружности <= radius круга. Если меньше значит попала точка, иначе если больше расстояние, значит точка не лежит в круге (значит лежит уголке квадрата), следовательно, высоту не имеет смысла проверять.
2.2 проверяем высоту. сравниваем высоту выбранной точки, если оно больше чем maxH, значит берем эту высоту и записываем в maxH и координаты этой точки в XH YH
А да не рассказал как цикл происходит. От левой границы квадрата смещаем точку справа шагом 32, короче смещается координата X - и расстояние и проверяем высоту. и так до сих пор пока не упрется в правую границу. Потом опускаем координату Y на 32, и снова двигаем от левой стороны до правой, и так до сих пор пока не упрется в нижнюю границу и цикл завершаем.
Cмысл я наверное понял - берём квадрат в который вписан мой круг, прогоняем по всем координатам квадрата, отсеиваем те места где круг не задевает квадрат, там где квадрат наложен на круг записываем высоту каждой "точки/(тут я как понял точки не будут каждая проверятся с шагом 1, а шаг типо 32 брать надо(ну если меньше можно то лучше). в глобалку, сверям меньше ли полученная высота которая записана в глобалке с новой высотой ,если появляется высота больше чем записано в глобалке ставим в глобалку новую более высокую высоту :) .
И тут самое интересное мои познания функций существующих для совершения некоторых действий которые описаны - очень скудные, да и правильность их использования что бы не через задний проход структурировался код и кучей лишних действий. Поэтому если не сложно и у кого то есть времени немного, сделайте на примере любой аое абилке.

Вообще мне кажется можно сделать функцию типо :
function GetTerrainMaxZinRadius takes "точка" , takes "радиус окружности от этой точки" return "МаксВысота в этом радиусе от точки"
И выложить её в статьях, кому то да пригодится возможно...Эх мечты.

*в этом круг от точки.
EviLInside #2 - 2 дня назад 0

» WarCraft 3 Reforged / Special Effect Height + рельеф

Bergi_Bear:
EviLInside, тебе кажется =) потому что там десятки кругов точка сделала, оно соответствует тому что ты выставил?
Ну я поставил число на бум, думал раз двигается значит работает, да ты прав
EviLInside #3 - 2 дня назад (отредактировано ) 0

» WarCraft 3 Reforged / Special Effect Height + рельеф

и в call BlzSetSpecialEffectPitch( Leffect, 45.00 ) нельзя передать угол, от требует радианы, поэтому нужен конверт, я же писал пример там math.rad
у меня всё вращается нормально
EviLInside #4 - 2 дня назад 0

» WarCraft 3 Reforged / Special Effect Height + рельеф

Никак не соображу как сделать что бы если мой Ltargetpoint ( это центр этой АоЕ абилки во время применения) находится на нижней части, но кольцо задевает ту что выше, делать высоту всех эффектов в кольце относительно той которая выше.
Прикрепленные файлы
EviLInside #5 - 3 дня назад 0

» WarCraft 3 Reforged / Тормозит код (или комп?)

Bergi_Bear:
Где у тебя момент, что юнит вышел из радиуса? вот тут?
--
else
    call GroupRemoveUnit(g,f)
    call FlushChildHashtable(udg_hash,GetHandleId(f))
--
оно не должно лагать, тем более на периоде 1 секунда
Вроде пофиксил

call GroupRemoveUnit(gn,f) Было g , надо gn
call FlushChildHashtable(udg_hash,GetHandleId(f))


quq_CCCP:
Какая то странная реализация, ауру сделать можно гораздо проще,
Ну это я её так назвал в этой теме, это же и не аура вовсе.
EviLInside #6 - 3 дня назад 0

» WarCraft 3 Reforged / Тормозит код (или комп?)

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

Bergi_Bear:
В коде ничего подозрительного не вижу, надо продебажить лагающее место
Это не для моих познаний :) Я самоучка и не разу не программист
EviLInside #7 - 4 дня назад 3   

» WarCraft 3 Reforged / Уменьшение урона от магии - есть ли такая способность в РО?

Благословение Элуны (у лучниц ночных эльфов) попробуй.
EviLInside #8 - 2 года назад 0

» StarCraft 2 / CUSTOM UNIT STATUS FRAME НЕ МЕНЯЕТСЯ.

Я не упомянул , но в XML тоже не меняется выдаёт ошибку, сам тоже думал что баг. Но вопрос в том что если это общий баг то у всех сейчас кто постоянно обновляет и держит версию в актуале должны иметь такую же проблему ) Как быть то.
EviLInside #9 - 3 года назад 0

» StarCraft 2 / Damage unit (from unit)

Спасибо, я тебя понял, но вот поточнее бы узнать что это за effect/behavior и тп, может кто в курсе?))
EviLInside #10 - 8 лет назад 0

» World of WarCraft / WoW патч 4.3.2

сегодня жара была, с патчем багнулись ретро палы, по 100-200+к дпс выдавали в Душе дракона. Будто на пиратке ))
EviLInside #11 - 12 лет назад 1   

» World of WarCraft / EPIC Frostmourne

Будем ждать сапоги из шкуры Тралла, как раз под цвет глаз зелёненькие)
EviLInside #12 - 13 лет назад 1   

» Murloc Expansion / Главная страница

Я давно за форумом не следил , скажите когда проект готовится к выходу?
EviLInside #13 - 14 лет назад 1   

» WarCraft 3 Reforged / DotA 6.74c

За*бал он со своими дотами, моск ипёт.
EviLInside #14 - 14 лет назад 1   

» WarCraft 3 Reforged / DotA 6.74c

и снова дота.....