예제 #1
0
        public void loadMap(Map map)
        {
            panel1.Controls.Clear();
            GraphicHelper gr = new GraphicHelper(panel1.Width, panel1.Height);
            panel1.BackgroundImage = gr.flush();

            solarsystemMap.Clear();
            refferenzTable.Clear();
            refferenzTable2.Clear();
            randomArea = null;
            randomArea = map.randomArea;
            randomAreaReady = true;

            Systemcount.Text = map.systemcount.ToString();
            Min_distance.Text = map.min_distance.ToString();

            List<Solarsystem> systems = map.solarsystems;

            foreach (Solarsystem system in systems)
            {

                PictureBox picture = new PictureBox();
                panel1.Controls.Add(picture);
                picture.Image = getImage("sun");
                picture.Left = system.x;
                picture.Top = system.y;
                picture.Width = picture.Image.Width;
                picture.Height = picture.Image.Height;
                picture.Visible = true;

                picture.MouseClick += new MouseEventHandler(picture_Click);

                solarsystemMap.Add(system);

                refferenzTable.Add(picture, system);
                refferenzTable2.Add(system, picture);

            }

            checkNodes();
            printConnections();
        }
예제 #2
0
        private void page3_select_SelectedIndexChanged(object sender, EventArgs e)
        {
            StationClass selected = (StationClass)page3_select.SelectedItem;

            if (selected == null) return;

            page3_name.Text = selected.Name;

            page3_race.Items.Clear();
            foreach (Race race in data.getRaces())
            {
                page3_race.Items.Add(race);
            }

            foreach (Race race in selected.race)
            {

                page3_race.SetItemChecked(page3_race.Items.IndexOf(race), true);
            }

            page3_skills.Items.Clear();
            foreach (Skill skills in data.getSkills())
            {
                if (skills.stat)
                    page3_skills.Items.Add(skills);
            }

            foreach (Skill skills in selected.skills)
            {

                page3_skills.SetItemChecked(page3_skills.Items.IndexOf(skills), true);
            }

            page3_need_tech.Items.Clear();
            foreach (Tech tech in data.getTechs())
            {
                page3_need_tech.Items.Add(tech);
            }

            foreach (Tech need in selected.need_tech)
            {

                page3_need_tech.SetItemChecked(page3_need_tech.Items.IndexOf(need), true);
            }

            page3_buildship.Items.Clear();
            foreach (ShipClass ship in data.getShipTypes())
            {
                page3_buildship.Items.Add(ship);
            }

            foreach (ShipClass ship in selected.buildship)
            {

                page3_buildship.SetItemChecked(page3_buildship.Items.IndexOf(ship), true);
            }

            page3_time.Text = selected.time.ToString();
            page3_limit.Text = selected.limit.ToString();
            page3_globallimit.Text = selected.globallimit.ToString();

            if (selected.updateto != null)
            {
                page3_update.SelectedItem = selected.updateto;
            }
            else
            {
                page3_update.SelectedItem = keinUpdate;
            }

            page3_population.Text = selected.population.ToString();

            setResourceOnPage(selected.create_res, page3_res_create);
            setResourceOnPage(selected.price, page3_costs);

            page3_power.Text = selected.power.ToString();
            page3_power2.Text = selected.power2.ToString();
            page3_power3.Text = selected.power3.ToString();
            page3_power4.Text = selected.power4.ToString();

            page3_resistend1.Text = selected.resistend1.ToString();
            page3_resistend2.Text = selected.resistend2.ToString();
            page3_resistend3.Text = selected.resistend3.ToString();
            page3_resistend4.Text = selected.resistend4.ToString();

            page3_health.Text = selected.health.ToString();

            page3_names.Clear();
            page3_needlist.Clear();

            // Bild:

            GraphicHelper graphic = new GraphicHelper(page3_picture);
            graphic.drawCenterImage(selected.picture, page3_picture.Width);
            page3_picture.Image = graphic.flush();

            String[] names = selected.names.Split(new string[] { ", " }, StringSplitOptions.None);

            page3_names.setContent(names);

            page3_needlist.OnStringListClick +=new EventHandler<StringList.StringListClickEvent>(page3_needs_delete);

            page3_needs_EntryList = selected.need;

            foreach (System.Collections.DictionaryEntry entry in selected.need)
            {
                page3_needlist.Add(((int)entry.Value).ToString() + "X " + ((StationClass)entry.Key).Name, entry.Key);

            }

            addEntry = false;
            changedValue = false;
            page3_status.Image = getImage("square");
        }
예제 #3
0
        private void page3_image_search_Click(object sender, EventArgs e)
        {
            OpenFileDialog open = new OpenFileDialog();
            open.Filter = "Bilder | *.jpg;*.png;*.bmp";

            if (open.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {

                FileStream stream = File.OpenRead(open.FileName);
                byte[] buffer = new byte[stream.Length];
                stream.Read(buffer, 0, (int)stream.Length);

                GraphicHelper graphic = new GraphicHelper(page3_picture);
                graphic.drawCenterImage(GraphicHelper.getPicture(buffer), page3_picture.Width);
                page3_picture.Image = graphic.flush();

            }
        }
예제 #4
0
        private void page2_select_SelectedIndexChanged(object sender, EventArgs e)
        {
            ShipClass selected = (ShipClass)page2_select.SelectedItem;

            if (selected == null) return;

            page2_name.Text = selected.Name;

            page2_race.Items.Clear();
            foreach (Race race in data.getRaces())
            {
                page2_race.Items.Add(race);
            }

            foreach (Race race in selected.race)
            {

                page2_race.SetItemChecked(page2_race.Items.IndexOf(race), true);
            }

            page2_skills.Items.Clear();
            foreach (Skill skills in data.getSkills())
            {
                if (skills.ship)
                    page2_skills.Items.Add(skills);
            }

            foreach (Skill skills in selected.skills)
            {

                page2_skills.SetItemChecked(page2_skills.Items.IndexOf(skills), true);
            }

            page2_needs.Items.Clear();
            foreach (Tech tech in data.getTechs())
            {
                page2_needs.Items.Add(tech);
            }

            foreach (Tech need in selected.need_tech)
            {

                page2_needs.SetItemChecked(page2_needs.Items.IndexOf(need), true);
            }

            page2_time.Text = selected.time.ToString();
            page2_limit.Text = selected.globallimit.ToString();
            page2_speed.Text = selected.speed.ToString();

            setResourceOnPage(selected.price, page2_reslist);

            page2_power.Text = selected.power.ToString();
            page2_power2.Text = selected.power2.ToString();
            page2_power3.Text = selected.power3.ToString();
            page2_power4.Text = selected.power4.ToString();

            page2_resistend1.Text = selected.resistend1.ToString();
            page2_resistend2.Text = selected.resistend2.ToString();
            page2_resistend3.Text = selected.resistend3.ToString();
            page2_resistend4.Text = selected.resistend4.ToString();

            page2_health.Text = selected.health.ToString();

            //Names:

            page2_namelist.Clear();

            // Bild:

            GraphicHelper graphic = new GraphicHelper(page2_picture);

            graphic.drawRescaleImage(selected.picture, page2_picture.Width, 0, 0);
            page2_picture.Image = graphic.flush();

            String[] names = selected.names.Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);

            page2_namelist.setContent(names);

            changedValue = false;
            page2_status.Image = getImage("square");
            addEntry = false;
        }
예제 #5
0
        private void page8_select_SelectedIndexChanged(object sender, EventArgs e)
        {
            PlanetClass selected = (PlanetClass)page8_select.SelectedItem;

            if (selected == null) return;

            page8_name.Text = selected.Name;

            page8_buildship.Items.Clear();
            foreach (ShipClass ship in data.getShipTypes())
            {
                page8_buildship.Items.Add(ship);
            }

            foreach (ShipClass ship in selected.buildship)
            {

                page8_buildship.SetItemChecked(page8_buildship.Items.IndexOf(ship), true);
            }

            setResourceOnPage(selected.create_res, page8_reslist);

            //Names:

            /*
            foreach (Panel panel in page3_names_panelList)
            {
                page3_names_list.Controls.Remove(panel);
                panel.Dispose();

            }
            */

            page8_bewohnbar.Checked = selected.bewohnbar;

            // Bild:

            GraphicHelper graphic = new GraphicHelper(page8_picture);
            graphic.drawCenterImage(selected.picture, page8_picture.Width);
            page8_picture.Image = graphic.flush();

            addEntry = false;
            changedValue = false;
            page8_status.Image = getImage("square");
        }
예제 #6
0
        private void printConnections(MouseEventArgs e = null)
        {
            GraphicHelper graphic = new GraphicHelper(panel1.Width, panel1.Height);
            List<Node> allreadydrawn = new List<Node>();

            foreach (Solarsystem system in solarsystemMap)
            {
                foreach (Node node in system.nodes)
                {
                    if (!allreadydrawn.Contains(node))
                    {
                        allreadydrawn.Add(node);

                        graphic.drawLine(Color.Black, node.pointa.x, node.pointa.y, node.pointb.x, node.pointb.y);

                    }
                }

            }

            if ((randomAreaReady) && (randomArea != null))
            {
                graphic.drawLine(Color.Orange, randomArea.x1, randomArea.y1, randomArea.x1, randomArea.y2);
                graphic.drawLine(Color.Orange, randomArea.x1, randomArea.y1, randomArea.x2, randomArea.y1);

                graphic.drawLine(Color.Orange, randomArea.x2, randomArea.y2, randomArea.x1, randomArea.y2);
                graphic.drawLine(Color.Orange, randomArea.x2, randomArea.y2, randomArea.x2, randomArea.y1);

            }

            if ((randomArea != null) && (e != null) && !randomAreaReady)
            {
                graphic.drawLine(Color.Orange, randomArea.x1, randomArea.y1, randomArea.x1, e.Y);
                graphic.drawLine(Color.Orange, randomArea.x1, randomArea.y1, e.X, randomArea.y1);

                graphic.drawLine(Color.Orange, e.X, e.Y, randomArea.x1, e.Y);
                graphic.drawLine(Color.Orange, e.X, e.Y, e.X, randomArea.y1);
            }

            panel1.BackgroundImage = graphic.flush();
        }
예제 #7
0
        private void neuToolStripMenuItem_Click(object sender, EventArgs e)
        {
            panel1.Controls.Clear();
            GraphicHelper gr = new GraphicHelper(panel1.Width, panel1.Height);
            panel1.BackgroundImage = gr.flush();

            solarsystemMap.Clear();
            refferenzTable.Clear();
            refferenzTable2.Clear();
            randomArea = null;
            randomAreaReady = false;
        }