Просмотр полной версии : Как проще всего добавить мувику пяток новых свойств?
сабж.
Например я генерю триста мувов. Каждому надо задать некие доп.параметры, в том числе ссылку на объект класса, который его породил (может тип параметра и не принципиален, я не знаю).
если ты их генеришь, сделать класс наследующий от MovieClip в котором ты и определишь ити пяток свойств, ну и все при генерации, делаешь сгенерированный мув наследником этого самого класса
Эээ.. не совсем понятно.
Я делаю, к примеру, _root.createEmptyMovieClip(..)
И этот метод генерит мувик. А надо чтоб он сгенерил объект моего класса, так, чтоб я потом мог по _root["mov_name"] достать до нужного объекта...
Но эт чёт не то, чую... =)
AS файл:
class myMov extends MovieClip{
<свойства>
}
А в флэш-документе:
Var my_new_movie:MovieClip = new MyMov;
Так. У класса _root (он же муви клип, почти) есть метод createEmptyMovieClip(..). Мне надо изменить этот метод так, чтобы генерящийся мувик имел расширенный мной набор свойств. Что вы мне говорите?
class TRomaXMLMenu_ItemMov extends MovieClip{}
var bbb:MovieClip = new TRomaXMLMenu_ItemMov();
_root["bbb"]._x=200;
_root["bbb"]._y = 300;
_root["bbb"].attachMovie("paperclip", "paperclip", 1);
И что, вы таки хотите сказать что эта байда должна работать? быть того не может. (она и не работает)
AS файл:
class myMov extends MovieClip{
<свойства>
}
А в флэш-документе:
Var my_new_movie:MovieClip = new MyMov;
и че получалось так мувик создать?
должен вызываться правильный конструктор. А именно, createEmptyMovieClip(..). Но этот метод треьует указания идентификатора первым параметром, а параметро должен быть объект моего класса! При дальнейшем движении мысли в моей голове настает сумрак.
в кадре:
for (var i:Number = 0; i < 100; i++) {
var mc:MovieClip = this.createEmptyMovieClip ('mc' + i, i);
mc.__proto__ = Box.prototype;
mc.constructor = Box;
mc.constructor.apply (mc);
mc._x = Math.random () * Stage.width;
mc._y = Math.random () * Stage.height;
}
в файле Box.as:
class Box extends MovieClip {
public function Box () {
var width:Number = 100 * Math.random ();
var height:Number = 100 * Math.random ();
var color:Number = Math.pow (2, 32) * Math.random ();
var alpha:Number = Math.random () * 100;
beginFill (color, alpha);
moveTo (0, 0);
lineTo (width, 0);
lineTo (width , height);
lineTo (0, height);
lineTo (0, 0);
endFill ();
}
public function test1 () {
trace ('>> test1');
}
public function test2 () {
trace ('>> test2');
}
public function test3 () {
trace ('>> test3');
}
public function onRollOver () {
_alpha = 50;
}
public function onRollOut () {
_alpha = 100;
}
}
1. А что, обязательно createEmptyMovieClip(..)? Если ты создашь отдельный класс, расширяющий МувиКлип, то достаточно обьявить новый символ обьектом этого класса, чтобы он считался мувиком.
2. Для того, чтобы оно работало нужно сначала подключить внешний as файл с твоим классом. Командой Import. Тогда и мувик создастся, и работать будет.
1. А что, обязательно createEmptyMovieClip(..)? Если ты создашь отдельный класс, расширяющий МувиКлип, то достаточно обьявить новый символ обьектом этого класса, чтобы он считался мувиком.
2. Для того, чтобы оно работало нужно сначала подключить внешний as файл с твоим классом. Командой Import. Тогда и мувик создастся, и работать будет.
А ты пробывал так создать?
Мувикилипы, текстфилды можно создать только через методы родительского мувиклипа.
2reyst: Мне для начала нужно объявить мой объект расширенного класса МувиКлип объектом _root.
И что значит объявить символ объектом класса... attachMovie я понимаю. А объявить объектом - нет.
2 7thsky. Первый раз такое вижу... пойду копаться.. thx a lot, с меня жбан алкоголя..
7thsky™: а??
2reyst: Мне для начала нужно объявить мой объект расширенного класса МувиКлип объектом _root.
И что значит объявить символ объектом класса... attachMovie я понимаю. А объявить объектом - нет.
да? в моем примере чего то не понятно: как добавить "пяток свойств" твоим мувам?
это было запоздалое сообщение, пока я его писал тут всё изменилось =)
Твой пост тоже =) Там было чтото типа "выавыавыа" :D
еще раз перечитай этот тред
Чтот у меня никак не получается вызвать конструктор с параметрами..
movie.__proto__ = TMyClass.prototype;
movie.constructor = TMyClass(val1, val2);
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.