Пример #1
0
 /// <summary>
 ///     コピーコンストラクタ
 /// </summary>
 /// <param name="original">複製元のユニット装備情報</param>
 public UnitEquipment(UnitEquipment original)
 {
     Resource = original.Resource;
     Quantity = original.Quantity;
 }
Пример #2
0
        /// <summary>
        ///     装備の追加ボタン押下時の処理
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnEquipmentAddButtonClick(object sender, EventArgs e)
        {
            // 選択中のユニットクラスがなければ何もしない
            UnitClass unit = classListBox.SelectedItem as UnitClass;
            if (unit == null)
            {
                return;
            }

            // 選択中のユニットモデルがなければ何もしない
            if (modelListView.SelectedIndices.Count == 0)
            {
                return;
            }
            int i = modelListView.SelectedIndices[0];
            UnitModel model = unit.Models[i];

            Log.Info("[Unit] Added new equipment: ({0})", unit.GetModelName(i));

            // 装備リストに項目を追加する
            UnitEquipment equipment = new UnitEquipment();
            model.Equipments.Add(equipment);

            // 編集済みフラグを設定する
            equipment.SetDirtyAll();
            model.SetDirty();
            unit.SetDirtyFile();

            // 装備リストビューに項目を追加する
            AddEquipmentListItem(equipment);
        }
Пример #3
0
        /// <summary>
        ///     装備リストビューの項目を追加する
        /// </summary>
        /// <param name="equipment">追加対象の装備</param>
        private void AddEquipmentListItem(UnitEquipment equipment)
        {
            // 装備リストビューに項目を追加する
            ListViewItem item = CreateEquipmentListItem(equipment);
            equipmentListView.Items.Add(item);

            // 追加した項目を選択する
            int index = equipmentListView.Items.Count - 1;
            equipmentListView.Items[index].Focused = true;
            equipmentListView.Items[index].Selected = true;
            equipmentListView.EnsureVisible(index);

            // 編集項目を有効化する
            EnableEquipmentItems();
        }
Пример #4
0
        /// <summary>
        ///     装備リストの項目を作成する
        /// </summary>
        /// <param name="equipment">装備</param>
        /// <returns>装備リストの項目</returns>
        private static ListViewItem CreateEquipmentListItem(UnitEquipment equipment)
        {
            ListViewItem item = new ListViewItem
            {
                Text = Config.GetText(Units.EquipmentNames[(int) equipment.Resource])
            };
            item.SubItems.Add(DoubleHelper.ToString(equipment.Quantity));

            return item;
        }