| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | using FairyGUI.Utils;namespace FairyGUI{    public class PlayTransitionAction : ControllerAction    {        public string transitionName;        public int playTimes;        public float delay;        public bool stopOnExit;        private Transition _currentTransition;        public PlayTransitionAction()        {            playTimes = 1;            delay = 0;        }        override protected void Enter(Controller controller)        {            Transition trans = controller.parent.GetTransition(transitionName);            if (trans != null)            {                if (_currentTransition != null && _currentTransition.playing)                    trans.ChangePlayTimes(playTimes);                else                    trans.Play(playTimes, delay, null);                _currentTransition = trans;            }        }        override protected void Leave(Controller controller)        {            if (stopOnExit && _currentTransition != null)            {                _currentTransition.Stop();                _currentTransition = null;            }        }        override public void Setup(ByteBuffer buffer)        {            base.Setup(buffer);            transitionName = buffer.ReadS();            playTimes = buffer.ReadInt();            delay = buffer.ReadFloat();            stopOnExit = buffer.ReadBool();        }    }}
 |