2021 - BarronPiece

From TRCCompSci - AQA Computer Science
Jump to: navigation, search

Actual Code

    class BaronPiece : Piece
    {
        public BaronPiece(bool player1)
            : base(player1)
        {
            pieceType = "B";
            VPValue = 10;
        }

        public override int CheckMoveIsValid(int distanceBetweenTiles, string startTerrain, string endTerrain)
        {
            if (distanceBetweenTiles == 1)
            {
                return fuelCostOfMove;
            }
            return -1;
        }
    }

Things to note

Constructor runs the base constructor as well as setting peiceType & VPValue.

CheckMoveIsValid is overriden in this sub class, because each piece has different rules for movement.