Ответ 1
Не совсем. Вы можете заблокировать (почти все) выполнение кода с помощью чего-то вроде:
function sleep(ms:int):void {
var init:int = getTimer();
while(true) {
if(getTimer() - init >= ms) {
break;
}
}
}
trace("hello");
trace(getTimer());
sleep(5000);
trace("bye");
trace(getTimer());
Но я не понимаю, как это может быть полезно во flash. И в то же время, что-то вроде вышеупомянутого кода - очень плохая идея, поскольку игрок замерзнет и станет невосприимчивым (и также может дать тайм-аут script, если вы превысите лимит времени ожидания, который по умолчанию равен 15).
Если вы просто хотите отложить выполнение фрагмента кода, вы можете использовать объект Timer или функцию setTimeout. Тем не менее, это будет неблокировать, поэтому вам придется использовать какой-то флаг, например, предлагаемый TandemAdam. В лучшем случае это будет хрупким.
Возможно, есть более эффективный подход к вашей проблеме, но неясно, что вы пытаетесь выполнить в своем вопросе.