Example #1
0
        public void makeJump(string secString)
        {
            // 1st see if we've a world already loaded, and save off any notes
            if (edNotes.Text.Length > 0)
            {
                world.saveNotes(edNotes.Text, edNPC.Text);
            }

            // our jump from travelogue
            if (world != null)
            {
                ship.travelogue("Prepping for jumping from " + world.Name);
            }

            // 1st see if we're in jump range
            Traveller.World newWorld = new Traveller.World();
            if (newWorld.isValidSEC(secString))
            {
                newWorld = new Traveller.World(secString, ship.Version);
                if (world == null)
                {
                    world = newWorld;
                }
                Traveller.TravUtils util = new Traveller.TravUtils();
                if (util.calcDistance(newWorld.Hex, world.Hex) <= ship.Jump)
                {
                    ship.makeJump(secString);
                    world = new Traveller.World(secString, ship.Version);
                    showShip(ship.Filename);
                }
                else
                {
                    MessageBox.Show("You can't jump that far!");
                }
            }
            else
            {
                MessageBox.Show(secString, "Invalid SEC format");
            }
        }
Example #2
0
 private void verifyCurrentVersionFilesToolStripMenuItem_Click(object sender, EventArgs e)
 {
     Traveller.TravUtils util = new Traveller.TravUtils();
     List<string> results = util.verifyFiles(ship.Version);
     LogForm lf = new LogForm(results);
     lf.ShowDialog();
 }
Example #3
0
        private void showWorld(Traveller.World world)
        {
            Traveller.TravUtils util = new Traveller.TravUtils();
            lvData.Items.Clear();
            edNotes.Clear();
            edNPC.Clear();
            tabInfo.SelectedIndex = 0;  // reset to basic info

            ListViewItem li = new ListViewItem("Starport");
            li.SubItems.Add(world.Starport.ToString());
            lvData.Items.Add(li);
            li = new ListViewItem("Size");
            li.SubItems.Add(world.Size.ToString() + " " + world.descSize);
            lvData.Items.Add(li);
            li = new ListViewItem("Atmosphere");
            li.SubItems.Add(world.Atmosphere.ToString() + " " + world.descAtmo);
            lvData.Items.Add(li);
            li = new ListViewItem("Hydrographics");
            li.SubItems.Add(world.Hydrographics.ToString() + " " + world.descHydro);
            lvData.Items.Add(li);
            li = new ListViewItem("Population");
            li.SubItems.Add(world.Population.ToString() + " " + world.descPop);
            lvData.Items.Add(li);
            li = new ListViewItem("Government");
            li.SubItems.Add(world.Government.ToString() + " " + world.descGov);
            lvData.Items.Add(li);
            li = new ListViewItem("Law Level");
            li.SubItems.Add(world.LawLevel.ToString());
            lvData.Items.Add(li);
            li = new ListViewItem("Tech Level");
            li.SubItems.Add(world.TechLevel.ToString());
            lvData.Items.Add(li);

            li = new ListViewItem("Travel code");
            li.SubItems.Add(world.TravelCode);
            switch (world.TravelCode.ToLower())
            {
                case "red":
                    li.SubItems[0].BackColor = System.Drawing.Color.Red;
                    break;
                case "amber":
                    li.SubItems[0].BackColor = System.Drawing.Color.Yellow;
                    break;
                case "green":
                    li.SubItems[0].BackColor = System.Drawing.Color.Green;
                    break;
                default:
                    break;
            }
            lvData.Items.Add(li);

            li = new ListViewItem("Stellar info");
            li.SubItems.Add(world.Stellar);
            lvData.Items.Add(li);
            li = new ListViewItem("Gas giants");
            li.SubItems.Add(world.GasGiant.ToString());
            lvData.Items.Add(li);
            li = new ListViewItem("Asteroid belts");
            li.SubItems.Add(world.Belts.ToString());
            lvData.Items.Add(li);

            lbTradeCodes.Items.Clear();
            foreach (Traveller.World.stTrade tc in world.TradeClass)
            {
                lbTradeCodes.Items.Add(tc.code + " " + tc.desc);
            }

            if (world.Misc.Count > 0)
            {
                li = new ListViewItem(" ");
                li.SubItems.Add("Extensions");
                li.BackColor = System.Drawing.Color.DarkSalmon;
                lvData.Items.Add(li);
                foreach (string ext in world.Misc)
                {
                    string[] exts = ext.Split(new char[] { ':' });
                    li = new ListViewItem(exts[0]);
                    li.SubItems.Add(exts[1]);
                    lvData.Items.Add(li);
                }
            }

            lblAlliance.Text = world.Alliance + " " + world.descAlliance;

            // show the notes - for some reason it is doing odd on CR/LF
            string[] noteString = world.Notes.Split(new char[] { '\n' });
            StringBuilder newNotes = new StringBuilder();
            foreach (string s in noteString)
            {
                newNotes.Append(s + Environment.NewLine);
            }
            edNotes.Text = newNotes.ToString();

            lblSEC.Text = world.SEC;
            sbCurrentWorld.Text = ship.SectorName + "/" + world.Name;

            showJ6();
            showImage(this.world);

            // and the web page
            string sectorName = ship.SectorName.Replace(' ', '+');
            string url = String.Format("http://www.travellermap.com/iframe.htm?sector={0}&hex={1}",
                sectorName, world.Hex);
            //string url = String.Format("http://www.travellermap.com/JumpMap.aspx?Sector={0}&hex={1}&jump={2}&scale=48&options=48",
            //    sectorName, world.Hex, ship.Jump);
            webView1.Url = url;

            loadImages();
        }