каждую 0.01 секунду меняю высоту юнита, но иногда когда два юнита юзают для одного высота не поднимается что делать?


все еще не решил, а где Назарпанк он вроде про вот такие моменты исчезает))

пробовал даже через GetLocationZ(loc) но один и тот же баг!!

решил через группы спасибо!!
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
22
названия переменных для роботов что-ли, что за жесть?
выводи дебагом значение счетчика мб, по одному скрину не понятно
последние 3 строки в цикле вообще какой-то бред, зачем по сто раз их перезаписывать?
7
biridius:
названия переменных для роботов что-ли, что за жесть?
выводи дебагом значение счетчика мб, по одному скрину не понятно
последние 3 строки в цикле вообще какой-то бред, зачем по сто раз их перезаписывать?
посмотри видео и там поймешь в чем баг наверное у каждого оно было
22
сори у меня инет 10кб/с
дай норм скрин триггера который добавляет записи юнитов и пр в массив и увеличивает счетчик записей, ятп это DI[0]
все равно всегда стоит сперва использовать дебаг - выводить текстом сообщения во время игры, например того же Дио
скорее всего проблема именно со счетчиком юнитов и тем как они добавляются в массивы (при касте спелла?), тк на этом одном скрине кроме бесполезных лишних строк все вроде нормально
7
biridius:
сори у меня инет 10кб/с
дай норм скрин триггера который добавляет записи юнитов и пр в массив и увеличивает счетчик записей, ятп это DI[0]
все равно всегда стоит сперва использовать дебаг - выводить текстом сообщения во время игры, например того же Дио
biridius:
названия переменных для роботов что-ли, что за жесть?
выводи дебагом значение счетчика мб, по одному скрину не понятно
последние 3 строки в цикле вообще какой-то бред, зачем по сто раз их перезаписывать?
код нормально работает но проблема в высоте когда два или три юнита применяют способность высота для двоих не поднимается а только для одного поднимается

щяс кину фулл скрины
22
подозреваю еще что массив скорости по высоте FlyD не инициализирован, и поэтому код обрывается при счетчике больше 1
нужно чтобы при добавлении юнита в массивы ему скорость давалась как ноль или любое другое число
22
вобщем ятп триггер который запускает юнитов называется GrimjowMui
FlyD[DI[0]] значение задается в нем? если нет то выполнение цикла который по таймеру будет обрываться
7
biridius:
вобщем ятп триггер который запускает юнитов называется GrimjowMui
FlyD[DI[0]] значение задается в нем? если нет то выполнение цикла который по таймеру будет обрываться
нет, поставить ноль?
26
Кароче - так делать нельзя.
И давай переменным вменяемые имена.
22
Ельнур, Да, поставь ноль, иначе прибавлять 7 не к чему
если юниты должны лететь по параболе, то поставь число вроде 2000 и не прибавляй, а вычитай 7 (пока скорость больше нуля юнит набирает высоту, затем падает когда из-за вычитания гравитации она становится отрицательной)
реально конфузят имена переменных, FlyD это высота а Fly35 скорость; ускорения там нету
7
biridius:
Ельнур, Да, поставь ноль, иначе прибавлять 7 не к чему
если юниты должны лететь по параболе, то поставь число вроде 2000 и не прибавляй, а вычитай 7 (пока скорость больше нуля юнит набирает высоту, затем падает)
поставил ноль все правильно работает но потом оно багается и высота вообще для всех не поднимается
22
Ельнур, я думаю записи из массива не убираются, их становится слишком много и движок не справляется
Просто увеличивать счетчик недостаточно, надо при гибели/приземлении юнита заменять его на последний в массиве (и все его данные тоже) и уменьшать счетчик на 1
Если не заменять на последний юнит при гибели а только уменьшать счетчик, то более новые юниты будут зависать в воздухе при гибели остальных.
7
biridius:
Ельнур, я думаю записи из массива не убираются, их становится слишком много и движок не справляется
просто увеличивать счетчик недостаточно, надо при гибели/приземлении юнита заменять его на последний в массиве (и все его данные тоже) и уменьшать счетчик на 1
при приземлении когда я выставлял счетчик -1 из за быстрости(0.01 сек) он багался поэтому при приземлении создал даммика который имеет таймер 0.50 сек и когда этот даммик умирает то счетчик становится -1
22
там в этих японских названиях триггеров и дио с джотаро черт ногу сломит
У тебя там где счетчик уменьшается, все переменные умирающего заменяются на последний юнит в массиве или нет?
Если нет то до них счетчик просто не будет доходить тк они идут после уменьшившегося максимального значения для цикла.
7
biridius:
там в этих японских названиях триггеров и дио с джотаро черт ногу сломит
У тебя там где счетчик уменьшается, все переменные умирающего заменяются на последний юнит в массиве или нет?
Если нет то до них счетчик просто не будет доходить тк они идут после уменьшившегося максимального значения для цикла.
там ничего нет) только счетчик
Загруженные файлы
22
Ельнур, вот, сделай чтобы подмена была
тип перед уменьшением
FlyD[умирающего] = FlyD[DI[0]]
и тд
а то ты дио уменьшил например с 3 до 2, а юнит который записан на номер три остается висеть в воздухе тк до него цикл больше не будет доходить, ведь он теперь проходит не от 1 до 3, а от 1 до 2
и не нужно везде всю арифметику делать через DDD1, что мешает просто вычесть 1?
7
biridius:
Ельнур, вот, сделай чтобы подмена была
тип перед уменьшением
FlyD[умирающего] = FlyD[DI[0]]
и тд
а то ты дио уменьшил например с 3 до 2, а юнит который записан на номер три остается висеть в воздухе тк до него цикл больше не будет доходить, ведь он теперь проходит не от 1 до 3, а от 1 до 2я я
ну я специально при приземлении поставил даммика с 0.50 сек чтобы за эти секунд все прыгнувшие(0.01 сек) скорость 3500 успели за эти 0.50 сек прыгнуть до точки каста и когда умирает даммик делать счетчик - 1
ну
22
вобщем извращение какое-то получается
все надо переписывать по-человечески
а то только костыль на костыле
сделай нормальные имена переменных и массивы с заменой
потом добавь вывод сообщений что там происходит у дио и у флайДи
7
biridius:
вобщем извращение какое-то получается
все надо переписывать по-человечески
а то только костыль на костыле
сделай нормальные имена переменных и массивы с заменой
потом добавь вывод сообщений что там происходит у дио и у флайДи
у флайди когда он меньше -4000 то высота багается
а если больше доходит больше -4000 то норм
22
а зачем он вообще -4000? у тебя же высота юнита задается на это значение, как у юнита может быть высота минус четыре тыщи? уровень земли ноль плюс-минус 256
7
biridius:
а зачем он вообще -4000? у тебя же высота юнита задается на это значение, как у юнита может быть высота минус четыре тыщи? уровень земли ноль плюс-минус 256
это переменная fly d

biridius:
а зачем он вообще -4000? у тебя же высота юнита задается на это значение, как у юнита может быть высота минус четыре тыщи? уровень земли ноль плюс-минус 256
кстати у тебя какой патч? если скину карту сделаешь фастом?


он для патча 1.31 и выше
Загруженные файлы
22
сори у меня 1.26
флай ди у тебя как раз и написан же в кастом скрипте где задается высота юнита DC
с такими именами переменных легко запутаться, стоит все переделать
7

все еще не решил, а где Назарпанк он вроде про вот такие моменты исчезает))

пробовал даже через GetLocationZ(loc) но один и тот же баг!!

решил через группы спасибо!!
Загруженные файлы
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.