2013-09-17 6 views
0

Я хочу отложить последовательную итерацию цикла в MOAI. Я попытался использовать таймер, чтобы задержать вызов цикла, и положить пустой цикл внутри моего основного цикла. В последнем случае он просто проходит через все итерации внутреннего цикла, прежде чем переходить во внешний цикл. В результате он останавливается на первой итерации основного цикла, затем проходит через внутренний цикл и затем, наконец, выполняет основной цикл. Как я могу остановить его?Как задержать последовательные итерации цикла в MOAI?

+0

Может быть, вы должны уточнить, что вы хотите, чтобы произошло вместо этого? – Textmode

ответ

0

Было бы полезно посмотреть на код, но если вы включите свой цикл в MOAICoroutine, вы можете использовать coroutine.yield() для выхода из цикла, а затем использовать coroutine.resume(), чтобы вернуться к нему, когда ваше условие задержки выполнено. Так как это не «занятый» цикл, ваше приложение может продолжить работу над другими задачами.

+0

Весь код игры находится в одном потоке, и он полностью зависит от пользовательского ввода. Нет «игрового цикла». – user2788849

+0

И я не хочу, чтобы он делал другие вещи во время ожидания. Мне просто нужно подождать. – user2788849

0

Ваш вопрос не очень понятно, но я подозреваю, что вы должны сделать, это вызвать MOAICoroutine.blockOnAction на таймере, что-то вроде:

local timer = MOAITimer.new() 
timer:setSpan(5) 
MOAICoroutine.blockOnAction(timer:start()) 
Смежные вопросы