Ejemplo n.º 1
0
 public void Rescan(JObject evt)
 {
     Yard           = new ShipYard(evt["StationName"].Str(), evt["StarSystem"].Str(), EventTimeUTC, evt["PriceList"]?.ToObjectProtected <ShipYard.ShipyardItem[]>());
     MarketID       = evt["MarketID"].LongNull();
     Horizons       = evt["Horizons"].BoolNull();
     AllowCobraMkIV = evt["AllowCobraMkIV"].BoolNull();
 }
        private void DisplayYard(ShipYard yard)
        {
            foreach (ShipYard.ShipyardItem i in yard.Ships)
            {
                string col2 = "Unknown".T(EDTx.Unknown), col3 = "";
                Dictionary <ItemData.ShipPropID, ItemData.IModuleInfo> shipprops = ItemData.Instance.GetShipProperties(i.FDShipType);
                if (shipprops != null)
                {
                    col2 = (shipprops[ItemData.ShipPropID.Manu] as ItemData.ShipInfoString).Value;
                    col3 = (shipprops[ItemData.ShipPropID.HullMass] as ItemData.ShipInfoDouble).Value.ToString("0.#t") +
                           ", " + (shipprops[ItemData.ShipPropID.Speed] as ItemData.ShipInfoInt).Value.ToString() +
                           "/" + (shipprops[ItemData.ShipPropID.Boost] as ItemData.ShipInfoInt).Value.ToString();
                }

                object[] rowobj = { i.ShipType_Localised, col2, col3, i.ShipPrice.ToString("N0") + "cr" };

                dataGridViewShips.Rows.Add(rowobj);
            }

            double distance = discoveryform.history.DistanceCurrentTo(yard.StarSystem);

            labelYard.Text      = yard.Ident() + (distance > -1 ? (" @ " + distance.ToString("N1") + "ly") : "");
            labelYard.Visible   = true;
            Col1.HeaderText     = "Ship".T(EDTx.UserControlShipYards_Ship);
            Col1.Tag            = null;
            Col2.HeaderText     = "Manufacturer".T(EDTx.UserControlShipYards_Manufacturer);
            Col2.Tag            = null;
            Col3.HeaderText     = "Mass/Speed".T(EDTx.UserControlShipYards_MS);
            Col3.Tag            = null;
            ColPrice.HeaderText = "Price".T(EDTx.UserControlShipYards_Price);
            ColPrice.Tag        = "cr";
        }
        public ActionResult DeleteConfirmed(int id)
        {
            ShipYard shipYard = db.ShipYards.Find(id);

            db.ShipYards.Remove(shipYard);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "ShipyardID,ShipYardName,CurrentNumberOfShipsDocked,ShipYardDockNumber,TotalNumberOfContainers")] ShipYard shipYard)
 {
     if (ModelState.IsValid)
     {
         db.Entry(shipYard).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(shipYard));
 }
        public ActionResult Create([Bind(Include = "ShipyardID,ShipYardName,CurrentNumberOfShipsDocked,ShipYardDockNumber,TotalNumberOfContainers")] ShipYard shipYard)
        {
            if (ModelState.IsValid)
            {
                db.ShipYards.Add(shipYard);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(shipYard));
        }
Ejemplo n.º 6
0
 internal void setShipYardGrid()
 {
     while (listShips.Count() < 5)
     {
         gs = PickShipType();
         do
         {
             PickShipLocation();
         }while(!ShipYard.AddShip(gs));
         gs = null;
     }
 }
Ejemplo n.º 7
0
        public JournalShipyard(DateTime utc, string sn, string sys, long mid, Tuple <long, string, long>[] list, int cmdrid, bool allowcobramkiv, bool horizons = true) :
            base(utc, JournalTypeEnum.Shipyard, false)
        {
            MarketID       = mid;
            Horizons       = horizons;
            AllowCobraMkIV = allowcobramkiv;
            var nlist = list.Select(x => new ShipYard.ShipyardItem {
                id = x.Item1, ShipType = x.Item2, ShipPrice = x.Item3
            }).ToArray();

            Yard = new ShipYard(sn, sys, utc, nlist);
            SetCommander(cmdrid);
        }
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ShipYard shipYard = db.ShipYards.Find(id);

            if (shipYard == null)
            {
                return(HttpNotFound());
            }
            return(View(shipYard));
        }
        private void Display()
        {
            DataGridViewColumn sortcol   = dataGridViewShips.SortedColumn != null ? dataGridViewShips.SortedColumn : dataGridViewShips.Columns[0];
            SortOrder          sortorder = dataGridViewShips.SortOrder;

            dataGridViewShips.Rows.Clear();
            dataViewScrollerPanel1.SuspendLayout();

            labelYard.Visible = false;

            ShipYard yard = null;

            if (comboBoxYards.SelectedIndex == 0 || comboBoxYards.Text.Length == 0)  // second is due to the order History gets called vs this on start
            {
                HistoryEntry lastshipyard = discoveryform.history.GetLastHistoryEntry(x => x.EntryType == JournalTypeEnum.Shipyard, last_he);
                if (lastshipyard != null)
                {
                    yard = (lastshipyard.journalEntry as EliteDangerousCore.JournalEvents.JournalShipyard).Yard;
                }
            }
            else
            {
                yard = discoveryform.history.Shipyards.GetFilteredList().Find(x => x.Ident().Equals(comboBoxYards.Text));
            }

            if (yard != null && yard.Ships != null)
            {
                DisplayYard(yard);
            }
            else
            {
                List <Tuple <ShipYard, ShipYard.ShipyardItem> > shiplist = discoveryform.history.Shipyards.GetShipLocations(comboBoxYards.Text, nolocrepeats: true);
                if (shiplist.Count > 0)
                {
                    DisplayShips(shiplist, comboBoxYards.Text);
                }
            }

            dataViewScrollerPanel1.ResumeLayout();
            dataGridViewShips.Sort(sortcol, (sortorder == SortOrder.Descending) ? ListSortDirection.Descending : ListSortDirection.Ascending);
            dataGridViewShips.Columns[sortcol.Index].HeaderCell.SortGlyphDirection = sortorder;
        }
Ejemplo n.º 10
0
        private static List <Spaceship> GetArmada()
        {
            var ships = new List <Spaceship>();

            var shipBuilder = new SpaceshipBuilder();
            var shipYard    = new ShipYard(shipBuilder);

            shipYard.BuildStartedShip();
            ships.Add(shipBuilder.GetShip());

            shipYard.BuildAttackCruiser();
            ships.Add(shipBuilder.GetShip());

            shipYard.BuildBattleship();
            ships.Add(shipBuilder.GetShip());

            shipYard.BuildMiner();
            ships.Add(shipBuilder.GetShip());

            shipYard.BuildFriendShip();
            ships.Add(shipBuilder.GetShip());

            return(ships);
        }
Ejemplo n.º 11
0
        public GameState(Game1 _game, GraphicsDevice _graphicsDevice, ContentManager _contentManager, int save) : base(_game, _graphicsDevice, _contentManager)
        {
            float width  = _graphicsDevice.PresentationParameters.BackBufferWidth;
            float height = _graphicsDevice.PresentationParameters.BackBufferHeight;

            saveID = save;
            font   = _contentManager.Load <SpriteFont>("Fonts/Font");

            Graphics  = _graphicsDevice;
            dBManager = new DBManager();
            query     = "SELECT Currency FROM [Saves] WHERE ID = 1";

            long result = Convert.ToInt64(dBManager.SelectElement(query));

            /*
             * int key; string unitPrefix;
             * for (key = 0; key <= 6 && ((int)(result / Math.Pow(10, 3 * key)) != 0); key++) ;
             * key--;
             * switch (key)
             * {
             *  case 1:
             *      unitPrefix = " k";
             *      break;
             *  case 2:
             *      unitPrefix = " m";
             *      break;
             *  case 3:
             *      unitPrefix = " b";
             *      break;
             *  case 4:
             *      unitPrefix = " g";
             *      break;
             *  case 5:
             *      unitPrefix = " t";
             *      break;
             *  case 6:
             *      unitPrefix = " t";
             *      break;
             *  default:
             *      unitPrefix = " ";
             *      break;
             * }
             * long putere = Convert.ToInt64(Math.Pow(10, 3 * key));*/
            currency    = result + " CC";
            currencyPos = new Vector2((int)(3 * width) / 4, (int)(height / 16));


            //_graphics = new GraphicsDeviceManager(this);

            _planets = new List <Planet>();

            for (int i = 1; i <= dBManager.SelectColumnFrom("[Planets]", "ID").Count; i++)
            {
                Planet plan = new Planet(contentManager.Load <Texture2D>(dBManager.SelectElement("SELECT Name FROM [Planets] WHERE ID=" + i.ToString())));
                float  X    = float.Parse(dBManager.SelectElement("SELECT PositionX FROM [Planets] WHERE ID = " + i.ToString()));
                float  Y    = float.Parse(dBManager.SelectElement("SELECT PositionY FROM [Planets] WHERE ID = " + i.ToString()));
                plan.Position = new Vector2(X, Y);
                plan.Size     = float.Parse(dBManager.SelectElement("SELECT Size FROM [Planets] WHERE ID = " + i.ToString()));
                plan.ID       = i;
                _planets.Add(plan);
            }

            _stations = new List <TradeStation>();

            shipYard = new ShipYard(contentManager, new Vector2(32000, 0));


            LoadContent(_graphicsDevice, _contentManager);
        }
Ejemplo n.º 12
0
        public static Path FromFile(string filename, Ship ship)
        {
            ushort  speed   = (ushort)ship.Status.WalkingSpeed;
            float   lastx   = ship.Position.x;
            float   lasty   = ship.Position.y;
            float   lastz   = ship.Position.z;
            Rotator lastyaw = ship.Yaw;
            Path    path    = new Path();

            using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read))
                using (XmlTextReader reader = new XmlTextReader(fs))
                {
                    while (reader.Read())
                    {
                        switch (reader.NodeType)
                        {
                        case XmlNodeType.Element:
                            switch (reader.Name.ToUpperInvariant())
                            {
                            case "POINT":
                                lastx   = float.Parse(reader["x"], CultureInfo.InvariantCulture);
                                lasty   = float.Parse(reader["y"], CultureInfo.InvariantCulture);
                                lastz   = float.Parse(reader["z"], CultureInfo.InvariantCulture);
                                lastyaw = int.Parse(reader["yaw"], CultureInfo.InvariantCulture);
                                PointElement p = new PointElement(path,
                                                                  lastx, lasty, lastz, lastyaw);
                                break;

                            case "RESETPOSITION":
                                lastx   = float.Parse(reader["x"], CultureInfo.InvariantCulture);
                                lasty   = float.Parse(reader["y"], CultureInfo.InvariantCulture);
                                lastz   = float.Parse(reader["z"], CultureInfo.InvariantCulture);
                                lastyaw = int.Parse(reader["yaw"], CultureInfo.InvariantCulture);
                                ResetElement r = new ResetElement(path,
                                                                  lastx, lasty, lastz, lastyaw);
                                break;

                            case "SET":
                                speed = ushort.Parse(reader["speed"], CultureInfo.InvariantCulture);
                                SetElement s = new SetElement(path, speed);
                                break;

                            case "SHIPYARD":
                                ShipYard y = new ShipYard(path,
                                                          new Point(lastx, lasty, lastz), lastyaw,
                                                          new Point(
                                                              float.Parse(reader["x"], CultureInfo.InvariantCulture),
                                                              float.Parse(reader["y"], CultureInfo.InvariantCulture),
                                                              float.Parse(reader["z"], CultureInfo.InvariantCulture)),
                                                          byte.Parse(reader["to"], CultureInfo.InvariantCulture),
                                                          uint.Parse(reader["shiptime"], CultureInfo.InvariantCulture),
                                                          uint.Parse(reader["docktime"], CultureInfo.InvariantCulture));
                                break;

                            case "START":
                                ship.Position            = new Point(lastx, lasty, lastz);
                                ship.Yaw                 = ship.Yaw;
                                path.resetpoint          = path.Elements.Count;
                                ship.Status.WalkingSpeed = speed;
                                break;
                            }
                            break;
                        }
                    }
                }

            return(path);
        }
Ejemplo n.º 13
0
        public static Path FromFile(string filename, Ship ship)
        {
            ushort speed = (ushort)ship.Status.WalkingSpeed;
            float lastx = ship.Position.x;
            float lasty = ship.Position.y;
            float lastz = ship.Position.z;
            Rotator lastyaw = ship.Yaw;
            Path path = new Path();
            using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read))
            using (XmlTextReader reader = new XmlTextReader(fs))
            {
                while (reader.Read())
                {
                    switch (reader.NodeType)
                    {
                        case XmlNodeType.Element:
                            switch (reader.Name.ToUpperInvariant())
                            {
                                case "POINT":
                                    lastx = float.Parse(reader["x"], CultureInfo.InvariantCulture);
                                    lasty = float.Parse(reader["y"], CultureInfo.InvariantCulture);
                                    lastz = float.Parse(reader["z"], CultureInfo.InvariantCulture);
                                    lastyaw = int.Parse(reader["yaw"], CultureInfo.InvariantCulture);
                                    PointElement p = new PointElement(path,
                                        lastx, lasty, lastz, lastyaw);
                                    break;

                                case "RESETPOSITION":
                                    lastx = float.Parse(reader["x"], CultureInfo.InvariantCulture);
                                    lasty = float.Parse(reader["y"], CultureInfo.InvariantCulture);
                                    lastz = float.Parse(reader["z"], CultureInfo.InvariantCulture);
                                    lastyaw = int.Parse(reader["yaw"], CultureInfo.InvariantCulture);
                                    ResetElement r = new ResetElement(path,
                                        lastx, lasty, lastz, lastyaw);
                                    break;

                                case "SET":
                                    speed = ushort.Parse(reader["speed"], CultureInfo.InvariantCulture);
                                    SetElement s = new SetElement(path, speed);
                                    break;

                                case "SHIPYARD":
                                    ShipYard y = new ShipYard(path,
                                        new Point(lastx, lasty, lastz), lastyaw,
                                        new Point(
                                        float.Parse(reader["x"], CultureInfo.InvariantCulture),
                                        float.Parse(reader["y"], CultureInfo.InvariantCulture),
                                        float.Parse(reader["z"], CultureInfo.InvariantCulture)),
                                        byte.Parse(reader["to"], CultureInfo.InvariantCulture),
                                        uint.Parse(reader["shiptime"], CultureInfo.InvariantCulture),
                                        uint.Parse(reader["docktime"], CultureInfo.InvariantCulture));
                                    break;

                                case "START":
                                    ship.Position = new Point(lastx, lasty, lastz);
                                    ship.Yaw = ship.Yaw;
                                    path.resetpoint = path.Elements.Count;
                                    ship.Status.WalkingSpeed = speed;
                                    break;
                            }
                            break;
                    }
                }
            }

            return path;
        }
Ejemplo n.º 14
0
 private void SetShipYard(ShipYard shipYard)
 {
     _targetShipYard = shipYard;
 }