![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
![]() Всем привет
![]() Благодаря ценным советам участников форума я взялся за изучение потоков. Успешно внедрил их в несколько своих программ, в частности - в стратегическую игру, над которой потею в данное время. Но столкнулся с одной проблемой. Каждый юнит в игре имеет свою скорость движения, атаки и стрельбы из лука. Используя потоки, я теряю возможность управлять задержками (все двигаются с одинаковой скоростью, то ли это конница, то ли гоплиты). Нашёл в статьях на сайте код процедуры Delay, вызываю её так: Код:
...fMoveAI.Execute; begin while not Terminated do begin Synchronize(MoveAI); Delay(MOVE_DELAY); end; end; Последний раз редактировалось Lothlorien, 28.05.2011 в 02:53. |
#2
|
|||
|
|||
![]() Нет, WaitFor предназначена для ожидания конца работы потока снаружи.
|
#3
|
||||
|
||||
![]() Понятно
![]() Но мой способ подойдёт (с использованием Delay)? Компьютер, по идее, тормозиться не должен, ибо задержка происходит в отдельном потоке... |