Ejemplo n.º 1
0
        // get the sale price info
        private void btnSell_Click(object sender, EventArgs e)
        {
            int DM = 0;
            int.TryParse(edDM.Text, out DM);

            Traveller.Trade trade = new Traveller.Trade(ship, world);
            cargo = trade.sell(cargo, world, DM);
            lblSellAt.Text = String.Format("{0} [actual value: {1}%]", cargo.sellingPrice.ToString(),
                cargo.avSell* 100.00);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// selling a cargo lot
        /// </summary>
        /// <param name="cargo">cargo structure - item we are selling</param>
        /// <param name="ship">Traveller starship - ship it is being sold from</param>
        /// <param name="world">Traveller world - world it is being sold on</param>
        public Selling(Traveller.Starship.cargoDesc cargo, Traveller.Starship ship, Traveller.World world)
        {
            InitializeComponent();

            lblCurrent.Text = world.SEC;
            lblSelling.Text = String.Format("{0} {1} dTons; Cr{2}", cargo.origCode, cargo.dtons, cargo.purchasePrice);
            lblDesc.Text = cargo.desc;
            lblOrigSystem.Text = cargo.origSEC;
            edDM.Text = ship.TradeDM.ToString();

            this.world = world;
            this.cargo = cargo;
            this.ship = ship;

            // and set the selling info
            this.cargo.sellingDate = this.ship.Date;
            this.cargo.destSEC = this.world.SEC;
        }
Ejemplo n.º 3
0
 // find the cargo based on the listview info
 private Traveller.Starship.cargoDesc loadCargo(ListViewItem li)
 {
     Traveller.Starship.cargoDesc cargo = new Traveller.Starship.cargoDesc();
     int cargoID = 0;
     int.TryParse(li.SubItems[6].Text, out cargoID);
     if (cargoID > 0)
     {
         cargo = ship.loadCargo(cargoID);
     }
     return cargo;
 }
Ejemplo n.º 4
0
        // purchase checked items
        // note: if passengers, we need to select the quantity available
        private void btnBuy_Click(object sender, EventArgs e)
        {
            int tons = 0;
            int availableTons = ship.Cargo - ship.CargoHeld;

            foreach (ListViewItem li in lvAvailableCargo.Items)
            {
                if (li.Checked)
                {
                    tons = Convert.ToInt32(li.SubItems[2].Text);
                    if (tons <= availableTons)
                    {
                        availableTons -= tons;
                        ship.travelogue(String.Format("Cargo purchase: {0} / {1} tons for Cr{2} ({3})",
                            li.Text, li.SubItems[2].Text, li.SubItems[1].Text, li.SubItems[3].Text));
                        ship.CargoHeld += tons;

                        // and add to the cargo listing
                        Traveller.Starship.cargoDesc cd = new Traveller.Starship.cargoDesc();
                        cd.desc = li.SubItems[3].Text;
                        cd.origCode = li.Text;
                        cd.origSEC = ship.SEC;
                        cd.sellingPrice = 0;
                        cd.purchaseDate = ship.Date;
                        cd.dtons = Convert.ToInt32(li.SubItems[2].Text);
                        cd.purchasePrice = Convert.ToInt32(li.SubItems[1].Text);
                        int.TryParse(li.SubItems[4].Text, out cd.basecostbuy);
                        double.TryParse(li.SubItems[5].Text, out cd.avBuy);
                        ship.addCargo(cd);
                        ship.Credits -= cd.purchasePrice;
                    }
                    else
                    {
                        MessageBox.Show("Unable to purchase " + li.Text);
                    }
                }
            }
            ship.save();
            showShip(ship.Filename);
        }