21

» WarCraft 3 / повернуть здание через мемхак

Мне кажется,просто юниту дать внешность здания, а потом дать команду повернкться лицом куда то там(
21

» WarCraft 3 / Передача локальной переменной

8gabriel8:
Если триггер один, там же просто указывается локалка, как если бы это была глобалка. Разве нет?
Он не хочет глобалки вообще.Мне кажется ему нужно передать значение локальной между триггерами
21

» WarCraft 3 / Телепортируется здание

KaneThaumaturge:
SсRealm, ничего не вызывает утечек, если правильно это делать.
Нет,ну если создавать точку,потом ее удалять,то не будет,но он же так все-равно не сделает.
21

» WarCraft 3 / Телепортируется здание

Ну тут все логично, когда один юнит изчезает,другой появляется на его месте и естевственно ему никак не появиться ,если там стоят другие юниты.
Есть потрясный вариант заранее создать второе здание,потом скрыть его командой hide,сделать неуязвимым и разместить где - нибудь в углу карты и когда ты убираешь первое на его место переместить другое, сделать видимым,уязвимым.Профит!
Кстати этот метод лояльнее,потому что перемещаемые юниты никак не влияют на карту,а вот те,которые создаются во время игры вызывают утечку.Дело хозяйское.Удачи тебе дружок!))
Заранее, оговорюсь,чтобы не было холивара. Вместо здания мы делаем юнита с графикой здания и лишаем его возможности ходить
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
если моих наработок достаточно, то на, если что спрашивай
модель переворачивалка внутри
а ещё там код на поднятие высоты, иначе юнит носом под землёй
Спасиба)
21

» WarCraft 3 / Проблема с редактором карт на 24 игрока

Bergi_Bear:
4 вопрос за месяц где снова ответом является "фиксированные параметры клана"
(могу найти предыдущие 3, но лень)
И тут этот чувак : Ха ха ха ха ха ха
Загруженные файлы
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
SсRealm, но ты так и не ответил, что конкретно тебе нужно, теоретически можно и вращать юнита, кувыркать, держать вверх ногами, ну такой продвинутый теликинез, как я понял не надо чтобы поднимал феникс
Мне нужно
  1. вращение юнита вверх тормашками
  2. Просто возможность вверх ногами сделать
Дальше я уже сам буду мутить.Простоя не пойму,как вы там мутите и как редактируете mdx файл
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
SсRealm, Какова цель? получить готовую наработку? узнать как и успокоится? или же тебе рассказать как всё делается?
Понимаешь,мои наработки в варкрафте.к сожалению кажутся детскими,по сравнению с вашим джассом. Карта у меня интересная,но слишком уж много всяких багов,недоделок,одним словом gui.
Я никогда не задаю вопросов сообществу,от балды.Я мечтал о трехглавом герое и теперь я близок к этому.Сделать героя мотоциклиста я уже наверное смогу даже на триггерах( который с люлькой отстреливается)
Вот,я на днях посмотрел в нормальном качестве мстителей,которые с Таносом и теперь мне не дает покоя герой со способками как у Алой ведьмы,то есть девка ,которая кидает розовую фигню и с противниками происходит разная случайная хрень.Но одна эта способка - это слишком мало.
Вторая это будет как раз вот эта фигня как у феникса,если ,конечно я смогу ее воспроизвести.
А если я что то спросил и не отвечаю, значит я где то там под Челябинском впихиваю в свою карту новую идею или героя
Вот как то так(
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
Steal nerves, много кадров чёт мне хватило этого
Helper "dummy spin" {
	ObjectId 0,
	Rotation 2 {
		Hermite,
		GlobalSeqId 0,
		0: { 0, 1, 0, 0 },
			InTan { 0, 1, 0, 0 },
			OutTan { 0, 1, 0, 0 },
		80: { 0, 1, 0, 0 },
			InTan { 0, 1, 0, 0 },
			OutTan { 0, 1, 0, 0 },
	}
}
на мгновенный поворот, он длится столько, сколько длится длительность баффа
я не знаю что такое InTan и OutTan но меня это не сильно волнует, юнит уже вверх ногами - результат достигнут
Господа,через какую прогу файл редактируете?
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
FootUpAndGiveMeMoney
Короче,как я понял они там на хайве приклепляют на основе способки торнадо к герою,пока один умник не догадался саму торнаду переделать чтобы она боком вышла?
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
SсRealm, см комментарии выше там мне Steal nerves, дал всю инфу, щас пробую убрать вращение, чтобы зафиксировать вверх ногами
Давай)
21

» WarCraft 3 / Способность феникса в старафт 2

Bergi_Bear:
Сделал Y вращение теоретически получилось перевернуть вверх ногами юнита, хотя само вращение так себе
гифка
Каким образом?
21

» WarCraft 3 / Способность феникса в старафт 2

ну, перед тем,как закрыть тему, я как ̶В̶о̶н̶ю̶ч̶и̶й̶ Обычный триггерщЫк только могу вспомнить,что персонажа запросто можно поварачивать лицом к юбому объекту и менять высоту( тут даже торнадо отпадает)
Осталось только придумать,как разворачивать его кверх ногам и дело можно закрывать
21

» WarCraft 3 / Способность феникса в старафт 2

Steal nerves:
Hate, на мемхаке делал такое вращение. Получилось интересно. Помогал мне Драколич.
поворот на мемхаке
//Масштабирование и повороты текущего юнита
//Основные параметры:
//facing - угол поворота юнита в радианах.
//flag - отвечает за масштабированием (1 - включить масштаб/0 - выключить). хотя масштаб можно поменять близзардской нативкой SetUnitScale
//Короче здесь при включенном flag не только увеличивается в размере модель, но и одновременно поворачивается. При выключенном флаге поворачивается модель.

//три параметра r1,r2,r3 - углы в радианах, влияют на модель. В частности, на масштаб, и на повороты модели (короче модель юнита можно накренить набок, или повернуть вверх дном и разное).  

//может показаться, что facing влияет на повороты r1,r2,r3. 
//facing - поворот юнита: морда, куда смотрит и двигается юнит, и совершает атаки и прочее.
//а углы r1,r2,r3 - совсем другое. Это повороты модели. Можно взять и повернуть вбок, всегда будет бегать боком (короче лицо принимает боковая сторона модели).
//r1 - это yaw (рыскание) - поворот носом модели влево-вправо. можно сказать это поворот модели вокруг оси z (если так смотреть). или что-то похожее на facing. По умолчанию угол = 90
//r2 - это pitch (тангаж) - поворот носом модели вверх-вниз. можно даже сверх ногами перевернуть модель. По умолчанию угол равен 0 градусов
//r3 - это roll (крен) - поворот боковой стороны модели вверх-вниз. можно тоже сверх ногами перевернуть модель. По умолчанию угол равен 0 градусов
//про все эти углы yaw, pitch, roll можно прочитать в интернете. Еще советую прочитать про углы эйлера, и изучить матрицу
//как работает матрица или углы эйлера - последовательно: сначала поворачивает на угол r1, потом поворачивают на угол r2, затем r3 (т.е. эта такая суммарная работа)
//есть недостаток углов эйлера - шарнирный замок (см. в интернете). мб быть так что не получится так как хотели бы. Сложно рассчитать: надо сначала привыкнуть, запутаться легко.
//отрицательное значение facing, r1,r2,r3 - поворот в противоположную сторону 

//Недостаток этой функции - юнит утрачивает возможность разворачиваться лицом в точку (возможно это как-то лечится, там скорость поворота изменить)
function CalculateObjectOrientationRules takes handle h, real r1, real r2, real r3, real facing, integer flag returns nothing
//yaw, pitch, roll
	call WMem(DataArray3Adress+800,mR2I(r1))
	call WMem(DataArray3Adress+804,mR2I(r2))
	call WMem(DataArray3Adress+808,mR2I(r3))
	call CallFastCallWith4Args(GameDLL+0x4B2C50,DataArray3Adress+700,DataArray3Adress+800,mR2I(facing),flag)
	call CallThisCallWith10Args(GameDLL+0x4D3170,RMem(ConvertHandle(h)+0x28),RMem(DataArray3Adress+700),RMem(DataArray3Adress+704),RMem(DataArray3Adress+708),RMem(DataArray3Adress+712),RMem(DataArray3Adress+716),RMem(DataArray3Adress+720),RMem(DataArray3Adress+724),RMem(DataArray3Adress+728),RMem(DataArray3Adress+732))
endfunction
//==================
щас в новой версии варкрафт нет функции на повороты спец-эффектов, юнитов? читал на хайве про спецэффекты, а у нас нет еще пробы?
пасиба
21

» WarCraft 3 / Способность феникса в старафт 2

PT153:
феникса из старкрафт 2 , когда он поднимает единицу силовым полем и та барахтается кверх ногами в воздухе.
Феникс - Fenix (герой) или Phoenix (юнит)? Я сначала подумал о первом. xD
А конкретно интересует возможно ли без специальной анимации вращать модельку боевой единицы,например заставить двигаться ногами вверх?
На 1.26 без мемхака никак, а вот на лицензии вроде можно.

А так предлагаю просто навесить на юнита эффект стана с моделью сферы вокруг юнита и поднять юнита в воздух, меняя его высоту.
Так нужно чтобы он вертелся,а так не интересно
21

» WarCraft 3 / Мечта о мотоцикле в Варкрафт

call SetUnitY(unit1,GetUnitY(unit2))
Bergi_Bear:
Так учитесь на гуи это будет весьма проблематично но если сообразить даже минимальным кастум скриптом
call SetUnitX(unit1,GetUnitX(unit2)) 
call SetUnitY(unit1,GetUnitY(unit2)) 
где юнит1 и юнит2 это udg_motocircle b udg_lulka соответсвенно
И всё это на периодическом событии (если таймера не знаешь) 0.03
Хотя бы попробуй посадить таким способом стрелка на танк и поездить, увидишь дёрганьнья и невозможность движения, скорее всего придётся придётся сделать второго юнита летающим или духом через которого пройти (см способности вардов) или отключить столкновения
Спасибо,все получилось!)
21

» WarCraft 3 / Мечта о мотоцикле в Варкрафт

KaneThaumaturge:
SсRealm, вообще никак?
Bergi_Bear:
изи же, составной юнит из разных модулей принадлежащих к разным игрокам, совмещаем юнитов вместе с минимальным таймером например 0.04 сек, через SetUnitXYZ
Я не умею через координаты двигать(
21

» WarCraft 3 / Мечта о мотоцикле в Варкрафт

Bergi_Bear:
xgm.guru/p/robotdef ну как бы трёхмодульный юнит, ноги, башня и тело
Без понятия как этим пользоваться.Я все-равно не смогу через триггер три разных куска юнита двигаться синхронно
21

» WarCraft 3 / wait течет или капает?

KaneThaumaturge:
SсRealm, я скопировал PolledWait() и исправил немного, можешь скопировать и вызывать когда нужно. (Если я правильно исправил)
//Исправленный PolledWait()
    nothing Wait ( real duration ){ 
        timer t
        real timeRemaining
        if (duration > 0) {
            t = CreateTimer()
            TimerStart(t, duration, false, null)
            loop{
                timeRemaining = TimerGetRemaining(t)
                exitwhen timeRemaining <= 0
                if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) {
                    TriggerSleepAction(0.1 * timeRemaining)
                }else{
                    TriggerSleepAction(bj_POLLED_WAIT_INTERVAL)
                }
            }
            DestroyTimer(t)
            t = null
        }
    }
Это cJASS, если что
Пасиба)
21

» WarCraft 3 / wait течет или капает?

PT153:
Ну так,а мы обнулим переменную))
Она локальная, как ты её обнулишь вне её функции? Только если свой аналог напишешь.
custom script: u = null
у нас,триггерщиков, локалки так обнуляются , а у вас не знаю(
21

» WarCraft 3 / Концепт иконок

Не заморачивайся на подобных мелочах. В доте вон,вообще почти все персонажи из оригинальной варки,импорта толком нет, а какая великая карта получилась!
21

» WarCraft 3 / wait течет или капает?

PT153:
Если это утверждение верно
Классика blizzard.j, объект удаляется, но переменная на него не обнуляется.
Ну так,а мы обнулим переменную))
KaneThaumaturge:
ScorpioT1000, нужно сначала уничтожать таймер, затем обнулять?
А как уничтожить таймер?
21

» WarCraft 3 / Способности предмета

Cынок, ты еще так молод,но уже пытаешься покорить вселенную варкрафта?
Узри же величие мое!
Внимай словам старшего,ибо я говорю тебе:
Короче, тупо через триггер добавляешь способности и плюшки,когда предмет у героя.