|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
не проще ли сделать вещатель класса и повесить все мувики на него слушателями?
вот пример вещателя класса: // CONSTRUCTOR MyClass = function () { this.constructor.addListener(this); }; // SET PARENT CLASS tmp = MyClass.prototype=new MovieClip(); // REGISTER MOVIECLIPS Object.registerClass("my_mc", MyClass); // BROADCASTER INITIALIZE ASBroadcaster.initialize(MyClass); MyClass.message = function() { this.broadcastMessage.apply(this, arguments); }; // SET CLASS FUNCTIONS tmp.onSetProperty = function() { var i, obj = arguments[0]; for (i in obj) {this[i] = obj[i];} this._y = random(300); }; tmp.count = function() { this.constructor.counter++;}; tmp.getNumberOfBrothers = function() { this.constructor.counter = 0; this.constructor.message("count"); return this.constructor.counter; }; // TEST _root.attachMovie("my_mc", "my1_mc", 1); _root.attachMovie("my_mc", "my2_mc", 2); _root.attachMovie("my_mc", "my3_mc", 3); _root.attachMovie("my_mc", "my4_mc", 4); MyClass.message("onSetProperty", {_alpha:50, _x:300}); // trace trace(_root.my1_mc.getNumberOfBrothers()); trace(MyClass._listeners.length); _root.my4_mc.removeMovieClip(); trace(MyClass._listeners.length); trace(_root.my1_mc.getNumberOfBrothers()); this.constructor.message("count"); - вызываем функцию count во всех мувиках класса или так: this.constructor.message("onSetProperty", {_alpha:50, _xscale:80}); - с передачей аргументов. |
|
|||||
Регистрация: Dec 2002
Адрес: Живу вот где-то
Сообщений: 493
|
Вот вот!!!!
*BitSky*
Это похоже на то, что мне нужно! Только вот не пойму, как мне поставить слухача именно на нужный мувик (последний в массиве). BitSky - может перелопатишь код в исходнике, применительно к твоему варианту??? Спасибо! |
|
|||||
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
- если ты подержишь мою лопату %)
на самом деле не нужно отдельно вычислять слухача, все мувики класса слухачи. просто есть признак по которому ты вычисляешь, кто же у тебя последний. Цитата:
когда каждый ролик отыграет, свое он говорит: var num = this.constructor.last_num++ if (num==this.constructor.count){ trace(this+ " is end") } примерно так |
|
|||||
Регистрация: Dec 2002
Адрес: Живу вот где-то
Сообщений: 493
|
BitSky Оки! Вроде начал врубаться, не силен я покеда в ООП... классы там и тд. Спасибоньки! Буду пробовать твой код!
|
|
|||||
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
а я думал, что тв МОНСТЕР
|
|
|||||
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
а я думал, что ты МОНСТЕР
|
Часовой пояс GMT +4, время: 02:00. |
|
« Предыдущая тема | Следующая тема » |
|
|