Пример #1
0
        void FillGobPanel()
        {
            flowPanel.SuspendLayout();
            flowPanel.Controls.Clear();

            // If no plugins are enabled then add the default (HT) MapItems

            if (Globals.Plugins.Count == 0)
            {
                flowPanel.Controls.Add(CreatePictureBox(new Headquarters(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Radar(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new ResearchCenter(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new VehicleTransportStation(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Reactor(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new HumanResourceCenter(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Processor(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Warehouse(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new MachineGunTower(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new RocketTower(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new MobileHeadquarters(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new GalaxMiner(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new LightTank(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new MediumTank(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new MachineGunVehicle(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new RocketVehicle(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Artillery(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new ShortRangeInfantry(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new LongRangeInfantry(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new TakeoverSpecialist(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Andy(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Fox(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(0, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(1, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(2, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(3, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(4, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(5, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(6, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(7, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Galaxite(8, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Area(2, 2)));
                flowPanel.Controls.Add(CreatePictureBox(new Wall(15)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("RocketArtifact", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree1", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree2", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree3", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree4", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree5", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree6", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Tree7", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Plant", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Plant1", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Plant2", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Plant3", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Plant4", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Plant5", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Scenery("Rocks", 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Replicator(Side.sideNeutral, 0, 0)));
                flowPanel.Controls.Add(CreatePictureBox(new Activator
                                                            (Side.sideNeutral, 0, 0)));

                // Otherwise let the plugins add their own MapItems
            }
            else
            {
                foreach (IPlugin plug in Globals.Plugins)
                {
                    IMapItem[] ami = plug.GetMapItems();
                    foreach (IMapItem mi in ami)
                    {
                        flowPanel.Controls.Add(CreatePictureBox(mi));
                    }
                }
            }
            flowPanel.ResumeLayout();
        }