コード例 #1
0
        /// <summary>
        /// Adds the given ObjectTemplate to the given IGameField.
        /// </summary>
        /// <param name="template">
        /// The template to add.
        /// </param>
        /// <param name="offsetX">
        /// The offset to apply on the x-axis.
        /// </param>
        /// <param name="offsetY">
        /// The offset to apply on the y-axis.
        /// </param>
        /// <param name="gameField">
        /// The IGameField to fill with data.
        /// </param>
        public void AddTemplate( ObjectTemplate template, int offsetX, int offsetY, IGameField gameField )
        {
            this.offsetX = offsetX;
            this.offsetY = offsetY;
            this.gameField = gameField;

            switch( template )
            {
                case ObjectTemplate.Glider:
                    this.AddGlider();
                    break;

                case ObjectTemplate.Chaos:
                    this.AddChaos();
                    break;

                case ObjectTemplate.Laser0:
                    this.AddLaser0();
                    break;

                case ObjectTemplate.Laser2:
                    this.AddLaser2();
                    break;

                case ObjectTemplate.Horseshoe:
                    this.AddHorseshoe();
                    break;

                case ObjectTemplate.Flower:
                    this.AddFlower();
                    break;

                case ObjectTemplate.Claphand:
                    this.AddToad();
                    break;

                case ObjectTemplate.Acorn:
                    this.AddAcorn();
                    break;

                case ObjectTemplate.Octagon:
                    this.AddOctagon();
                    break;

                case ObjectTemplate.Pentadecathlon:
                    this.AddPentadecathlon();
                    break;

                case ObjectTemplate.Bugface:
                    this.AddBugface();
                    break;

                case ObjectTemplate.Tumbler:
                    this.AddTumbler();
                    break;

                case ObjectTemplate.Diehard:
                    this.AddDiehard();
                    break;

                case ObjectTemplate.Pulsar:
                    this.AddPulsar();
                    break;
                
                case ObjectTemplate.QueenBeeShuttle:
                    this.AddQueenBeeShuttle();
                    break;
    
                case ObjectTemplate.SpaceshipLightweight:
                    this.AddLightweightSpaceship();
                    break;

                default:
                    throw new NotImplementedException( template.ToString() );
            }
        }