|
|
|||||
Guest
Сообщений: n/a
|
класы на AS2 & Tween
Народ, помогите.
Eсть функция: function animate(t:Number) { var i:Number = 0; while (anim_clip['animation_'+i]!=undefined) { i++; } anim_clip.createEmptyMovieClip('animation_'+i,anim_clip.getNextHighestDepth()); anim_clip['animation_'+i].onEnterFrame = function() { if ((t+speed)<maxVal) { t += speed; }else { t = maxVal; } } } Пытаюсь вызвать её: a.animate(column_clip._height); нифига не происходит... Помогите найти и исправить ошибку, pls |
|
|||||
Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
|
Вот с такой инициализацией:
вызов функции "animate" выполняется успешно.
__________________
flash/flex/unity |
|
|||||
Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
|
Что это такое?
Слушай, пиши как у тебя создаётся экземпляр класса . Экстрасенсов здесь нет. А после и поговорим, что у тебя не работает.
__________________
flash/flex/unity |
|
|||||
Guest
Сообщений: n/a
|
Цитата:
вызов: //------------ create clip: _root.createEmptyMovieClip('2DColumn',_root.getNextHighestDepth()); _root['2DColumn'].lineStyle(1,0); _root['2DColumn'].beginFill(0); _root['2DColumn'].moveTo(0,0); _root['2DColumn'].lineTo(100,0); _root['2DColumn'].lineTo(100,1); _root['2DColumn'].lineTo(0,1); _root['2DColumn'].lineTo(0,0); _root['2DColumn'].endFill(); //------------ animate clip: var a:animation = new animation('easy',10,100,_root['2DColumn']); a.animate(_root['2DColumn']._height); |
|
|||||
Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
|
В идее говоришь?
По моему так будет намного проще: import mx.transitions.Tween; var $easeType:Function = mx.transitions.easing.Strong.easeInOut; var newTween:Tween = new mx.transitions.Tween (_mc, "_xscale", $easeType, 0, 100, 2, true); var newTween:Tween = new mx.transitions.Tween (_mc, "_yscale", $easeType, 0, 100, 2, true); // Где _mc - любой мувик class animation { private var anim_clip:MovieClip; private var type:String; private var speed:Number; private var maxVal:Number; //-------------------------------------------------------------------------------- public function animation (t:String, s:Number, max:Number, target_mc:MovieClip) { type = t; speed = s; maxVal = max; anim_clip = target_mc; } //-------------------------------------------------------------------------------- public function animate (param:String):Void { var mc:MovieClip = anim_clip.createEmptyMovieClip ('animation', anim_clip.getNextHighestDepth ()); mc.args = arguments; mc._class = this; mc.onEnterFrame = function () { if ((mc._class.anim_clip[mc.args[0]] + mc._class.speed) < mc._class.maxVal) { mc._class.anim_clip[mc.args[0]] += mc._class.speed; } else { mc._class.anim_clip[mc.args[0]] = mc._class.maxVal; mc.onEnterFrame = undefined; } }; } } Но код твой - полная бредятина.
__________________
flash/flex/unity Последний раз редактировалось nuran; 01.12.2004 в 08:47. |
Часовой пояс GMT +4, время: 21:19. |
|
« Предыдущая тема | Следующая тема » |
|
|