• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Commit MetaInfo

Revisiónec634799b309e8d896909396bf66cd843fa8a226 (tree)
Tiempo2020-01-20 21:02:06
AutorKazuhiro Fujieda <fujieda@user...>
CommiterKazuhiro Fujieda

Log Message

複数項目こなす任務のカウンターのツールチップの仕様を変更する

Cambiar Resumen

Diferencia incremental

--- a/KancolleSniffer.Test/QuestCounterTest.cs
+++ b/KancolleSniffer.Test/QuestCounterTest.cs
@@ -146,38 +146,38 @@ namespace KancolleSniffer.Test
146146 Assert.AreEqual("20/36 7/6 10/24 8/12", status.QuestCountList[1].ToString());
147147 var z = status.QuestCountList[2];
148148 Assert.AreEqual("2\u200a1\u200a1\u200a1", z.ToString());
149- Assert.AreEqual("2-4 6-1 6-3 6-4", z.ToToolTip());
149+ Assert.AreEqual("2-4:2 6-1:1 6-3:1 6-4:1", z.ToToolTip());
150150 z.NowArray = new[] {0, 0, 0, 0};
151- Assert.AreEqual("", z.ToToolTip());
151+ Assert.AreEqual("2-4:0 6-1:0 6-3:0 6-4:0", z.ToToolTip());
152152 var q426 = status.QuestCountList[3];
153153 Assert.AreEqual("1\u200a1\u200a1\u200a1", q426.ToString());
154- Assert.AreEqual("警備任務 対潜警戒任務 海上護衛任務 強硬偵察任務", q426.ToToolTip());
154+ Assert.AreEqual("警備任務1 対潜警戒任務1 海上護衛任務1 強硬偵察任務1", q426.ToToolTip());
155155 var q428 = status.QuestCountList[4];
156156 Assert.AreEqual("対潜警戒任務1 海峡警備行動1 長時間対潜警戒1", q428.ToToolTip());
157157 q428.NowArray = new[] {0, 1, 0};
158- Assert.AreEqual("海峡警備行動1", q428.ToToolTip());
158+ Assert.AreEqual("対潜警戒任務0 海峡警備行動1 長時間対潜警戒0", q428.ToToolTip());
159159 var q873 = status.QuestCountList[5];
160160 Assert.AreEqual("1\u200a1\u200a1", q873.ToString());
161- Assert.AreEqual("3-1 3-2 3-3", q873.ToToolTip());
161+ Assert.AreEqual("3-1:1 3-2:1 3-3:1", q873.ToToolTip());
162162 var q888 = status.QuestCountList[6];
163163 Assert.AreEqual("1\u200a1\u200a1", q888.ToString());
164- Assert.AreEqual("5-1 5-3 5-4", q888.ToToolTip());
164+ Assert.AreEqual("5-1:1 5-3:1 5-4:1", q888.ToToolTip());
165165 var q688 = status.QuestCountList[7];
166166 Assert.AreEqual("艦戦2 艦爆1 艦攻2 水偵1", q688.ToToolTip());
167167 var q893 = status.QuestCountList[8];
168168 Assert.AreEqual("1-5:1 7-1:1 7-2G:1 7-2M:1", q893.ToToolTip());
169169 var q894 = status.QuestCountList[9];
170170 Assert.AreEqual("1\u200a1\u200a1\u200a1\u200a1", q894.ToString());
171- Assert.AreEqual("1-3 1-4 2-1 2-2 2-3", q894.ToToolTip());
171+ Assert.AreEqual("1-3:1 1-4:1 2-1:1 2-2:1 2-3:1", q894.ToToolTip());
172172 var q280 = status.QuestCountList[10];
173173 Assert.AreEqual("1\u200a1\u200a1\u200a1", q280.ToString());
174- Assert.AreEqual("1-2 1-3 1-4 2-1", q280.ToToolTip());
174+ Assert.AreEqual("1-2:1 1-3:1 1-4:1 2-1:1", q280.ToToolTip());
175175 var q872 = status.QuestCountList.First(q => q.Id == 872);
176176 Assert.AreEqual("1\u200a1\u200a1\u200a1", q872.ToString());
177- Assert.AreEqual("7-2M 5-5 6-2 6-5", q872.ToToolTip());
177+ Assert.AreEqual("7-2M:1 5-5:1 6-2:1 6-5:1", q872.ToToolTip());
178178 var q284 = status.QuestCountList.First(q => q.Id == 284);
179179 Assert.AreEqual("1\u200a1\u200a1\u200a1", q284.ToString());
180- Assert.AreEqual("1-4 2-1 2-2 2-3", q284.ToToolTip());
180+ Assert.AreEqual("1-4:1 2-1:1 2-2:1 2-3:1", q284.ToToolTip());
181181 var q226 = status.QuestCountList.First(q => q.Id == 226);
182182 Assert.AreEqual("2/5", q226.ToString());
183183 Assert.AreEqual("", q226.ToToolTip());
--- a/KancolleSniffer/Model/QuestCounter.cs
+++ b/KancolleSniffer/Model/QuestCounter.cs
@@ -113,26 +113,19 @@ namespace KancolleSniffer.Model
113113
114114 public string ToToolTip()
115115 {
116+ if (NowArray == null)
117+ return "";
116118 if (Spec is QuestSortie spec && spec.Maps != null && spec.MaxArray != null)
117119 {
118- var flags = spec.MaxArray.All(x => x == 1);
119- return string.Join(" ",
120- spec.Maps.Zip(NowArray, (map, n) => n >= 1 ? $"{MapString(map)}{(flags ? "" : $":{n}")}" : "")
121- .Where(s => !string.IsNullOrEmpty(s)));
120+ return string.Join(" ", spec.Maps.Zip(NowArray, (map, n) => $"{MapString(map)}:{n}"));
122121 }
123- return Id switch
122+ return string.Join(" ", (Id switch
124123 {
125- 426 => string.Join(" ",
126- new[] {"警備任務", "対潜警戒任務", "海上護衛任務", "強硬偵察任務"}.Zip(NowArray, (mission, n) => n >= 1 ? mission : "")
127- .Where(s => !string.IsNullOrEmpty(s))),
128- 428 => string.Join(" ",
129- new[] {"対潜警戒任務", "海峡警備行動", "長時間対潜警戒"}.Zip(NowArray, (mission, n) => n >= 1 ? mission + n : "")
130- .Where(s => !string.IsNullOrEmpty(s))),
131- 688 => string.Join(" ",
132- new[] {"艦戦", "艦爆", "艦攻", "水偵"}.Zip(NowArray, (type, n) => n >= 1 ? type + n : "")
133- .Where(s => !string.IsNullOrEmpty(s))),
134- _ => ""
135- };
124+ 426 => new[] {"警備任務", "対潜警戒任務", "海上護衛任務", "強硬偵察任務"},
125+ 428 => new[] {"対潜警戒任務", "海峡警備行動", "長時間対潜警戒"},
126+ 688 => new[] {"艦戦", "艦爆", "艦攻", "水偵"},
127+ _ => new string[0]
128+ }).Zip(NowArray, (entry, n) => $"{entry}{n}"));
136129 }
137130
138131 public bool Cleared => NowArray?.Zip(Spec.MaxArray, (n, m) => n >= m).All(x => x) ??