движение в точку
|
|
Mep3aB4uK | Дата: Среда, 08 Июня 2011, 20:02:33 | Сообщение # 1 |
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
| Я зделал if SquareRoot(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)>70. then если дистанция больше 70 то он двигается в точку. Но он иногда пролетает эту точку и двигается дальше. Вопрос: какое условие чтоб он всегда останавливался в точке?
Сообщение отредактировал Mep3aB4uK - Среда, 08 Июня 2011, 20:04:44 |
|
|
|
romaN-1998 | Дата: Среда, 08 Июня 2011, 20:06:44 | Сообщение # 2 |
10 уровень
Группа: Проверенные
Сообщений: 1368
Награды: 0
Репутация: 10
Блокировки:
| if GetWidgetX(unit) == X and GetWidgetY(unit) == Y then call IssueImmediateOrder(unit,"stop") endif
Сообщение отредактировал romaN-1998 - Среда, 08 Июня 2011, 20:07:06 |
|
|
|
Mep3aB4uK | Дата: Среда, 08 Июня 2011, 20:46:46 | Сообщение # 3 |
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
| romaN-1998, не помогло
|
|
|
|
SirNikolas | Дата: Четверг, 09 Июня 2011, 11:05:53 | Сообщение # 4 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Я же говорил, надо счетчиком. К таймеру крепишь целочисленную, при каждом истечении увеличиваешь ее на единицу, когда она достигнет определенного значения, останавливаешь таймер.
|
|
|
|