Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Как сделать короче?
  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
  • Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом
Makcimm
сообщение 2.02.2010 - 20:18
Сообщение #1


Новичок
*

Группа: Пользователь
Сообщений: 5
Регистрация: 2.02.2010
Пользователь №: 9744



Код
package
{
    import flash.display.MovieClip;
    import flash.events.MouseEvent;
    
    public class zona extends MovieClip
    {
        public function zona()
        {
            z1.addEventListener(MouseEvent.MOUSE_OVER, prozrach1);
            z2.addEventListener(MouseEvent.MOUSE_OVER, prozrach2);
        }
        private function prozrach1(evt:MouseEvent):void
        {    
            z1.alpha=1;
        }
        private function prozrach2(evt:MouseEvent):void
        {
            z2.alpha=1;
        }
    }
}

Я для каждого мувика вызываю свою функцию.
А как в одной функции написать например alpha=1 и чтобы она вызывалась для разных мувиков.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 3.02.2010 - 13:08
Сообщение #2


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1181
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Код
package
{
    import flash.display.MovieClip;
    import flash.events.MouseEvent;
    
    public class zona extends MovieClip
    {
        public function zona()
        {
            this.addEventListener(MouseEvent.MOUSE_OVER, prozrach)
        }
        private function prozrach(evt:MouseEvent):void
        {    
            z1.alpha=1;
            z2.alpha=1;
        }
    }
}


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Makcimm
сообщение 3.02.2010 - 17:28
Сообщение #3


Новичок
*

Группа: Пользователь
Сообщений: 5
Регистрация: 2.02.2010
Пользователь №: 9744



Может я вопрос непонятно задал...(
Можно ли написать как то в функции alpha=1
И чтобы при наведении на клип z1 эта функция вызывалась только для z1
а при наведении на z2 только для z2
Цитата
public function zona()
{
this.addEventListener(MouseEvent.MOUSE_OVER, prozrach)
}
private function prozrach(evt:MouseEvent):void
{
z1.alpha=1;
z2.alpha=1;
}

а здесь при наведении на любой клип, alpha=1 становиться сразу для обоих клипов, а не только для того на котором мышка.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 3.02.2010 - 18:20
Сообщение #4


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1181
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Код
public function zona()
{
this.addEventListener(MouseEvent.MOUSE_OVER, prozrach)
}
private function prozrach(evt:MouseEvent):void
{
evt.target.alpha=1;
}


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Makcimm
сообщение 3.02.2010 - 18:36
Сообщение #5


Новичок
*

Группа: Пользователь
Сообщений: 5
Регистрация: 2.02.2010
Пользователь №: 9744



Супер smile.gif
Именно это и надо было.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 3.02.2010 - 18:50
Сообщение #6


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1181
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Event


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 2.09.2011 - 23:08
Сообщение #7


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



а такой код как правильно и коротко написать в AS2 ?
CODE
var t = 0;
_root.onEnterFrame = function() {

if (t>=10) {
_root.звезда1.play();
_root.звезда3.play();
_root.звезда5.play();
_root.звезда7.play();
_root.звезда9.play();
_root.звезда11.play();
_root.звезда1._alpha = 10;
_root.звезда3._alpha = 10;
_root.звезда5._alpha = 10;
_root.звезда7._alpha = 10;
_root.звезда9._alpha = 10;
_root.звезда11._alpha = 10;
_root.звезда2.stop();
_root.звезда4.stop();
_root.звезда6.stop();
_root.звезда8.stop();
_root.звезда10.stop();
_root.звезда12.stop();
_root.звезда2._alpha = 90;
_root.звезда4._alpha = 90;
_root.звезда6._alpha = 90;
_root.звезда8._alpha = 90;
_root.звезда10._alpha = 90;
_root.звезда12._alpha = 90;
}
if (t>=20) {
_root.звезда2.play();
_root.звезда4.play();
_root.звезда6.play();
_root.звезда8.play();
_root.звезда10.play();
_root.звезда12.play();
_root.звезда2._alpha = 10;
_root.звезда4._alpha = 10;
_root.звезда6._alpha = 10;
_root.звезда8._alpha = 10;
_root.звезда10._alpha = 10;
_root.звезда12._alpha = 10;
_root.звезда1.stop();
_root.звезда3.stop();
_root.звезда5.stop();
_root.звезда7.stop();
_root.звезда9.stop();
_root.звезда11.stop();
_root.звезда1._alpha = 90;
_root.звезда3._alpha = 90;
_root.звезда5._alpha = 90;
_root.звезда7._alpha = 90;
_root.звезда9._alpha = 90;
_root.звезда11._alpha = 90;
}
t += 1;
if (t>=30) {
t = 0;
}
};

Помогите. Это только часть. sad.gif


Сообщение отредактировал dimaho - 2.09.2011 - 23:21


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 3.09.2011 - 00:33
Сообщение #8


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4957
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



Цитата
а такой код как правильно и коротко написать в AS2 ?

dimaho

Этот код будет работать. Тебя смущаем его длина (тем более, что многократно приходится обращаться к группам объектов) - тогда используй циклы. Обращайся к объектам в цикле for (в итоге у тебя будет два цикла для объектов с чётными и нечётными номерами).

О том как это сделать мы уже не раз писали на форуме, так что поиск поможет. Вкратце напомню - синтаксис будет следующим: _root["звезда"+i].play() (точно также для любых методов и свойств объектов).


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 3.09.2011 - 13:02
Сообщение #9


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



Цитата(MustLive @ 3.09.2011 - 01:33) *
Этот код будет работать. Тебя смущаем его длина (тем более, что многократно приходится обращаться к группам объектов) - тогда используй циклы. Обращайся к объектам в цикле for (в итоге у тебя будет два цикла для объектов с чётными и нечётными номерами).

О том как это сделать мы уже не раз писали на форуме, так что поиск поможет. Вкратце напомню - синтаксис будет следующим: _root["звезда"+i].play() (точно также для любых методов и свойств объектов).

Спасибо за подсказку. А с помощъю Массивов это сделать нельзя? В дальнейшем хочу обращаться к разным группам клипов 'Звезда' кликая на определённые клипы (счётчик t уберу). smile.gif Если писать так как я писал - очень много строк получается!

Сообщение отредактировал dimaho - 3.09.2011 - 13:05


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 4.09.2011 - 00:34
Сообщение #10


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4957
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



Пожалуйста, dimaho. Разберись с данным синтаксисом (с использованием оператора []).

Цитата
А с помощъю Массивов это сделать нельзя?

В данном случае используется метод подобный массивам. Поэтому в массивах как таковым нет надобности, ты создаёшь множество объектов с практически одинаковым именем - они отличаются лишь индексом. И используешь специальный синтаксис (с оператором []) для обращения к этим объектам.

Что позволяет в цикле работать с большими группами объектов, подобно тому как работают с массивами в цикле. Т.е. здесь используется аналогичный подход. И в итоге без использования массивов, но используя обращение к объектам "как к массиву" (хэшевый метод), ты создаёшь компактный код (посмотри приведённые примеры кода).


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 5.09.2011 - 01:01
Сообщение #11


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



Цитата(MustLive @ 4.09.2011 - 01:34) *
Пожалуйста, dimaho. Разберись с данным синтаксисом (с использованием оператора []).

Спасибо большое, MustLive. Уже изучаю. smile.gif Думаю, всё получится.


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 7.09.2011 - 00:05
Сообщение #12


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



ещё раз спасибо, получилось примерно так:
CODE
var t = 0;
var i;
_root.onEnterFrame = function() {
if (t>=1) {
for (i=1; i<=13; i++) {
_root["звезда"+i].stop();
_root["звезда"+i]._alpha = 20;
}
for (i=1; i<=12; i++) {
_root["звызда"+i].play();
_root["звызда"+i]._alpha = 90;
}
}
if (t>=10) {
for (i=1; i<=13; i++) {
_root["звезда"+i].play();
_root["звезда"+i]._alpha = 90;
}
for (i=1; i<=12; i++) {
_root["звызда"+i].stop();
_root["звызда"+i]._alpha = 20;
}
}
t += 1;
if (t>=20) {
t = 0;
}
};]

А вот такой код как сделать короче? Подскажите пожалуйста.
CODE
var t = 0;
звезда1._alpha = 15;
звезда2._alpha = 15;
звезда3._alpha = 15;
звезда4._alpha = 15;
звезда5._alpha = 15;
звезда6._alpha = 15;
звезда7._alpha = 15;
звезда8._alpha = 15;
звезда9._alpha = 15;
звезда10._alpha = 15;
звезда11._alpha = 15;
звезда12._alpha = 15;
звезда13._alpha = 15;
звезда14._alpha = 15;
звезда15._alpha = 15;
звезда16._alpha = 15;
звезда17._alpha = 15;
звезда18._alpha = 15;
звезда19._alpha = 15;
звезда20._alpha = 15;
звезда21._alpha = 15;
звезда22._alpha = 15;
звезда23._alpha = 15;
звезда24._alpha = 15;
звезда25._alpha = 15;
_root.onEnterFrame = function() {
/* 1 */
if (t>=1) {
_root.звезда1.play();
_root.звезда1._alpha = 90;
}
if (t>=255) {
_root.звезда1.stop();
_root.звезда1._alpha = 20;
}
/* 2 */
if (t>=10) {
_root.звезда2.play();
_root.звезда2._alpha = 90;
}
if (t>=260) {
_root.звезда2.stop();
_root.звезда2._alpha = 20;
}
/* 3 */
if (t>=20) {
_root.звезда3.play();
_root.звезда3._alpha = 90;
}
if (t>=265) {
_root.звезда3.stop();
_root.звезда3._alpha = 20;
}
/* 4 */
if (t>=30) {
_root.звезда4.play();
_root.звезда4._alpha = 90;
}
if (t>=270) {
_root.звезда4.stop();
_root.звезда4._alpha = 20;
}
/* 5 */
if (t>=40) {
_root.звезда5.play();
_root.звезда5._alpha = 90;
}
if (t>=275) {
_root.звезда5.stop();
_root.звезда5._alpha = 20;
}
/* 6 */
if (t>=50) {
_root.звезда6.play();
_root.звезда6._alpha = 90;
}
if (t>=280) {
_root.звезда6.stop();
_root.звезда6._alpha = 20;
}
/* 7 */
if (t>=60) {
_root.звезда7.play();
_root.звезда7._alpha = 90;
}
if (t>=285) {
_root.звезда7.stop();
_root.звезда7._alpha = 20;
}
/* 8 */
if (t>=70) {
_root.звезда8.play();
_root.звезда8._alpha = 90;
}
if (t>=290) {
_root.звезда8.stop();
_root.звезда8._alpha = 20;
}
/* 9 */
if (t>=80) {
_root.звезда9.play();
_root.звезда9._alpha = 90;
}
if (t>=295) {
_root.звезда9.stop();
_root.звезда9._alpha = 20;
}
/* 10 */
if (t>=90) {
_root.звезда10.play();
_root.звезда10._alpha = 90;
}
if (t>=300) {
_root.звезда10.stop();
_root.звезда10._alpha = 20;
}
/* 11 */
if (t>=100) {
_root.звезда11.play();
_root.звезда11._alpha = 90;
}
if (t>=305) {
_root.звезда11.stop();
_root.звезда11._alpha = 20;
}
/* 12 */
if (t>=110) {
_root.звезда12.play();
_root.звезда12._alpha = 90;
}
if (t>=310) {
_root.звезда12.stop();
_root.звезда12._alpha = 20;
}
/* 13 */
if (t>=120) {
_root.звезда13.play();
_root.звезда13._alpha = 90;
}
if (t>=315) {
_root.звезда13.stop();
_root.звезда13._alpha = 20;
}
/* 14 */
if (t>=130) {
_root.звезда14.play();
_root.звезда14._alpha = 90;
}
if (t>=320) {
_root.звезда14.stop();
_root.звезда14._alpha = 20;
}
/* 15 */
if (t>=140) {
_root.звезда15.play();
_root.звезда15._alpha = 90;
}
if (t>=325) {
_root.звезда15.stop();
_root.звезда15._alpha = 20;
}
/* 16 */
if (t>=150) {
_root.звезда16.play();
_root.звезда16._alpha = 90;
}
if (t>=330) {
_root.звезда16.stop();
_root.звезда16._alpha = 20;
}
/* 17 */
if (t>=160) {
_root.звезда17.play();
_root.звезда17._alpha = 90;
}
if (t>=335) {
_root.звезда17.stop();
_root.звезда17._alpha = 20;
}
/* 18 */
if (t>=170) {
_root.звезда18.play();
_root.звезда18._alpha = 90;
}
if (t>=340) {
_root.звезда18.stop();
_root.звезда18._alpha = 20;
}
/* 19 */
if (t>=180) {
_root.звезда19.play();
_root.звезда19._alpha = 90;
}
if (t>=345) {
_root.звезда19.stop();
_root.звезда19._alpha = 20;
}
/* 20 */
if (t>=190) {
_root.звезда20.play();
_root.звезда20._alpha = 90;
}
if (t>=350) {
_root.звезда20.stop();
_root.звезда20._alpha = 20;
}
/* 21 */
if (t>=200) {
_root.звезда21.play();
_root.звезда21._alpha = 90;
}
if (t>=355) {
_root.звезда21.stop();
_root.звезда21._alpha = 20;
}
/* 22 */
if (t>=210) {
_root.звезда22.play();
_root.звезда22._alpha = 90;
}
if (t>=360) {
_root.звезда22.stop();
_root.звезда22._alpha = 20;
}
/* 23 */
if (t>=220) {
_root.звезда23.play();
_root.звезда23._alpha = 90;
}
if (t>=365) {
_root.звезда23.stop();
_root.звезда23._alpha = 20;
}
/* 24 */
if (t>=230) {
_root.звезда24.play();
_root.звезда24._alpha = 90;
}
if (t>=370) {
_root.звезда24.stop();
_root.звезда24._alpha = 20;
}
/* 25 */
if (t>=240) {
_root.звезда25.play();
_root.звезда25._alpha = 90;
}
if (t>=375) {
_root.звезда25.stop();
_root.звезда25._alpha = 20;
}
t += 1;
if (t>=380) {
t = 0;
}
};

sad.gif


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 7.09.2011 - 00:19
Сообщение #13


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4957
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



Всегда пожалуйста, dimaho.

Молодец, что разобрался с этим кодом и изучил упомянутый мною метод. Только ты не совсем верно записал код - у тебя ведь не подряд идут мувиклипы (при t>=10 и при t>=20 - которые у тебя стали "t>=1" и "t>=10"), а через раз. Вот тебе правильный сокращённый код согласно приведённому тобою коду (это для t>=1, а для t>=10 сделай аналогично).
Код
if (t>=1) {
    for (i=1; i<=11; i+=2) {
        _root["звезда"+i].stop();
        _root["звезда"+i]._alpha = 20;
    }
    for (i=2; i<=12; i+=2) {
        _root["звызда"+i].play();
        _root["звызда"+i]._alpha = 90;
    }
}

Замечу, что блоки условного оператора у тебя поставлены в неверном порядке (что в длинном, что в коротком коде). Т.к. условия t>=1 стоит первым, то оно срабатывает всегда, на каждом показе кадра, а второе условие уже срабатывает лишь когда t>=10 (т.е. первое условие и код в блоке if делают лишнюю работу). Поэтому тебе нужно или поменять их местами, или переделать условные операторы, чтобы каждый блок кода срабатывал лишь в нужное время.

Цитата
А вот такой код как сделать короче?

Здесь воспользуйся тем же хэшевым методом. Первые 26 строк ты замени на следующие строки (а как другую часть кода укоротить, то это уже тебе домашнее задание):
Код
var t = 0;
for (i=1;i<=25;i++) {
    _root["звезда"+i]._alpha = 15;
}


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 7.09.2011 - 19:12
Сообщение #14


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



Цитата(MustLive @ 7.09.2011 - 01:19) *
Всегда пожалуйста, dimaho.

Молодец, что разобрался с этим кодом и изучил упомянутый мною метод. Только ты не совсем верно записал код - у тебя ведь не подряд идут мувиклипы (при t>=10 и при t>=20 - которые у тебя стали "t>=1" и "t>=10"), а через раз.

Не так. Мувики разделены на две группы - через один ( звЕзда - чётные, и звЫзда - нечётные ), но твой пример мне нравится больше, так как он грамотнее. Код уже изменён smile.gif .

Цитата(MustLive @ 7.09.2011 - 01:19) *
..... (а как другую часть кода укоротить, то это уже тебе домашнее задание):

А подскажи, MustLive, пожалуйста, про вторую часть, которую надо сделать короче. sad.gif

Сообщение отредактировал dimaho - 7.09.2011 - 19:27


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 14.09.2011 - 00:22
Сообщение #15


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4957
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



Цитата
Код уже изменён smile.gif.

Молодец, используй только грамотные подходы wink.gif. Таким образом код будет оптимизированным (для более быстрого исполнения) и более читабельным.

dimaho, я тебе уже объяснил для первого примера кода как оптимизировать, а также показал на примере второго кода (оптимизировав его часть) как это нужно делать. За тебя твою работу делать никто не будет smile.gif - или сам оптимизируй свой код, или изначально пиши его грамотно, тогда не придётся заниматься оптимизацией. Если ты видишь, что ты никак не можешь циклами код укоротить, значит полностью переписывай алгоритм (чтобы он изначально был лаконичным). Или же оставляй как есть, если тебя это устраивает.


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 15.09.2011 - 10:56
Сообщение #16


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



что то типа этого (всё равно подсказали, а не сам додумался) huh.gif
CODE
var t = 0;
var i;
for (i=1; i<=25; i++) {
_root["звезда"+i]._alpha = 15;
}
_root.onEnterFrame = function(упс) {
for (var i = 1; i<=25; i++) {
if (t>=1) {
_root['звезда'+i].stop();
_root['звезда'+i]._alpha = 20;
}
if (t>=5+(i*4)) {
_root['звезда'+i].play();
_root['звезда'+i]._alpha = 90;
}
if (t>=180-(i*2)) {
_root['звезда'+i].stop();
_root['звезда'+i]._alpha = 20;
}
}
t += 1;
if (t>=180) {
t = 0;
}
};

А теперь, вот, хотелось бы кажатием какой либо кнопки остановить всю функцию, и запустиь другую... Тут, понятно, за меня не кто не чего делать не будет, но хоть подскажите, где почитать можно, или пример кода huh.gif

Сообщение отредактировал dimaho - 15.09.2011 - 11:42


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 16.09.2011 - 23:29
Сообщение #17


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4957
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



Цитата
всё равно подсказали, а не сам додумался

Работай над собой, изучай AS и скоро сам сможешь додумываться до большинства вещей при программировании на AS.

Цитата
_root.onEnterFrame = function(упс) {

Что за "упс", убери его из кода, оставь там лишь пустые скобки.

Цитата
if (t>=1) {

Опять неверная с точки зрения производительности последовательность условных операторов. Ещё раз прочти то, о чём я писал ранее.

Цитата
А теперь, вот, хотелось бы кажатием какой либо кнопки остановить всю функцию, и запустиь другую

Касательно функции, я так понимаю ты имеешь в виду вышеупомянутую анонимную функцию установленную на onEnterFrame. Ибо если ты вообще о какой-либо функции (с именем), то можешь в коде вызывать её по имени. Укажи функцию function Zvezda() (с нужным кодом) и потом в обработчике нажатия на кнопку вызывай её Zvezda().

Чтобы решить данную задачу тебе нужно на кнопку установить обработчик нажатия (весь форум усыпан примерами кода обработчиков нажатия), а также удалить (или переопределить) функцию на onEnterFrame, что тоже уже рассматривалось. Поэтому, если ты не знаешь как сделать что-то из вышесказанного, то почитай примеры на форуме.

Подсказка: можешь использовать обработчик как onPress, так и onRelease - оба тебе подойдут smile.gif. Сделай нужные кпопки, присвой им имена в панели свойств (btn1 и т.д.) и указывай в кадре обработчики:
Код
_root.bnt1.onRelease = function() {
// код срабатывающий при нажатии на кнопку bnt1
}


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 17.09.2011 - 13:45
Сообщение #18


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645



Спасибо, MustLive. Вот так получилось smile.gif .
CODE
var t = 0;
var i;
for (i=1; i<=25; i++) {
_root["звезда"+i]._alpha = 10;
}
_root.fon._alpha = 80;
_root.звезда13.onRelease = function() {
_root.onEnterFrame = function() {
for (var i = 1; i<=25; i++) {
if (t<=180) {
_root['звезда'+i].stop();
_root['звезда'+i]._alpha = 10;
}
if (t>=5+(i*4)) {
_root['звезда'+i].play();
_root['звезда'+i]._alpha = 90;
}
if (t>=180-(i*2)) {
_root['звезда'+i].stop();
_root['звезда'+i]._alpha = 10;
}
}
t += 1;
if (t>=180) {
t = 0;
}
};
};
_root.звезда3.onRelease = function() {
_root.onEnterFrame = function() {
for (var i = 1; i<=25; i++) {
_root['звезда'+i].stop();
_root['звезда'+i]._alpha = 10;
}
};но
};

В общем этого и добивался... Теперь вот тут разобраться не могу sad.gif . Или всё правильно? Работает, но сдаётся мне, написано как то кривовато huh.gif
CODE
_root.звезда13.onRelease = function() {
_root.onEnterFrame = function() {
for (var i = 1; i<=25; i++) {
_root['звезда'+i].stop();
_root['звезда'+i]._alpha = 10;
}
for (var i = 11; i<=15; i += 1) {
_root['звезда'+i].play();
_root['звезда'+i]._alpha = 90;
}
for (var i = 3; i<=25; i += 5) {
_root['звезда'+i].play();
_root['звезда'+i]._alpha = 90;
}
};
};


Сообщение отредактировал dimaho - 17.09.2011 - 23:20


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
dimaho
сообщение 23.09.2011 - 00:18
Сообщение #19


Новичок
*

Группа: Пользователь
Сообщений: 8
Регистрация: 2.09.2011
Из: г. Ярославль
Пользователь №: 10645




MustLive писал:
Цитата(MustLive @ 16.09.2011 - 23:29) *
Касательно функции, я так понимаю ты имеешь в виду вышеупомянутую анонимную функцию установленную на onEnterFrame. Ибо если ты вообще о какой-либо функции (с именем), то можешь в коде вызывать её по имени. Укажи функцию function Zvezda() (с нужным кодом) и потом в обработчике нажатия на кнопку вызывай её Zvezda().

Как назвать функцию именем и как её потом вызывать? Каков синтаксис написания кода? MustLive, подскажи пример, пожалуйста.


--------------------
7 сентября 2011года разбился самолет Як-42 на борту которого находился весь основной состав, тренерский штаб и обслуживающий персонал хоккейного клуба КХЛ "Локомотив" (Ярославль) - всего 45 человек, считая восемь членов экипажа. погибли ВСЕ.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Lissabon
сообщение 4.10.2011 - 22:59
Сообщение #20


Новичок
*

Группа: Новичок
Сообщений: 1
Регистрация: 4.10.2011
Пользователь №: 10700



помогите оптимизировать:

if (t>=156) {
_root.tekst3.textColor = 0xFB786A;
}
if (t>=157) {
_root.tekst3.textColor = 0xFA4330;
}
if (t>=158) {
_root.tekst3.textColor = 0xCF1A05;
}
if (t>=159) {
_root.tekst3.textColor = 0x8D1103;
}

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 29.07.2014 - 07:50