Добавлен Ельнур
каждую 0.01 секунду меняю высоту юнита, но иногда когда два юнита юзают для одного высота не поднимается что делать?
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован biridius
FlyD[DI[0]] значение задается в нем? если нет то выполнение цикла который по таймеру будет обрываться
Отредактирован Ельнур
И давай переменным вменяемые имена.
Отредактирован biridius
если юниты должны лететь по параболе, то поставь число вроде 2000 и не прибавляй, а вычитай 7 (пока скорость больше нуля юнит набирает высоту, затем падает когда из-за вычитания гравитации она становится отрицательной)
Отредактирован biridius
Просто увеличивать счетчик недостаточно, надо при гибели/приземлении юнита заменять его на последний в массиве (и все его данные тоже) и уменьшать счетчик на 1
Если не заменять на последний юнит при гибели а только уменьшать счетчик, то более новые юниты будут зависать в воздухе при гибели остальных.
Отредактирован biridius
У тебя там где счетчик уменьшается, все переменные умирающего заменяются на последний юнит в массиве или нет?
Если нет то до них счетчик просто не будет доходить тк они идут после уменьшившегося максимального значения для цикла.
Отредактирован biridius
тип перед уменьшением
FlyD[умирающего] = FlyD[DI[0]]
и тд