OSDN Git Service

ダメージがあるのにHPのパーセント表示が100%になることがあるのを直す
authorKazuhiro Fujieda <fujieda@users.osdn.me>
Sun, 4 Mar 2018 05:50:33 +0000 (14:50 +0900)
committerKazuhiro Fujieda <fujieda@users.osdn.me>
Sun, 4 Mar 2018 07:06:00 +0000 (16:06 +0900)
KancolleSniffer.Test/ShipLabelTest.cs
KancolleSniffer/ShipLabel.cs

index 1dc2aff..0486ad5 100644 (file)
@@ -135,5 +135,17 @@ namespace KancolleSniffer.Test
                 ShipNameWidth.AkashiTimer);\r
             PAssert.That(() => label.Text == "[避]朝潮改二");\r
         }\r
+\r
+        /// <summary>\r
+        /// %表示の小数部を切り捨てる\r
+        /// </summary>\r
+        [TestMethod]\r
+        public void RoundOffFractionOfPercent()\r
+        {\r
+            var label = new ShipLabel {Parent = new Panel()};\r
+            label.SetHp(104, 105);\r
+            label.ToggleHpPercent();\r
+            PAssert.That(() => label.Text == "99%");\r
+        }\r
     }\r
 }
\ No newline at end of file
index d10f919..0641d9f 100644 (file)
@@ -132,7 +132,7 @@ namespace KancolleSniffer
                 return;\r
             }\r
             Text = _hpPercent\r
-                ? $"{(int)Ceiling(status.NowHp * 100.0 / status.MaxHp):D}%"\r
+                ? $"{(int)Floor(status.NowHp * 100.0 / status.MaxHp):D}%"\r
                 : $"{status.NowHp:D}/{status.MaxHp:D}";\r
             BackColor = DamageColor(status, PresetColor);\r
         }\r