示例#1
0
        /// <summary>
        /// Zwraca pozycje (pozycje pocz¹tku) perwszego elementu
        /// BeginAircraftCarrierTile na liœcie tile.(plus pewna niedok³adoœæ
        /// wynikaj¹ca z niedok³adnoœci modelu w view a szerokoœci¹ tile).
        /// </summary>
        /// <returns></returns>
        /// <author>Tomek</author>
        public PointD GetBeginPosition()
        {
            BeginAircraftCarrierTile beginTile = null;

            //poszukaj restore tile
            foreach (AircraftCarrierTile tile in carrierTiles)
            {
                if (tile is BeginAircraftCarrierTile)
                {
                    beginTile = (BeginAircraftCarrierTile)tile;
                    break;
                }
            }

            //sprawdz czy znalaz³
            if (beginTile == null)
            {
                throw new Exception("Nie odnaleziono obiektu RestoreAmmunitionCarrierTile");
            }

            return(new PointD(Mathematics.IndexToPosition(beginTile.TileIndex), beginTile.YBegin * LevelTile.TileWidth));
        }
        public PlaneOnAircraftTestForm()
        {
            InitializeComponent();
            //przerobione przez Emila:
            level = new Level("levels/level-1.dat", null, PlaneType.P47);
            //level.UserPlane.StartEngine();

            //  level.Controller

            List <AircraftCarrierTile> list  = new List <AircraftCarrierTile>();
            BeginAircraftCarrierTile   begin =
                new BeginAircraftCarrierTile(0.4f, 0.5f, 0, new Quadrangle(new PointD(10, 10), 100, 50));
            MiddleAircraftCarrierTile middle =
                new MiddleAircraftCarrierTile(0.4f, 0.5f, 0, new Quadrangle(new PointD(10, 10), 190, 50));
            EndAircraftCarrierTile end =
                new EndAircraftCarrierTile(0.4f, 0.5f, 0, new Quadrangle(new PointD(190, 10), 100, 50));

            list.Add(begin);
            list.Add(middle);
            list.Add(end);
            aircraft = new Carrier(list);

            timerMain.Start();
        }