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

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

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

Регистрация: Aug 2007
Сообщений: 124
Cool помогите с setInterval

Всем привет. Вопрос. В основной временной линейке на первом кадре устанавливаю интервал, пишу код для первой кнопки на очистку интервала, и во второй кнопке код на возобновление интервала. Так вот, после того, как я интервал очищаю, а потом снова возобновляю с помощю второй кнопки, то первая кнопка перестает работать. Тоесть интеварл зацикливается, и баста. Вот так все выглядит на деле
Код AS1/AS2:
///// Main Time Line, frame 1
function myFunction():Void
{
square.play()
}
var intervalID:Number = setInterval(myFunction, 4000);
 
buttonOne.onPress = function()
{
clearInterval(intervalID);
buttonTwo._alpha = 100;
};
 
buttonTwo.onPress = function()
{
var intervalID:Number = setInterval(myFunction, 4000);
buttonTwo._alpha = 0;
}
Вроде этого. Но вот беда, как мне заставить первую кнопку опять работать. Подозреваю, что проблема в том, что интервал вызывается из разных скопов. А как все запихнуть в оду группу, мозги не доходят. Нужан ваша помощ.
Спасибо.


Последний раз редактировалось solo19770701; 16.02.2009 в 03:34. Причина: забыл поставить уведомление
Старый 16.02.2009, 03:45
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Код AS1/AS2:
buttonTwo.onPress = function() {
	intervalID = setInterval(myFunction, 4000);
	buttonTwo._alpha = 0;
}
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 16.02.2009, 05:56
solo19770701 вне форума Посмотреть профиль Отправить личное сообщение для solo19770701 Найти все сообщения от solo19770701
  № 3  
Ответить с цитированием
solo19770701

Регистрация: Aug 2007
Сообщений: 124
to iNils: как всегда выручил.
Спасибо.
Будешь у нас в Maryland, пивом угощу.

Добавлено через 1 час 48 минут
to iNils: если можно, еще один вопрос. Хочу утилизировать скрипт. К приеру есть 25 кнопок, они все кроме одной имеют одинаковую альфу 26, но одна кнопка с альфой 68.
Код AS1/AS2:
/////// this is how it looks right now
b1._alpha = 68;
b2._alpha = 26;
b3._alpha = 26;
b4._alpha = 26;
b5._alpha = 26;
b6._alpha = 26;
b7._alpha = 26;
b8._alpha = 26;
b9._alpha = 26;
b10._alpha = 26;
не могу додуматься, как сделать скрипт короче. Если бы они все были с 1 по 25 одинаковые, то я бы через if(i=0, i<25, i++), но тут получается в каждом кадре альфа одной кнопик отличается от группы.
Спасибо.

Старый 16.02.2009, 09:58
alecsisk вне форума Посмотреть профиль Отправить личное сообщение для alecsisk Найти все сообщения от alecsisk
  № 4  
Ответить с цитированием
alecsisk

Регистрация: Feb 2008
Адрес: N.Novgorod
Сообщений: 80
Отправить сообщение для alecsisk с помощью ICQ
Код AS1/AS2:
for (var ch=0; ch < 25; ch++) {
	this['b'+ch]._alpha = 25;
	if (ch == 1) {
		this['b'+ch]._alpha = 68;
	}
}
как-то так

Старый 16.02.2009, 17:54
solo19770701 вне форума Посмотреть профиль Отправить личное сообщение для solo19770701 Найти все сообщения от solo19770701
  № 5  
Ответить с цитированием
solo19770701

Регистрация: Aug 2007
Сообщений: 124
to Код AS1/AS2: спасибо. А то поглядишь на то что я пишу и плакать хочется.

Старый 16.02.2009, 18:22
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 6  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
На это тоже. Не обязательно каждую итерацию цикла проверять равно ли ch одному

Создать новую тему Ответ Часовой пояс GMT +4, время: 07:33.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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