diff --git a/src/common/gamecode/creport.c b/src/common/gamecode/creport.c index ff86115bb..d4a09cb75 100644 --- a/src/common/gamecode/creport.c +++ b/src/common/gamecode/creport.c @@ -570,7 +570,7 @@ cr_output_ship(FILE * F, const ship * sh, const unit * u, int fcaptain, const fa fprintf(F, "\"%s\";Typ\n", add_translation(sh->type->name[0], locale_string(f->locale, sh->type->name[0]))); fprintf(F, "%d;Groesse\n", sh->size); if (sh->damage) { - int percent = sh->damage*100/(sh->size*DAMAGE_SCALE); + int percent = (sh->damage+DAMAGE_SCALE-1)*100/(sh->size*DAMAGE_SCALE); fprintf(F, "%d;Schaden\n", percent); } if (u) diff --git a/src/common/gamecode/report.c b/src/common/gamecode/report.c index 6f1c1a470..3e084687c 100644 --- a/src/common/gamecode/report.c +++ b/src/common/gamecode/report.c @@ -2105,9 +2105,8 @@ report_plaintext(const char * filename, report_context * ctx) sh->type->construction->maxsize); } if (sh->damage) { - sprintf(buf+strlen(buf), ", %d%% %s", - sh->damage*100/(sh->size*DAMAGE_SCALE), - LOC(f->locale, "nr_damaged")); + int percent = (sh->damage+DAMAGE_SCALE-1)*100/(sh->size*DAMAGE_SCALE); + sprintf(buf+strlen(buf), ", %d%% %s", percent, LOC(f->locale, "nr_damaged")); } if (!fval(r->terrain, SEA_REGION)) { if (sh->coast != NODIRECTION) {