/// <summary> /// componentセクションを書き出す /// </summary> /// <param name="component">小研究データ</param> /// <param name="writer">ファイル書き込み用</param> private static void WriteComponent(TechComponent component, StreamWriter writer) { writer.WriteLine(" # {0}", Config.ExistsKey(component.Name) ? Config.GetText(component.Name) : ""); writer.Write( " component = {{ id = {0} name = {1} type = {2} difficulty = {3}", component.Id, component.Name, Techs.SpecialityStrings[(int) component.Speciality], component.Difficulty); if (component.DoubleTime) { writer.Write(" double_time = yes"); } writer.WriteLine(" }"); }
/// <summary> /// 小研究リストに項目を挿入する /// </summary> /// <param name="component">挿入対象の小研究</param> /// <param name="index">挿入する位置</param> private void InsertComponentListItem(TechComponent component, int index) { // リストに項目を追加する ListViewItem li = CreateComponentListItem(component); componentListView.Items.Insert(index, li); // 挿入した項目を選択する componentListView.Items[index].Focused = true; componentListView.Items[index].Selected = true; componentListView.EnsureVisible(index); }
/// <summary> /// 小研究リストの項目を追加する /// </summary> /// <param name="component">追加対象の小研究</param> private void AddComponentListItem(TechComponent component) { // リストに項目を追加する ListViewItem li = CreateComponentListItem(component); componentListView.Items.Add(li); // 追加した項目を選択する int index = componentListView.Items.Count - 1; componentListView.Items[index].Focused = true; componentListView.Items[index].Selected = true; componentListView.EnsureVisible(index); // 編集項目を有効化する EnableComponentItems(); }
/// <summary> /// 小研究リストの項目を作成する /// </summary> /// <param name="component">小研究</param> /// <returns>小研究リストの項目</returns> private static ListViewItem CreateComponentListItem(TechComponent component) { ListViewItem li = new ListViewItem { Text = IntHelper.ToString(component.Id) }; li.SubItems.Add(component.ToString()); li.SubItems.Add(Techs.GetSpecialityName(component.Speciality)); li.SubItems.Add(IntHelper.ToString(component.Difficulty)); li.SubItems.Add(component.DoubleTime ? Resources.Yes : Resources.No); return li; }
/// <summary> /// 小研究を複製する /// </summary> /// <returns>複製した小研究</returns> public TechComponent Clone() { TechComponent component = new TechComponent { Name = Config.GetTempKey(), Speciality = Speciality, Difficulty = Difficulty, DoubleTime = DoubleTime }; Config.SetText(component.Name, Config.GetText(Name), Game.TechTextFileName); return component; }
/// <summary> /// 小研究を作成する /// </summary> /// <returns>作成した小研究</returns> public static TechComponent Create() { TechComponent component = new TechComponent { Name = Config.GetTempKey(), Speciality = TechSpeciality.Artillery, Difficulty = 1 }; // 文字列設定 Config.SetText(component.Name, "", Game.TechTextFileName); return component; }
/// <summary> /// 小研究リストに項目を挿入する /// </summary> /// <param name="component">挿入対象の項目</param> /// <param name="index">挿入する位置</param> public void InsertComponent(TechComponent component, int index) { Components.Insert(index, component); }
/// <summary> /// 小研究リストに項目を追加する /// </summary> /// <param name="component">追加対象の項目</param> public void AddComponent(TechComponent component) { Components.Add(component); }