Задержка
|
|
FatalBlade | Дата: Воскресенье, 24 Июля 2011, 02:57:29 | Сообщение # 1 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Если ли в джассе функция которая является задержкой, способной принимать любое значение, и не быть ущербной как Wait? Дело в том что есть таймеры, но для них значит нужно создавать триггер, с событием Timer Expires, и там продолжать все действия. А это ужасно не удобно. Меня интересует есть ли что нибудь типа:
Действие... Действие... Задержка на 0.33 секунд Действие... Действие...
|
|
|
|
Include | Дата: Воскресенье, 24 Июля 2011, 03:41:03 | Сообщение # 2 |
2 уровень
Группа: Пользователи
Сообщений: 20
Награды: 0
Репутация: 0
Блокировки:
| FatalBlade, таймеры
|
|
|
|
FatalBlade | Дата: Воскресенье, 24 Июля 2011, 03:47:24 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (Include) FatalBlade, таймеры Quote (FatalBlade) Дело в том что есть таймеры, но для них значит нужно создавать триггер, с событием Timer Expires, и там продолжать все действия.
|
|
|
|
Include | Дата: Воскресенье, 24 Июля 2011, 04:19:09 | Сообщение # 4 |
2 уровень
Группа: Пользователи
Сообщений: 20
Награды: 0
Репутация: 0
Блокировки:
| FatalBlade, таймеры лучше вейта. аналогов нет.
|
|
|
|
H_A_PK | Дата: Воскресенье, 24 Июля 2011, 08:49:22 | Сообщение # 5 |
Быдлокодер
Группа: Проверенные
Сообщений: 2605
Награды: 1
Репутация: 822
Блокировки:
| FatalBlade, Code function action takes nothing returns nothing \\Действия endfunction
local timer t = CreateTimer() call TimerStart(t,время задержки, false, function action) можно ещё Code call PolledWait(time) но это бред
проклятье ляжет на любого кто дочитает до конца нет не дочитывай не надо остановись ну всё капец
|
|
|
|
FatalBlade | Дата: Воскресенье, 24 Июля 2011, 12:08:44 | Сообщение # 6 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (Include) FatalBlade, таймеры лучше вейта. аналогов нет. А можно как то в одном триггере это делать? Т.е. что бы не надо было начинать новый триггер с событием TimerExpires?
Quote (H_A_PK) local timer t = CreateTimer() call TimerStart(t,время задержки, false, function action) А сразу после call TimerStart в том же триггере я могу писать дальнейшие действия, и это будет как бы действия после паузы?
Quote (H_A_PK) call PolledWait(time) но это бред Почему бред?
|
|
|
|
Faion | Дата: Воскресенье, 24 Июля 2011, 12:45:02 | Сообщение # 7 |
10 уровень
Группа: Проверенные
Сообщений: 1894
Награды: 0
Репутация: 430
Блокировки:
| Quote (FatalBlade) Почему бред?
Потому что :
Code function PolledWait takes real duration returns nothing local timer t local real timeRemaining
if (duration > 0) then set t = CreateTimer() call TimerStart(t, duration, false, null) loop set timeRemaining = TimerGetRemaining(t) exitwhen timeRemaining <= 0
// If we have a bit of time left, skip past 10% of the remaining // duration instead of checking every interval, to minimize the // polling on long waits. if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then call TriggerSleepAction(0.1 * timeRemaining) else call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL) endif endloop call DestroyTimer(t) endif endfunction
Никто не использует вейты.
О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас. My Project: Nindogatari MAL
|
|
|
|
FatalBlade | Дата: Воскресенье, 24 Июля 2011, 13:50:22 | Сообщение # 8 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Во спс работает
Сообщение отредактировал FatalBlade - Воскресенье, 24 Июля 2011, 14:15:02 |
|
|
|
lawson | Дата: Воскресенье, 24 Июля 2011, 15:05:36 | Сообщение # 9 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Faion) set timeRemaining = TimerGetRemaining(t) exitwhen timeRemaining <= 0 Вот что самое интересное в этой функции.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|