コード例 #1
0
ファイル: Animator.cs プロジェクト: svetlanatanasov/jusTap
        private async Task DiagonalSquares(CCFiniteTimeAction rotate, Action callback = null)
        {
            if (_isDiagonal)
            {
                return;
            }

            _isDiagonal = true;
            playUpLeft.RunAction(rotate);


            playDownRight.RunAction(rotate);
            playDownLeft.RunAction(rotate);
            if (callback != null)
            {
                var        movecompletedaction = new CCCallFunc(callback);
                CCSequence mysequence          = new CCSequence(rotate, movecompletedaction);
                playUpRight.RunAction(mysequence);
            }
            else
            {
                await playUpRight.RunActionAsync(rotate);
            }
        }
コード例 #2
0
ファイル: Animator.cs プロジェクト: svetlanatanasov/jusTap
        private async Task RotatePlayButtons(bool clockwise, Action callback)
        {
            float timePerMove = 1.5f;


            //var signalUpLeft = _cordinatesGenerator.PositionAndSquare[PositionInGame.SignalUpLeft];
            //var signalUpRight = _cordinatesGenerator.PositionAndSquare[PositionInGame.SignalUpRight];
            //var signalDownLeft = _cordinatesGenerator.PositionAndSquare[PositionInGame.SignalDownLeft];
            //var signalDownRight = _cordinatesGenerator.PositionAndSquare[PositionInGame.SignalDownRight];
            playUpLeft    = _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayUpLeft];
            playUpRight   = _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayUpRight];
            playDownLeft  = _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayDownLeft];
            playDownRight = _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayDownRight];



            var moveToUpLeft = new CCMoveTo(timePerMove, new CCPoint(playUpLeft.Position.X, playUpLeft.Position.Y));

            var moveToUpRight = new CCMoveTo(timePerMove, new CCPoint(playUpRight.Position.X, playUpRight.Position.Y));



            var moveToDownRight = new CCMoveTo(timePerMove, new CCPoint(playDownRight.Position.X, playDownRight.Position.Y));


            var moveToDownLeft = new CCMoveTo(timePerMove, new CCPoint(playDownLeft.Position.X, playDownLeft.Position.Y));

            var        moveCompletedAction = new CCCallFunc(callback);
            CCSequence mySequence          = new CCSequence(moveToDownRight, moveCompletedAction);



            CCRotateBy rotate     = new CCRotateBy(0.5f, 45);
            var        rotateBack = rotate.Reverse();

            await DiagonalSquares(rotate);

            await MoveHalfWay(timePerMove);


            //var halfMoveCompletedAction = new CCCallFunc(() =>
            //{
            _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayUpLeft]    = playDownLeft;
            _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayUpRight]   = playUpLeft;
            _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayDownLeft]  = playDownRight;
            _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayDownRight] = playUpRight;

            playUpLeft.RunAction(moveToUpRight);
            playDownRight.RunAction(moveToDownLeft);
            playDownLeft.RunAction(moveToUpLeft);
            await playUpRight.RunActionAsync(mySequence);

            //await DiagonalSquares(rotateBack, callback);
            //});



            //}
            //else
            //{
            //    playUpLeft.RunAction(moveToDownLeft);
            //    playUpRight.RunAction(moveToUpLeft);
            //    playDownRight.RunAction(moveToUpRight);
            //    playDownLeft.RunAction(mySequence);

            //    _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayUpLeft] = playUpRight;
            //    _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayUpRight] = playDownRight;
            //    _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayDownLeft] = playUpLeft;
            //    _cordinatesGenerator.PositionAndSquare[PositionInGame.PlayDownRight] = playDownLeft;
            //}
        }