![]() |
|
||||||||||
|
|
|
|||||
|
легко...
package { import flash.display.MovieClip; import flash.events.Event; /** * ... * @author ... */ public class NewClass extends MovieClip { public function NewClass() { super(); ///сразу останавливаемся this.stop(); /// Дожидаемся когда нас добавят на сцену if (stage) init(); else this.addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { this.removeEventListener(Event.ADDED_TO_STAGE, init); this.addEventListener(Event.ENTER_FRAME, enterFrameListener); ///Поехали !!! this.play(); } /** * Слуашем вхождение в очредной фрейм * @param e */ private function enterFrameListener(e:Event):void { switch ( this.currentFrame ) { /// если это 35 фрейм... case 35 : /// если рандомное число больше .5 переходим к третьему кадру if ( Math.random() > .5 ) this.gotoAndPlay(3); break; /// если текущий фрейм - последний, останавливаем. case this.totalFrames : ///this.stop(); this.gotoAndStop(1); /// например... this.removeEventListener(Event.ENTER_FRAME, enterFrameListener); this.addEventListener(Event.ADDED_TO_STAGE, init); } } } } мувика... Вы можете залинковать на этот класс столько мувиков, сколько захотите, если их поведение схоже, и не только в одном, отдельно взятом приложении. Скажите - ну, разве не прелесть? ![]() Добавлено через 1 час 30 минут Ваша цепочка рассуждений не совсем верна. Высокоуровневые языки, к которым относится ActionScript, существуют для упрощения и ускорения разработки приложений. Низкоуровневые, которые вы подразумеваете под бинарным файлом, позволяют упростить и ускорить приложение , но это, наоборот, делает разработку приложений более сложной и более медленной. Последний раз редактировалось fish_r; 15.06.2011 в 03:26. |
|
|||||
|
Регистрация: Oct 2006
Сообщений: 26
|
..допустим, что в одном фрейме мне нужно выполнить 'stop()', во втором запустить определенную функцию а в третьем вернуться назад и всё это повторить. Десять клипов с абсолютно разным кодом в каждом фрейме. А если клипов 100?
Switch-case нам в помощь? Хорошо.. Но при этом всё это мне нужно синхронизировать с происходящим в клипе - с графикой. Классы это класно %), кто спорит? И очень удобно! Но если я чутка исправил анимацию добавив лишний кадр или три? Снова искать и исправлять класс..Flash даёт удобство и универсальность решений. Нужно только понять суть происходящего. Так..но ведь можно привязать 'switch-case' к лэйблам? Отлично! И найти еще сотню-другую отличных решений.. И записать всё в один byte array - тоже одно из этих решений. А в верности моей цепочки рассуждений я усомнюсь сам.. Ведь сомнение и породило двойственность. А в двойственности суть бинарного кода.. Последний раз редактировалось SiDDD; 22.06.2011 в 18:28. |
|
|||||
|
Цитата:
из этих 100 клипов.... Смею вас уверить, что когда начнете пользоваться классами то все меньше будете использовать многофреймовые символы, если вообще будете... Последний раз редактировалось fish_r; 23.06.2011 в 11:16. |
|
|||||
|
Вопрос по теме: как создать с помощью кода вложенный клип
Например: родительский экземпляр клипа - окно, а его дочерний экземпляр клипа - комнатный_цветок. P.S. Если я размещу два клипа с помощью Клип "комнатный_цветок" будет реагировать на события мыши? |
|
|||||
|
Регистрация: Nov 2009
Сообщений: 300
|
Такой код не нравится?
На события будет реагировать если слушатель прицепишь. |
|
|||||
|
Такой код не нравится Flash... Выдало ошибку 1120
Scene 1, Layer 'Layer 1', Frame 1, Line 13 1120: Access of undefined property окно Последний раз редактировалось Шурик_2; 20.08.2011 в 03:16. |
|
|||||
|
Регистрация: Nov 2009
Сообщений: 300
|
Новичок?
![]() Кириллица в коде это lol. Я надеялся что это только для примера. В addChild нужно передавать не то что ты задумал в голове, а мувиклип из библиотеки. Мувиклип нужно экспортировать для actionscript, делается это в его свойствах. В поле Class, пишешь имя, которое будешь использовать в addChild. Надеюсь что-то понятно. |
|
|||||
|
Цитата:
Я не полный новичок в AS 3.0.window_mc.addChild(flower) //здесь ошибка, так как addChild не является свойством или методом класса MovieClip! ![]() |
|
|||||
|
Регистрация: Nov 2009
Сообщений: 300
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 01:53. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|