Beispiel #1
0
        /// <summary>
        /// Performs the specified action
        /// </summary>
        public void DoAction(TetrisAction action)
        {
            PrevPosition = MovingPiece.OccupiedSquares;
            switch (action)
            {
            case TetrisAction.MoveLeft:
                MovePieceLeft();
                break;

            case TetrisAction.MoveRight:
                MovePieceRight();
                break;

            case TetrisAction.Drop:
                TickUpdate();
                break;

            case TetrisAction.Rotate:
                RotatePiece();
                break;

            default:
                break;
            }
        }
Beispiel #2
0
 public void Hit()
 {
     if (Time.fixedTime < spawnTime + InvincibleSpawnTime)
     {
         return;
     }
     if (Action != null)
     {
         TetrisAction tetrisAction = Action.GetComponent <TetrisAction>();
         if (tetrisAction != null)
         {
             tetrisAction.Trigger();
         }
     }
     Destroy(gameObject);
 }
Beispiel #3
0
 public TetrisActionWithEvaluation(TetrisAction action, EvaluationState evaluationState)
 {
     Action          = action;
     EvaluationState = evaluationState;
 }