/// <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; } }
public void Hit() { if (Time.fixedTime < spawnTime + InvincibleSpawnTime) { return; } if (Action != null) { TetrisAction tetrisAction = Action.GetComponent <TetrisAction>(); if (tetrisAction != null) { tetrisAction.Trigger(); } } Destroy(gameObject); }
public TetrisActionWithEvaluation(TetrisAction action, EvaluationState evaluationState) { Action = action; EvaluationState = evaluationState; }