コード例 #1
0
ファイル: exUIEffect.cs プロジェクト: knoxHuang/ex2d-dev
    ///////////////////////////////////////////////////////////////////////////////
    // functions
    ///////////////////////////////////////////////////////////////////////////////

    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------

    void Awake()
    {
        exUIControl ctrl = GetComponent <exUIControl>();

        if (ctrl)
        {
            if (scaleInfos != null)
            {
                for (int j = 0; j < scaleInfos.Count; ++j)
                {
                    EffectInfo_Scale info = scaleInfos[j];

                    EffectState_Scale state = new EffectState_Scale();
                    state.info = info;
                    state.func = info.GetCurveFunction();
                    AddState_Scale(ctrl, state);
                }
            }

            if (offsetInfos != null)
            {
                for (int j = 0; j < offsetInfos.Count; ++j)
                {
                    EffectInfo_Offset info = offsetInfos[j];

                    EffectState_Offset state = new EffectState_Offset();
                    state.info = info;
                    state.func = info.GetCurveFunction();
                    AddState_Offset(ctrl, state);
                }
            }

            if (colorInfos != null)
            {
                for (int j = 0; j < colorInfos.Count; ++j)
                {
                    EffectInfo_Color info = colorInfos[j];

                    EffectState_Color state = new EffectState_Color();
                    state.info = info;
                    state.func = info.GetCurveFunction();
                    AddState_Color(ctrl, state);
                }
            }
        }
    }
コード例 #2
0
ファイル: exUIEffect.cs プロジェクト: knoxHuang/ex2d-dev
    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------

    public void AddEffect_Offset(exSpriteBase _target, EffectEventType _type, exEase.Type _curveType, Vector2 _to, float _duration)
    {
        exUIControl ctrl = GetComponent <exUIControl>();

        if (ctrl)
        {
            EffectInfo_Offset info = new EffectInfo_Offset();
            info.duration  = _duration;
            info.target    = _target;
            info.normal    = _target.offset;
            info.curveType = _curveType;

            EffectInfo_Offset.PropInfo propInfo = new EffectInfo_Offset.PropInfo();
            propInfo.type = _type;
            propInfo.val  = _to;
            info.propInfos.Add(propInfo);

            EffectState_Offset state = new EffectState_Offset();
            state.info = info;
            state.func = info.GetCurveFunction();
            AddState_Offset(ctrl, state);
        }
    }
コード例 #3
0
ファイル: exUIEffect.cs プロジェクト: knoxHuang/ex2d-dev
    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------

    void AddState_Offset(exUIControl _ctrl, EffectState_Offset _state)
    {
        for (int i = 0; i < _state.info.propInfos.Count; ++i)
        {
            EffectInfo_Offset.PropInfo propInfo = _state.info.propInfos[i];
            switch (propInfo.type)
            {
            case EffectEventType.Deactive:
                _ctrl.AddEventListener("onDeactive",
                                       delegate(exUIEvent _event) {
                    enabled = true;
                    _state.Begin(propInfo.val);
                });
                _ctrl.AddEventListener("onActive",
                                       delegate(exUIEvent _event) {
                    enabled = true;
                    _state.Begin(_state.info.normal);
                });
                break;

            case EffectEventType.Press:
                _ctrl.AddEventListener("onPressDown",
                                       delegate(exUIEvent _event) {
                    enabled = true;
                    _state.Begin(propInfo.val);
                });
                _ctrl.AddEventListener("onPressUp",
                                       delegate(exUIEvent _event) {
                    enabled = true;
                    _state.Begin(_state.info.GetValue(EffectEventType.Hover));
                });
                break;

            case EffectEventType.Hover:
                _ctrl.AddEventListener("onHoverIn",
                                       delegate(exUIEvent _event) {
                    enabled = true;
                    _state.Begin(propInfo.val);
                });
                _ctrl.AddEventListener("onHoverOut",
                                       delegate(exUIEvent _event) {
                    enabled = true;
                    _state.Begin(_state.info.normal);
                });
                break;

            case EffectEventType.Unchecked:
                exUIToggle toggle = _ctrl as exUIToggle;
                if (toggle != null)
                {
                    _ctrl.AddEventListener("onUnchecked",
                                           delegate(exUIEvent _event) {
                        enabled = true;
                        _state.Begin(propInfo.val);
                    });
                    _ctrl.AddEventListener("onChecked",
                                           delegate(exUIEvent _event) {
                        enabled = true;
                        _state.Begin(_state.info.GetValue(EffectEventType.Hover));
                    });
                }
                break;
            }
        }

        states.Add(_state);
    }
コード例 #4
0
ファイル: exUIEffect.cs プロジェクト: knoxHuang/ex2d-dev
    ///////////////////////////////////////////////////////////////////////////////
    // functions
    ///////////////////////////////////////////////////////////////////////////////
    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------
    void Awake()
    {
        exUIControl ctrl = GetComponent<exUIControl>();
        if ( ctrl ) {
            if ( scaleInfos != null ) {
                for ( int j = 0; j < scaleInfos.Count; ++j ) {
                    EffectInfo_Scale info = scaleInfos[j];

                    EffectState_Scale state = new EffectState_Scale();
                    state.info = info;
                    state.func = info.GetCurveFunction();
                    AddState_Scale (ctrl, state);
                }
            }

            if ( offsetInfos != null ) {
                for ( int j = 0; j < offsetInfos.Count; ++j ) {
                    EffectInfo_Offset info = offsetInfos[j];

                    EffectState_Offset state = new EffectState_Offset();
                    state.info = info;
                    state.func = info.GetCurveFunction();
                    AddState_Offset (ctrl, state);
                }
            }

            if ( colorInfos != null ) {
                for ( int j = 0; j < colorInfos.Count; ++j ) {
                    EffectInfo_Color info = colorInfos[j];

                    EffectState_Color state = new EffectState_Color();
                    state.info = info;
                    state.func = info.GetCurveFunction();
                    AddState_Color (ctrl, state);
                }
            }
        }
    }
コード例 #5
0
ファイル: exUIEffect.cs プロジェクト: knoxHuang/ex2d-dev
    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------
    void AddState_Offset( exUIControl _ctrl, EffectState_Offset _state )
    {
        for ( int i = 0; i < _state.info.propInfos.Count; ++i ) {
            EffectInfo_Offset.PropInfo propInfo = _state.info.propInfos[i];
            switch ( propInfo.type ) {
            case EffectEventType.Deactive:
                _ctrl.AddEventListener ( "onDeactive",
                                         delegate ( exUIEvent _event ) {
                                             enabled = true;
                                             _state.Begin( propInfo.val );
                                         } );
                _ctrl.AddEventListener ( "onActive",
                                         delegate ( exUIEvent _event ) {
                                             enabled = true;
                                             _state.Begin( _state.info.normal );
                                         } );
                break;

            case EffectEventType.Press:
                _ctrl.AddEventListener ( "onPressDown",
                                         delegate ( exUIEvent _event ) {
                                             enabled = true;
                                             _state.Begin( propInfo.val );
                                         } );
                _ctrl.AddEventListener ( "onPressUp",
                                         delegate ( exUIEvent _event ) {
                                             enabled = true;
                                             _state.Begin( _state.info.GetValue( EffectEventType.Hover ) );
                                         } );
                break;

            case EffectEventType.Hover:
                _ctrl.AddEventListener ( "onHoverIn",
                                         delegate ( exUIEvent _event ) {
                                             enabled = true;
                                             _state.Begin( propInfo.val );
                                         } );
                _ctrl.AddEventListener ( "onHoverOut",
                                         delegate ( exUIEvent _event ) {
                                             enabled = true;
                                             _state.Begin( _state.info.normal );
                                         } );
                break;

            case EffectEventType.Unchecked:
                exUIToggle toggle = _ctrl as exUIToggle;
                if ( toggle != null ) {
                    _ctrl.AddEventListener ( "onUnchecked",
                                             delegate ( exUIEvent _event ) {
                                                 enabled = true;
                                                 _state.Begin( propInfo.val );
                                             } );
                    _ctrl.AddEventListener ( "onChecked",
                                             delegate ( exUIEvent _event ) {
                                                 enabled = true;
                                                 _state.Begin( _state.info.GetValue( EffectEventType.Hover ) );
                                             } );
                }
                break;
            }
        }

        states.Add(_state);
    }
コード例 #6
0
ファイル: exUIEffect.cs プロジェクト: knoxHuang/ex2d-dev
    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------
    public void AddEffect_Offset( exSpriteBase _target, EffectEventType _type, exEase.Type _curveType, Vector2 _to, float _duration )
    {
        exUIControl ctrl = GetComponent<exUIControl>();
        if ( ctrl ) {
            EffectInfo_Offset info = new EffectInfo_Offset();
            info.duration = _duration;
            info.target = _target;
            info.normal = _target.offset;
            info.curveType = _curveType;

            EffectInfo_Offset.PropInfo propInfo = new EffectInfo_Offset.PropInfo();
            propInfo.type = _type;
            propInfo.val = _to;
            info.propInfos.Add(propInfo);

            EffectState_Offset state = new EffectState_Offset();
            state.info = info;
            state.func = info.GetCurveFunction();
            AddState_Offset( ctrl, state );
        }
    }