![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Не пойму, что за изврат, почему нельзя твинить само свойство?
|
|
|||||
|
Цитата:
Последний раз редактировалось miramax; 11.11.2006 в 14:45. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А «плавное изменение свойства» — это не твин?
Код, который ты продемонстрировал один к одному похож на Tween из AS2. |
|
|||||
|
Цитата:
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Всё равно не понимаю, нафига нужны всякие addProperty, если свойство — простое?
Твин, в конце концов, можно написать самому. А я даже подумываю насчёт порта на AS3, чем сейчас и займусь (может и изобретаю велосипед, но тем не менее). |
|
|||||
|
Цитата:
|
|
|||||
|
Регистрация: Aug 2006
Сообщений: 70
|
Не. По любому надо пользовать Proxy. Иначе никак.
С произвольным объектом такое учинить можно только через какое-нибудь извращение типа
public class MyTween extends Sprite
{
private var _target:Object;
private var _speed:Number;
private var _value:Number;
private var _destination:Number;
private var _propName:String;
public function MyTween(obj:Object, propName:String, speed:Number) {
_speed = speed;
_target = obj;
_propName = propName;
_value = obj[propName];
addEventListener(Event.ENTER_FRAME, updateTween);
}
private function updateTween(event:Event):void {
if (_target[_propName] != _value) {
_destination = _target[_propName];
_target[_propName] = _value;
}
var delta:Number = _destination - _value;
if (Math.abs(delta) < _speed) {
_value = _destination;
} else {
_value += _speed * Math.abs(delta) / delta
}
_target[_propName] = _value;
}
}
![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
miramax, я имел ввиду переписать Tween на AS3, но что-то стало лень)
|
|
|||||
|
Цитата:
. Хочу внести ещё работу с событиями.Последний раз редактировалось miramax; 12.11.2006 в 21:34. |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:13. |
|
|
« Предыдущая тема | Следующая тема » |
|
|