diff --git a/src/common/gamecode/creport.c b/src/common/gamecode/creport.c index 2e7640499..e66bc21cd 100644 --- a/src/common/gamecode/creport.c +++ b/src/common/gamecode/creport.c @@ -778,6 +778,7 @@ cr_output_unit(FILE * F, const region * r, #ifdef LASTORDER if (ord==u->lastorder) continue; #endif + if (u->old_orders && is_repeated(ord)) continue; /* unit has defaults */ if (is_persistent(ord)) { fwriteorder(F, ord, f->locale); fputc('\n', F); diff --git a/src/common/gamecode/laws.c b/src/common/gamecode/laws.c index 9a41768d8..121b400a2 100644 --- a/src/common/gamecode/laws.c +++ b/src/common/gamecode/laws.c @@ -247,7 +247,7 @@ get_food(region *r) int hungry = u->number; while (donor!=NULL && hungry>0) { - /* alwayy start with the first known uint that may have some blood */ + /* always start with the first known unit that may have some blood */ static const struct potion_type * pt_blood; if (pt_blood==NULL) pt_blood = pt_find("peasantblood"); while (donor!=NULL) { diff --git a/src/common/gamecode/report.c b/src/common/gamecode/report.c index 4ff318a73..451f09433 100644 --- a/src/common/gamecode/report.c +++ b/src/common/gamecode/report.c @@ -1603,6 +1603,7 @@ order_template(FILE * F, faction * f) } #endif for (ord = u->orders; ord; ord = ord->next) { + if (u->old_orders && is_repeated(ord)) continue; /* unit has defaults */ if (is_persistent(ord)) { strcpy(buf, " "); write_order(ord, u->faction->locale, buf+2, sizeof(buf)-2); diff --git a/src/common/kernel/reports.c b/src/common/kernel/reports.c index cece01f13..f18178879 100644 --- a/src/common/kernel/reports.c +++ b/src/common/kernel/reports.c @@ -442,6 +442,7 @@ bufunit(const faction * f, const unit * u, int indent, int mode) ++printed; break; } + if (printed) break; /* ein DEFAULT reicht */ ord=ord->next; } } diff --git a/src/common/kernel/save.c b/src/common/kernel/save.c index 2dbace443..6673e9ff9 100644 --- a/src/common/kernel/save.c +++ b/src/common/kernel/save.c @@ -1246,6 +1246,7 @@ writeunit(FILE * F, const unit * u) } #endif for (ord = u->orders; ord; ord=ord->next) { + if (u->old_orders && is_repeated(ord)) continue; /* has new defaults */ if (is_persistent(ord)) { fwriteorder(F, ord, u->faction->locale); fputc(' ', F);