Esempio n. 1
0
        /// <summary>
        ///     海域リストから項目を削除する
        /// </summary>
        /// <param name="province"></param>
        private static void RemoveSeaZone(Province province)
        {
            // 名前が空文字列の場合は何もしない
            if (!Config.ExistsKey(province.Name) || string.IsNullOrEmpty(province.GetName()))
            {
                return;
            }

            SeaZones.Remove(province.Id);
            SeaZoneMap.Remove(province.Id);
        }
Esempio n. 2
0
        /// <summary>
        ///     プロヴィンスリストビューの項目を作成する
        /// </summary>
        /// <param name="province">プロヴィンスデータ</param>
        /// <returns>プロヴィンスリストビューの項目</returns>
        private static ListViewItem CreateProvinceListViewItem(Province province)
        {
            if (province == null)
            {
                return null;
            }

            ListViewItem item = new ListViewItem
            {
                Text = province.GetName(),
                Tag = province
            };
            item.SubItems.Add(IntHelper.ToString(province.Id));
            item.SubItems.Add(province.Terrain == TerrainId.Ocean ? Resources.Yes : Resources.No);
            item.SubItems.Add(province.PortAllowed ? Resources.Yes : Resources.No);
            item.SubItems.Add(province.Beaches ? Resources.Yes : Resources.No);
            item.SubItems.Add(DoubleHelper.ToString(province.Infrastructure));
            item.SubItems.Add(DoubleHelper.ToString(province.Ic));
            item.SubItems.Add(DoubleHelper.ToString(province.Manpower));
            item.SubItems.Add(DoubleHelper.ToString(province.Energy));
            item.SubItems.Add(DoubleHelper.ToString(province.Metal));
            item.SubItems.Add(DoubleHelper.ToString(province.RareMaterials));
            item.SubItems.Add(DoubleHelper.ToString(province.Oil));

            return item;
        }
Esempio n. 3
0
        /// <summary>
        ///     編集項目の値を更新する
        /// </summary>
        /// <param name="province">プロヴィンスデータ</param>
        private void UpdateEditableItemsValue(Province province)
        {
            // 基本設定
            idNumericUpDown.Value = province.Id;
            nameTextBox.Text = province.GetName();
            if (Provinces.Continents.Contains(province.Continent))
            {
                continentComboBox.SelectedIndex = Provinces.Continents.IndexOf(province.Continent);
            }
            else
            {
                continentComboBox.SelectedIndex = -1;
                continentComboBox.Text = Provinces.GetContinentName(province.Continent);
            }
            if (Provinces.Regions.Contains(province.Region))
            {
                regionComboBox.SelectedIndex = Provinces.Regions.IndexOf(province.Region);
            }
            else
            {
                regionComboBox.SelectedIndex = -1;
                regionComboBox.Text = Provinces.GetRegionName(province.Region);
            }
            if (Provinces.Areas.Contains(province.Area))
            {
                areaComboBox.SelectedIndex = Provinces.Areas.IndexOf(province.Area);
            }
            else
            {
                areaComboBox.SelectedIndex = -1;
                areaComboBox.Text = Provinces.GetAreaName(province.Area);
            }
            if (Provinces.Climates.Contains(province.Climate))
            {
                climateComboBox.SelectedIndex = Provinces.Climates.IndexOf(province.Climate);
            }
            else
            {
                climateComboBox.SelectedIndex = -1;
                climateComboBox.Text = Provinces.GetClimateName(province.Climate);
            }
            if (Provinces.Terrains.Contains(province.Terrain))
            {
                terrainComboBox.SelectedIndex = Provinces.Terrains.IndexOf(province.Terrain);
            }
            else
            {
                terrainComboBox.SelectedIndex = -1;
                terrainComboBox.Text = Provinces.GetTerrainName(province.Terrain);
            }

            // 資源設定
            infraTextBox.Text = DoubleHelper.ToString(province.Infrastructure);
            icTextBox.Text = DoubleHelper.ToString(province.Ic);
            manpowerTextBox.Text = DoubleHelper.ToString(province.Manpower);
            energyTextBox.Text = DoubleHelper.ToString(province.Energy);
            metalTextBox.Text = DoubleHelper.ToString(province.Metal);
            rareMaterialsTextBox.Text = DoubleHelper.ToString(province.RareMaterials);
            oilTextBox.Text = DoubleHelper.ToString(province.Oil);

            // 座標設定
            beachCheckBox.Checked = province.Beaches;
            beachXNumericUpDown.Value = province.BeachXPos;
            beachYNumericUpDown.Value = province.BeachYPos;
            beachIconNumericUpDown.Value = province.BeachIcon;
            portCheckBox.Checked = province.PortAllowed;
            portXNumericUpDown.Value = province.PortXPos;
            portYNumericUpDown.Value = province.PortYPos;
            portSeaZoneNumericUpDown.Value = province.PortSeaZone;
            if (Provinces.SeaZones.Contains(province.PortSeaZone))
            {
                portSeaZoneComboBox.SelectedIndex = Provinces.SeaZones.IndexOf(province.PortSeaZone);
            }
            else
            {
                portSeaZoneComboBox.SelectedIndex = -1;
                if (province.PortSeaZone > 0)
                {
                    Province seaProvince = Provinces.Items.First(prov => prov.Id == province.PortSeaZone);
                    portSeaZoneComboBox.Text = Config.GetText(seaProvince.Name);
                }
            }
            cityXNumericUpDown.Value = province.CityXPos;
            cityYNumericUpDown.Value = province.CityYPos;
            fortXNumericUpDown.Value = province.FortXPos;
            fortYNumericUpDown.Value = province.FortYPos;
            aaXNumericUpDown.Value = province.AaXPos;
            aaYNumericUpDown.Value = province.AaYPos;
            armyXNumericUpDown.Value = province.ArmyXPos;
            armyYNumericUpDown.Value = province.ArmyYPos;
            counterXNumericUpDown.Value = province.CounterXPos;
            counterYNumericUpDown.Value = province.CounterYPos;
            fillXNumericUpDown1.Value = province.FillCoordX1;
            fillYNumericUpDown1.Value = province.FillCoordY1;
            fillXNumericUpDown2.Value = province.FillCoordX2;
            fillYNumericUpDown2.Value = province.FillCoordY2;
            fillXNumericUpDown3.Value = province.FillCoordX3;
            fillYNumericUpDown3.Value = province.FillCoordY3;
            fillXNumericUpDown4.Value = province.FillCoordX4;
            fillYNumericUpDown4.Value = province.FillCoordY4;
        }
Esempio n. 4
0
 /// <summary>
 ///     プロヴィンス名を取得する
 /// </summary>
 /// <param name="province">プロヴィンス</param>
 /// <param name="settings">プロヴィンス設定</param>
 /// <returns>プロヴィンス名</returns>
 public static string GetProvinceName(Province province, ProvinceSettings settings)
 {
     if (!string.IsNullOrEmpty(settings?.Name))
     {
         return Config.ExistsKey(settings.Name) ? Config.GetText(settings.Name) : "";
     }
     return province.GetName();
 }