![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2002
Адрес: https://webhamster.ru
Сообщений: 107
|
Здравствуйте!
Раньше (вроде на этом форуме) читал, что мувик-класс можно приаттачить двумя способами. Первый способ - с большим расходом памяти, когда мувик просто тупо приаттачивается. При этом в память грузятся все свойства и методы класса. Второй способ - как то хитро создаются ссылки на базовый (?) мувик, и в памяти хранятся только свойства, а методы в память не дублируются. Тем самым сильно сокращается занимаемая память, особенно если дублируется много объектов. Щас бросился искать - не могу найти. Искал в статьях, искал на форуме. Видимо я не могу сформулировать что мне надо, ничего толком не нашол. Чтобы вопрос был более предметным, вот всем известный пример - класс треугольника. Этот код лежит в первом кадре отдельного мувика, которому в Linkage Propreties присвоен идентификатор libtriangle. #initclip
function TriangleClass () {
this.cobj = new Color(this);
this.update();
}
// Позволяем объекту TriangleClass наследовать свойства MovieClip
TriangleClass.prototype = new MovieClip();
// Обновляем внешний вид треугольника.
TriangleClass.prototype.update = function () {
if (this.applyTint) {
this.cobj.setRGB(this.tcolor);
}
this._xscale = 10 * this.tbase;
this._yscale = 10 * this.theight;
}
// Связываем класс с мувиклипом
Object.registerClass("FTriangle", TriangleClass);
#endinitclip
А как можно приаттачить этот класс вторым способом? То есть, чтобы не шел расход памяти на метод update(), ведь эта функция одинакова для всех экземплятов. Напишите пожалуста код или дайте плиз ссылку где про это толком написано. Спасибо. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
duplicateMovieClip? =)
|
![]() |
![]() |
Часовой пояс GMT +4, время: 20:36. |
|
|
« Предыдущая тема | Следующая тема » |
|
|