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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

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

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
По умолчанию Оптимизировать код №2

Опять прошу помочь.
С масивом никак не справлюсь.
И цикл бы тут запулять.
Есть 9 кнопок.
С пом.функции последовательно меняю им цвет.


for (i=1; i<10; i++) {
duplicateMovieClip("k0"+i, "kk0"+i, i+50);
coli = new Color("kk0"+i);
coli.setRGB(0x00ff00);
setProperty("kk0"+i, _visible, 0);
}
function izmcol () {
n = 0;
this.onEnterFrame = function() {
setProperty(kk01, _visible, 1);
n += 1;
if(n>=2){
setProperty(kk01, _visible, 0);
setProperty(kk04, _visible, 1);
}
if(n>=4){
setProperty(kk04, _visible, 0);
setProperty(kk07, _visible, 1);
}
if(n>=6){
setProperty(kk07, _visible, 0);
setProperty(kk08, _visible, 1);
}
if(n>=8){
setProperty(kk08, _visible, 0);
setProperty(kk09, _visible, 1);
}
if(n>=10){
setProperty(kk09, _visible, 0);
setProperty(kk06, _visible, 1);
}
if(n>=12){
setProperty(kk06, _visible, 0);
setProperty(kk03, _visible, 1);
}
if(n>=14){
setProperty(kk03, _visible, 0);
setProperty(kk02, _visible, 1);
}
if(n>=16){
setProperty(kk02, _visible, 0);
setProperty(kk05, _visible, 1);
}
if(n>=18){
setProperty(kk05, _visible, 0);
delete this.onEnterFrame;

}
};
}
Вложения
Тип файла: zip optim_kod2.zip (3.5 Кб, 64 просмотров)

Старый 22.09.2003, 07:01
CYD вне форума Посмотреть профиль Отправить личное сообщение для CYD Найти все сообщения от CYD
  № 2  
CYD

Регистрация: May 2003
Сообщений: 74
Отправить сообщение для CYD с помощью ICQ
Я сам конечно не профи и часто прошу помощи, но ты имхо совсем загнул. Ты б еще всю прогу попросил тебе написать.

Старый 22.09.2003, 13:34
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 3  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
Да чего тут такого написано?
Кто знает как работать с масивами сделает на раз.
А я вот как раз и не могу их /масивы/ взять за вымя.

Старый 23.09.2003, 17:05
major вне форума Посмотреть профиль Отправить личное сообщение для major Найти все сообщения от major
  № 4  
major
 
Аватар для major

Регистрация: Jul 2003
Адрес: SPb
Сообщений: 125
// первый кадр

var clp=new Array(1,4,7,8,9,6,3,2,5); // порядок включения клипов
var ndx=-1; //индекс клипа
var spd=5; // делитель скорости (задержка)
var ispd=0; // счетчик задержки

for (i=1; i<10; i++) {
duplicateMovieClip("k0"+i, "kk0"+i, i+50);
coli = new Color("kk0"+i);
coli.setRGB(0x00ff00);
setProperty("kk0"+i, _visible, 0);
}
function izmcol () {
if(ndx<0) ndx=0; // пуск
}
this.onEnterFrame = function() {
if(ndx>=0){
// clp[ndx] - !!! - клип, который нужно включить
this["kk0"+clp[ndx]]._visible=true;
ispd++;
if(ispd>=spd){
ispd=0;
this["kk0"+clp[ndx]]._visible=false;
ndx++;
if(ndx>=clp.length) ndx=-1;
}
}
}
stop();

Старый 23.09.2003, 18:32
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 5  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
Всё путём.
Сделать бы как то масив clp - аргументом для функции
izmcol (). Объявление масива идет вне функции
и динамически изменять обход функцией элементов масива
не очень удобно.Т.е.
что бы засунуть ф-цию в setInterval
setInterval(function () { izmcol();}, 6000);
надо объявлять масив

var clp = new Array(1, 5, 7, 8, 9, 6, 3, 2, 4);
setInterval(function () { izmcol();}, 6000);
и если я хочу что бы через допустим 60 сек.

var clp = new Array(5, 5, 5, 8, 9, 6, 4, 4, 4);
надо объявлять новый масив и запускать функцию
уже с ним, вместо того что бы просто запустить ф-цию с новым аргументом.
В общем достаточно путано, но вроде разобрать можно.
Спасибо за помощь.
Это не сколько мне надо, сколько новичкам для которых
AS1 пока тёмный лес, а что уж говорить про AS2.

Старый 23.09.2003, 20:30
major вне форума Посмотреть профиль Отправить личное сообщение для major Найти все сообщения от major
  № 6  
major
 
Аватар для major

Регистрация: Jul 2003
Адрес: SPb
Сообщений: 125
Не понял в чем проблема.

Ну посмотрите такой вариант (в качестве примера многомерных массивов) :
var clp=new Array([1,4,7,8,9,6,3,2,5],
[1,4,7,8,5,2,3,6,9],
[1,5,9,6,3,2,4,7,8],
[1,2,4,7,5,3,6,8,9],
[1,4,5,2,3,6,9,8,7]); // порядок включения клипов
var ndx=-1; //индекс клипа
var ndx2=0; // индекс строки клипов
var spd=5; // делитель скорости (задержка)
var ispd=0; // счетчик задержки
function callback(){
if(ndx<0) {
ndx2++;
if(ndx2>=clp.length) ndx2=0;
}
}
setInterval(callback,3000);
for (i=1; i<10; i++) {
duplicateMovieClip("k0"+i, "kk0"+i, i+50);
coli = new Color("kk0"+i);
coli.setRGB(0x00ff00);
setProperty("kk0"+i, _visible, 0);
}
function izmcol () {
if(ndx<0) {
ndx=0;
ndx2++;
if(ndx2>=clp.length) ndx2=0;
}
}
this.onEnterFrame = function() {
if(ndx>=0){
this["kk0"+clp[ndx2][ndx]]._visible=true;
ispd++;
if(ispd>=spd){
ispd=0;
this["kk0"+clp[ndx2][ndx]]._visible=false;
ndx++;
if(ndx>=clp[ndx2].length) ndx=-1;
}
}
}
stop();

Старый 23.09.2003, 22:20
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 7  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
Тут с обычными масивами хрен разберёшься,
а ты многомерные предлагаешь.
Чем дальше в лес .........,
хотя в общем то разобраться можно.
Спасибо.

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

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

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


 


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


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