Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   get MovieClip._x from class (http://www.flasher.ru/forum/showthread.php?t=93295)

screamge 18.03.2007 02:56

да...ну там естественно импорт Tween и TweenEasing, я могу и весь класс выложить но остальные строчки вроде к проблеме не относятся

etc 18.03.2007 03:28

Вроде или нет, выкладывай.

screamge 18.03.2007 03:36

Код:

import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.filters.BlurFilter;

class Screamge.Motion.BTwin {
       
        private var it:MovieClip;
       
        private var xcor:Number;
        private var ycor:Number;
        private var frame:Number;
        private var times:Number;
        private var currentypos:Number;
        private var blurer:Boolean = false;
       
        static private var xblur:Number = 3;
        private var yblur:Number;
        static private var quality:Number = 5;
       
        public var motype:Function;
       
       
        public function showtips (){
                trace ("Elastic")
                trace ("Bounce")
                trace ("Back")
                trace ("Strong")
        }
       
        public function setBlur (){
                blurer = true;
        }
       
        public function setType (nam:String, ease:String){
                if (nam == "Elastic"){
                        if (ease == "In"){
                                motype = Elastic.easeIn;
                        }
                        else if (ease == "Out"){
                                motype = Elastic.easeOut;
                        }
                        else if (ease == "InOut"){
                                motype = Elastic.easeInOut;
                        }
                }
                else if (nam == "Bounce"){
                        if (ease == "In"){
                                motype = Bounce.easeIn
                        }
                        else if (ease == "Out"){
                                motype = Bounce.easeOut
                        }
                        else if (ease == "InOut"){
                                motype = Bounce.easeInOut
                        }
                }
                else if (nam == "Back"){
                        trace ("back")
                        if (ease == "In"){
                                motype = Back.easeIn;
                        }
                        else if (ease == "Out"){
                                motype = Back.easeOut;
                        }
                        else if (ease == "InOut"){
                                motype = Back.easeInOut
                        }
                }
                else if (nam == "Strong"){
                        if (ease == "In"){
                                motype = Strong.easeIn;
                        }
                        else if (ease == "Out"){
                                motype = Strong.easeOut
                        }
                        else if (ease == "InOut"){
                                motype = Strong.easeInOut
                        }
                }
                else {
                        motype = None.easeNone;
                }
        }
       
        public function setName (nam:MovieClip){
                it = nam;
        }
       
       
        public function initMove (xcord:Number, ycord:Number, timemove:Number, framecount:Number){
                times = timemove;
                xcor = xcord;
                ycor = ycord;
                frame = framecount;
               
                if (times == 0){
                var itmove:Tween = new Tween (it, "_x", motype, it._x , xcor, frame);
                var itmove:Tween = new Tween (it, "_y", motype, it._y, ycor, frame)
                }
                else {
                        var it1move:Tween = new Tween (it, "_x", motype , it._x , xcor, times, true);
                        var it2move:Tween = new Tween (it, "_y", motype , it._y, ycor, times, true);
                        if (blurer == true){
                                it2move.onMotionChanged = function (){
                                        trace (this.position)
                                        yblur = ycor - this.position
                                        var setBlur:BlurFilter = new BlurFilter (xblur, yblur,quality)
                                        var filar:Array = new Array ()
                                        filar.push(setBlur)
                                        it.filters = filar;
                                }
                        }
                }
        }
}


screamge 18.03.2007 04:01

Код:

it2move.onMotionChanged = function (){
        trace (this.position)
        yblur = ycor - this.position
trace (ycor)
        var setBlur:BlurFilter = new BlurFilter (xblur, yblur,quality)
        var filar:Array = new Array ()
        filar.push(setBlur)
        it.filters = filar;
        }

почемуто выводит undefined хотя объявляется при создании класса

iNils 18.03.2007 04:08

Потому что область видимости не та. Воспользуйтесь классом Delegate

screamge 18.03.2007 04:11

дело в том (я только сейчас заметил) что даже если прописывать yblur значение, то класс как не работал в плане блюра так и не работает! я не жду готовых решений просто действительно интересно почему так происходит...а про delegate как раз сейчас и читаю

iNils 18.03.2007 04:14

trace (it) тоже даст undefined

screamge 18.03.2007 04:26

всем спасибо, всё понятно

etc 18.03.2007 04:29

http://flasher.ru/forum/showthread.php?t=90800 про Delegate.

screamge 18.03.2007 06:18

НЕ ну я так не играю...я прочёл всё что было по delegate...и нифига не понял...люди добрые если кто может объяснить на моём примере как пользоваться этим delegate буду очень признателен...у меня пропадает то одно значение то второе (((


Часовой пояс GMT +4, время: 04:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.