Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.09.2013, 13:09
UserSuperPupsik вне форума Посмотреть профиль Отправить личное сообщение для UserSuperPupsik Найти все сообщения от UserSuperPupsik
  № 1  
Ответить с цитированием
UserSuperPupsik

Регистрация: Aug 2013
Сообщений: 89
Attention Использование setInterval() в цикле

Здравствуйте.Дан код:
Код AS3:
import flash.utils.*;
 
var test = setInterval(a,3000);//ждать 3 секунды!
 
function a(){
trace("hello");
clearInterval(test);
	      }
Как теперь использовать setInterval() в цикле, уточню: чтобы после каждого цикла компилятор ждал 3 секунды, и только потом выполнял trace()???

Старый 07.09.2013, 13:38
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 2  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Никак. Циклы не для этого.
__________________
Reality.getBounds(this);

Старый 07.09.2013, 14:34
UserSuperPupsik вне форума Посмотреть профиль Отправить личное сообщение для UserSuperPupsik Найти все сообщения от UserSuperPupsik
  № 3  
Ответить с цитированием
UserSuperPupsik

Регистрация: Aug 2013
Сообщений: 89
Спасибо за ответ, Wolsh!
Как тогда реализовать такую программу:
Код:
var i:int=1;
trace("i");
жди 5 сек;
i++;
trace("i");
жди 5 сек;
i++;
trace("i");
жди 5 сек;
i++;
Как?

Старый 07.09.2013, 14:50
chamele0n вне форума Посмотреть профиль Отправить личное сообщение для chamele0n Посетить домашнюю страницу chamele0n Найти все сообщения от chamele0n
  № 4  
Ответить с цитированием
chamele0n
[+4 24.04.13]
[+4 20.04.13]

Регистрация: Feb 2013
Адрес: Seireitei
Сообщений: 176
так чтоли ?
Код AS3:
import flash.utils.Timer;
import flash.events.TimerEvent;
 
var i:int = 1;
var timer:Timer = new Timer(1000, 5);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerComplete);
timer.start();
 
function onTimerComplete(e:TimerEvent) : void {
	trace(i);
	trace('жди 5 сек;');
	i++;
	if(i != 'определенное условие') {
		timer.reset();
		timer.start();
	}
}
__________________
Personal Page
$demo = $away3d + $bullet + $pathfinding;

Старый 07.09.2013, 14:55
DmMatveev вне форума Посмотреть профиль Отправить личное сообщение для DmMatveev Найти все сообщения от DmMatveev
  № 5  
Ответить с цитированием
DmMatveev

Регистрация: Nov 2012
Сообщений: 5
Код AS3:
package
{
	import flash.events.TimerEvent;
	import flash.utils.Timer;
 
	public class Interval 
	{
		private var timer:Timer;
		private var count:int;
		private var i:int;
 
		public function Interval() 
		{
			count = 3;
			i = 1;
 
			timer = new Timer(5000, count);
			timer.addEventListener(TimerEvent.TIMER, out);
			timer.start();
		}
 
		private function out(e:TimerEvent = null):void 
		{
			i++;
			trace(i);
		}
 
 
	}
 
}
Добавлено через 41 секунду
Не успел)

Старый 07.09.2013, 15:33
UserSuperPupsik вне форума Посмотреть профиль Отправить личное сообщение для UserSuperPupsik Найти все сообщения от UserSuperPupsik
  № 6  
Ответить с цитированием
UserSuperPupsik

Регистрация: Aug 2013
Сообщений: 89
Код AS3:
import flash.utils.Timer;
import flash.events.TimerEvent;
 
var i:int = 1;
var timer:Timer = new Timer(1000, 5);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, f);
timer.start();
 
function f(e:TimerEvent) : void {
	if(i<=5){
	trace(i);
	trace('жди 5 сек;');
	i++;
	timer.reset();
	timer.start();
}	
}
Спасибо за Ваш труд! Все бы хорошо,chamele0n, но я хочу использовать timer() "жди 5 сек" в разных частях кода по несколько раз.Как это реализовать???

Старый 07.09.2013, 17:16
chamele0n вне форума Посмотреть профиль Отправить личное сообщение для chamele0n Посетить домашнюю страницу chamele0n Найти все сообщения от chamele0n
  № 7  
Ответить с цитированием
chamele0n
[+4 24.04.13]
[+4 20.04.13]

Регистрация: Feb 2013
Адрес: Seireitei
Сообщений: 176
универсального метода нету, надо смотреть под конкретную задачу
также можно использовать анонимную функцию
Код AS3:
import flash.utils.setTimeout;
 
setTimeout(function(v1, v2) : void {
	trace(v1);
	trace(v2);
}, 5000, 'v1', 'v2');
__________________
Personal Page
$demo = $away3d + $bullet + $pathfinding;

Старый 07.09.2013, 18:12
UserSuperPupsik вне форума Посмотреть профиль Отправить личное сообщение для UserSuperPupsik Найти все сообщения от UserSuperPupsik
  № 8  
Ответить с цитированием
UserSuperPupsik

Регистрация: Aug 2013
Сообщений: 89
Ребят, неужели нельзя выполнить простую задачу в AS3?
Последний Код chamele0n'а для того, чтобы была пауза в выполнении кода начиная с начала выполнения кода.
Мне нужно, чтобы в разных местах кода можно было бы поместить паузы в выполнении кода.Например.
Код:
trace("******");
пауза в выполнении кода на 5 сек;
trace("!!!!!!!!!!!!!!");
пауза в выполнении кода на 4 сек;
trace("+++++++++");
пауза в выполнении кода на 3 сек;
trace("//////////////////////");
Как реализовать паузы в выполнении кода на заданное время???

Старый 07.09.2013, 18:23
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 9  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
Ребят, неужели нельзя выполнить простую задачу в AS3?
Наоборот, можно простую задачу усложнить до невыполнимости. Вот у меня так часто бывает.
Помочь Вам сложно по двум причинам - Вы пишите в кадрах и Ваша логика отличается от логики других.
Так как Вы обьясняете - можно сделать, но это будет не правильно и по этому Вам не говорят как это сделать. Обьясните подробнее, не на примере Вашего видения пауз, а расскажите, что должно происходить.

Старый 07.09.2013, 18:35
UserSuperPupsik вне форума Посмотреть профиль Отправить личное сообщение для UserSuperPupsik Найти все сообщения от UserSuperPupsik
  № 10  
Ответить с цитированием
UserSuperPupsik

Регистрация: Aug 2013
Сообщений: 89
Да, я пишу в кадре.Хорошо, мне нужно, чтобы:
Код:
фрагмент1 кода выполнился,
 затем следующий ниже фрагмент2 код не выполнялся 5 секунд,
 затем фрагмент2 кода выполнился,
 затем следующий ниже фрагмент3 кода не выполнялся 4 секунд,
 затем фрагмент3 кода выполнился!
Могу еще раз объяснить


Последний раз редактировалось UserSuperPupsik; 07.09.2013 в 18:55.
Создать новую тему Ответ Часовой пояс GMT +4, время: 19:14.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:14.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.