![]() |
|
||||||||||
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
Доброе время суток!
Пишу класс, расширяющий MovieClip, который будет применять к своим экземплярам простую программную анимацию. В конструкторе класса имеется вот такой код: и допустим есть вот такое свойство класса: function doAnimate(gain:Number, modifyType:String, uprugost:Number, tormoz:Number):Void { //modifyType Какой должен быть тип переменной, чтоб потом воспринималась строка как код Экшена? ...... this.onEnterFrame = function() { ..... aPrug = (opornTochka-gain)/uprugost; vPrug += aPrug; modifyType += vPrug; //а здесь надо чтоб было свойство клипа this._x, которое легко потом подмненить на любое другое. vPrug *= tormoz; if (aPrug == 0) { delete this.onEnterFrame; trace("удалили"); } }; ...... В данном случае можно написать и this._x вместо modifyType, но когда я захочу сделать так, чтоб функция принимала, например, _xscale и ещё кучу свойств, то их каждый раз описывать? Или вот, к примеру, был похожий случай недавно: из массива функция случайно выбирает имя звука и при попытке его вопроизведения ничего не происходит... Здесь тоже явно проблема с типом переменной. И описывать каждый звук замучиешься... их более 50.. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
|
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
Я правильно понял?
..... this.onRollOver = function() { doAnimate(this._x,"._x",25,.88); }; ..... Код AS1/AS2: function doAnimate(gain:Number, modifyType:String, uprugost:Number, tormoz:Number):Void { ...... this.onEnterFrame = function() { ..... aPrug = (opornTochka-gain)/uprugost; vPrug += aPrug; this["modifyType"] += vPrug; vPrug *= tormoz; if (aPrug == 0) { delete this.onEnterFrame; trace("удалили"); } }; ...... |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
|
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
udaaff, Спасибо!
dimarik, а где можно достать готовые классы? а то я каждый раз с нуля пишу.... |
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
Всё правильно) прошу прощение за наглость, просто думал у каго-нить чего-нить уже в закладках есть
|
![]() |
![]() |
Часовой пояс GMT +4, время: 16:32. |
|
|
« Предыдущая тема | Следующая тема » |
|
|