Ruestungschutzberechnung verbessert.

Um Rundungsverluste zu reduzieren (bei allen kleinen
Ruestungen sehr relevant), wird P_AC anfangs mit 10000
skaliert. Beim runterskalieren wird aufgerundet, damit
der Maximalwert auch erreicht werden kann, was bisher
nicht so war.

Change-Id: I3a43276e4cd2cc68c2fe28e4c008696db9749213
diff --git a/std/living/combat.c b/std/living/combat.c
index 053691a..2b05d85 100644
--- a/std/living/combat.c
+++ b/std/living/combat.c
@@ -1289,9 +1289,12 @@
   object stat = find_object("/d/erzmagier/zesstra/pacstat"); // TODO: remove
   if ( spell[SP_PHYSICAL_ATTACK] )
   {
-    // Minimum ist auch hier 1.
+    // Schutz bestimmen, Minimum 1, aber nur wenn P_BODY > 0
+    // Um Rundungsverluste zu reduzieren, wird P_BODY anfangs mit 10000
+    // skaliert. Beim runterskalieren wird aufgerundet (Addition von
+    // 5000 vor Division).
     int body = QueryProp(P_BODY)+QueryAttribute(A_DEX);
-    res2 = (body/4 + random(body*3/4 + 1)) || 1;
+    res2 = ((body/4 + random(body*3/4 + 1) + 5000)/10000) || 1;
     if (stat)
       stat->bodystat(body, res2, random(body)+1);