示例#1
0
 public ColonizationSourceView(ColonizationController controller) : this()
 {
     if (controller == null)
     {
         throw new ArgumentNullException("controller");
     }
     this.controller = controller;
 }
        public void SetView(ColonizationController controller, PlayerController gameController)
        {
            this.controller     = controller;
            this.gameController = gameController;

            this.title.Text = LocalizationMethods.PlanetName(this.controller.PlanetBody);

            this.resetView();
        }
示例#3
0
        public void SetView(ColonizationController planetController, PlayerController gameController)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new Action <ColonizationController, PlayerController>(SetView), planetController, gameController);
                return;
            }

            this.controller     = planetController;
            this.gameController = gameController;

            setName();
            resetView();
        }
示例#4
0
        public FormPickColonizationSource(ColonizationController controller) : this()
        {
            this.controller = controller;

            foreach (var candidate in controller.AvailableSources())
            {
                sourceList.Items.Add(new Tag <StellarisInfo>(
                                         candidate,
                                         candidate.HostStar.Name.ToText(LocalizationManifest.Get.CurrentLanguage)
                                         ));
            }
            sourceList.SelectedIndex = 0;

            this.Text           = LocalizationManifest.Get.CurrentLanguage["FormColonization"]["addSourceTitle"].Text();
            this.Font           = SettingsWinforms.Get.FormFont;
            this.addButton.Text = LocalizationManifest.Get.CurrentLanguage["FormColonization"]["addSource"].Text();
        }
示例#5
0
        public ColonizationTargetView(ColonizationController controller, PlayerController gameController) : this()
        {
            this.controller     = controller;
            this.gameController = gameController;
            var context = LocalizationManifest.Get.CurrentLanguage["FormColonization"];

            var infoFormatter = new ThousandsFormatter(controller.PopulationMax);
            var infoVars      = new TextVar("pop", infoFormatter.Format(controller.Population)).
                                And("max", infoFormatter.Format(controller.PopulationMax));

            this.targetName.Text = LocalizationMethods.PlanetName(controller.PlanetBody);
            this.targetInfo.Text = context["population"].Text(infoVars.Get);

            var enrouteShips      = gameController.EnrouteColonizers(controller.PlanetBody).SelectMany(x => x.Ships).ToArray();
            var enroutePopulation = enrouteShips.Length > 0 ?
                                    enrouteShips.Sum(x => x.Quantity * x.Design.ColonizerPopulation) :
                                    0;

            this.enrouteInfo.Text = context["enroute"].Text(
                new TextVar("count", new ThousandsFormatter().Format(enroutePopulation)).Get
                );
        }