Exemple #1
0
    private TetrisBlock MakeBadBlock() //Randomly generates a bad block
    {
        TetrisBlock BadBlock = new Opiece(EnemyGrid);

        switch (GameWorld.Random.Next(5))
        {
        case 0:
            BadBlock = new FullOpiece(EnemyGrid);
            break;

        case 1:
            BadBlock = new Hpiece(EnemyGrid);
            break;

        case 2:
            BadBlock = new ThreeDots(EnemyGrid);
            break;

        case 3:
            BadBlock = new TwoLines(EnemyGrid);
            break;

        case 4:
            BadBlock = new Ldiagonal(EnemyGrid);
            break;

        case 5:
            BadBlock = new InvisableTpiece(EnemyGrid);
            break;
        }
        return(BadBlock);
    }
Exemple #2
0
        /// <summary>
        /// Read next to two lines from reader.
        /// </summary>
        /// <param name="reader">Reader</param>
        /// <param name="two">Refernce to TwoLines object</param>
        /// <returns>True if two lines were read correct, false in otherwise</returns>
        protected bool GetNextTwoLines(StreamReader reader, ref TwoLines twoLines)
        {
            if ((twoLines.First = reader.ReadLine()) == null)
            {
                return(false);
            }
            if ((twoLines.Second = reader.ReadLine()) == null)
            {
                return(false);
            }

            return(true);
        }
Exemple #3
0
        /// <summary>
        /// Parse file(filename) to collection of BowlingScore.
        /// </summary>
        /// <returns>Collection of BowlingScore</returns>
        public ICollection <BowlingScore> Parse()
        {
            var scores = new List <BowlingScore>();

            var reader = new StreamReader(filename);
            var two    = new TwoLines();

            while (GetNextTwoLines(reader, ref two))
            {
                if (!string.IsNullOrWhiteSpace(two.First) && !string.IsNullOrWhiteSpace(two.Second))
                {
                    var name   = two.First;
                    var points = LinePointsToIntArray(two.Second);
                    scores.Add(new BowlingScore(name, points));
                }
            }
            reader.Close();

            return(scores);
        }