コード例 #1
0
ファイル: CCActionContainer.cs プロジェクト: ZensYue/ccAction
        public bool InitWithTwoActions(IFiniteTimeAction action1, IFiniteTimeAction action2)
        {
            if (action1 == null || action2 == null)
            {
                this.LogError("initWithTwoActions action is null!!");
            }
            bool ret = false;
            var  d1  = action1.Duration;
            var  d2  = action2.Duration;

            if (base.InitWithDuration(Math.Max(d1, d2)))
            {
                m_one = action1;
                m_two = action2;
                if (d1 > d2)
                {
                    m_two = CCActionSequence.CreateWithTwoActions(action2, CCActionDelay.Create(d1 - d2));
                }
                else if (d1 < d2)
                {
                    m_one = CCActionSequence.CreateWithTwoActions(action1, CCActionDelay.Create(d2 - d1));
                }
                ret = true;
            }
            return(ret);
        }
コード例 #2
0
ファイル: CCActionContainer.cs プロジェクト: ZensYue/ccAction
 public override IAction Reverse()
 {
     if (m_actions[0] != null && m_actions[1] != null)
     {
         return(CCActionSequence.CreateWithTwoActions(m_actions[1].Reverse() as IFiniteTimeAction, m_actions[0].Reverse() as IFiniteTimeAction));
     }
     return(null);
 }
コード例 #3
0
ファイル: CCActionContainer.cs プロジェクト: ZensYue/ccAction
        public static CCActionSequence CreateWithTwoActions(IFiniteTimeAction actionOne, IFiniteTimeAction actionTwo)
        {
            CCActionSequence sequence = new CCActionSequence();

            if (sequence != null && sequence.InitWithTwoActions(actionOne, actionTwo))
            {
                return(sequence);
            }
            return(null);
        }
コード例 #4
0
ファイル: CCAction.cs プロジェクト: ZensYue/ccAction
 public static ActionInterval CCSequence(ActionInterval action1, params ActionInterval[] args)
 {
     return(CCActionSequence.Create(action1, args));
 }