From 10783a05e33f42f695c6194d518fe369bd1e5cef Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Sun, 13 Jan 2019 09:48:40 +0100 Subject: [PATCH 1/3] newline after travelthru message --- .gitignore | 1 + src/.report.c.swp | Bin 94208 -> 0 bytes src/report.c | 1 + 3 files changed, 2 insertions(+) delete mode 100644 src/.report.c.swp diff --git a/.gitignore b/.gitignore index 75ec9a227..98b1e8e0a 100644 --- a/.gitignore +++ b/.gitignore @@ -27,6 +27,7 @@ ipch/ *~ *.pyc *.bak +*.swp bin/ build*/ *.log diff --git a/src/.report.c.swp b/src/.report.c.swp deleted file mode 100644 index c7bb683f30632149b501dca349765d98c985f1bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 94208 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 diff --git a/src/report.c b/src/report.c index 2b6d618a0..2381fefdc 100644 --- a/src/report.c +++ b/src/report.c @@ -2170,6 +2170,7 @@ report_plaintext(const char *filename, report_context * ctx, newline(out); report_travelthru(out, r, f); } + newline(out); if (wants_stats && r->seen.mode >= seen_unit) { statistics(out, r, f); From 5648830b4d8d3fc6125bd2d7fab1759b5a271bd9 Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Sun, 13 Jan 2019 19:17:31 +0100 Subject: [PATCH 2/3] =?UTF-8?q?Vereinfachte=20Statistik=20f=C3=BCr=20Durch?= =?UTF-8?q?reiseregionen=20anzeigen.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/creport.c | 2 +- src/report.c | 75 +++++++++++++++++++++++++++------------------------ 2 files changed, 41 insertions(+), 36 deletions(-) diff --git a/src/creport.c b/src/creport.c index 8f30fa50e..5720be4ce 100644 --- a/src/creport.c +++ b/src/creport.c @@ -1399,7 +1399,7 @@ static void cr_output_region(FILE * F, report_context * ctx, region * r) fprintf(F, "%d;Bauern\n", rpeasants(r)); fprintf(F, "%d;Pferde\n", rhorses(r)); - if (r->seen.mode >= seen_unit) { + if (r->seen.mode >= seen_travel) { if (rule_region_owners()) { faction *owner = region_get_owner(r); if (owner) { diff --git a/src/report.c b/src/report.c index 2b6d618a0..cafcf810c 100644 --- a/src/report.c +++ b/src/report.c @@ -1160,26 +1160,14 @@ void report_region(struct stream *out, const region * r, faction * f) static void statistics(struct stream *out, const region * r, const faction * f) { - const unit *u; - int number = 0, p = rpeasants(r); + int p = rpeasants(r); message *m; - item *itm, *items = NULL; char buf[4096]; - /* count */ - for (u = r->units; u; u = u->next) { - if (u->faction == f && !fval(u_race(u), RCF_INVISIBLE)) { - for (itm = u->items; itm; itm = itm->next) { - i_change(&items, itm->type, itm->number); - } - number += u->number; - } - } /* print */ m = msg_message("nr_stat_header", "region", r); nr_render(m, f->locale, buf, sizeof(buf), f); msg_release(m); - newline(out); paragraph(out, buf, 0, 0, 0); newline(out); @@ -1211,6 +1199,21 @@ static void statistics(struct stream *out, const region * r, const faction * f) paragraph(out, buf, 2, 2, 0); msg_release(m); + if (r->land->ownership) { + m = msg_message("nr_stat_morale", "morale", region_get_morale(r)); + nr_render(m, f->locale, buf, sizeof(buf), f); + paragraph(out, buf, 2, 2, 0); + msg_release(m); + } + + } + + /* info about units */ + if (r->seen.mode >= seen_unit) { + int number; + item *itm, *items = NULL; + unit *u; + if (!markets_module()) { if (buildingtype_exists(r, bt_find("caravan"), true)) { m = msg_message("nr_stat_luxuries", "max", (p * 2) / TRADE_FRACTION); @@ -1223,28 +1226,28 @@ static void statistics(struct stream *out, const region * r, const faction * f) msg_release(m); } - if (r->land->ownership) { - m = msg_message("nr_stat_morale", "morale", region_get_morale(r)); - nr_render(m, f->locale, buf, sizeof(buf), f); - paragraph(out, buf, 2, 2, 0); - msg_release(m); + /* count */ + for (number = 0, u = r->units; u; u = u->next) { + if (u->faction == f && !fval(u_race(u), RCF_INVISIBLE)) { + for (itm = u->items; itm; itm = itm->next) { + i_change(&items, itm->type, itm->number); + } + number += u->number; + } } - - } - /* info about units */ - - m = msg_message("nr_stat_people", "max", number); - nr_render(m, f->locale, buf, sizeof(buf), f); - paragraph(out, buf, 2, 2, 0); - msg_release(m); - - for (itm = items; itm; itm = itm->next) { - sprintf(buf, "%s: %d", - LOC(f->locale, resourcename(itm->type->rtype, GR_PLURAL)), itm->number); + m = msg_message("nr_stat_people", "max", number); + nr_render(m, f->locale, buf, sizeof(buf), f); paragraph(out, buf, 2, 2, 0); + msg_release(m); + + for (itm = items; itm; itm = itm->next) { + sprintf(buf, "%s: %d", + LOC(f->locale, resourcename(itm->type->rtype, GR_PLURAL)), itm->number); + paragraph(out, buf, 2, 2, 0); + } + while (items) + i_free(i_remove(&items, items)); } - while (items) - i_free(i_remove(&items, items)); } @@ -2171,9 +2174,11 @@ report_plaintext(const char *filename, report_context * ctx, report_travelthru(out, r, f); } - if (wants_stats && r->seen.mode >= seen_unit) { - statistics(out, r, f); - newline(out); + if (wants_stats && r->seen.mode >= seen_travel) { + if (r->land || r->seen.mode >= seen_unit) { + newline(out); + statistics(out, r, f); + } } /* Nachrichten an REGION in der Region */ From 5943047745d46bb74e1e45a3832391eb53d9dfba Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Fri, 18 Jan 2019 22:26:55 +0100 Subject: [PATCH 3/3] MSVC debugger gets confused when two structs have the same name --- src/util/parser.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/util/parser.c b/src/util/parser.c index f0090fdf3..3d1ba250d 100644 --- a/src/util/parser.c +++ b/src/util/parser.c @@ -15,14 +15,14 @@ #define ESCAPE_CHAR '\\' #define MAXTOKENSIZE 8192 -typedef struct parser_state { +typedef struct parse_state { const char *current_token; - struct parser_state *next; + struct parse_state *next; void *data; void(*dtor)(void *); -} parser_state; +} parse_state; -static parser_state *states; +static parse_state *states; static int eatwhitespace_c(const char **str_p) { @@ -57,7 +57,7 @@ static int eatwhitespace_c(const char **str_p) void init_tokens_ex(const char *initstr, void *data, void (*dtor)(void *)) { if (states == NULL) { - states = calloc(1, sizeof(parser_state)); + states = calloc(1, sizeof(parse_state)); if (!states) abort(); } else if (states->dtor) { @@ -74,7 +74,7 @@ void init_tokens_str(const char *initstr) { void parser_pushstate(void) { - parser_state *new_state = calloc(1, sizeof(parser_state)); + parse_state *new_state = calloc(1, sizeof(parse_state)); if (!new_state) abort(); new_state->current_token = NULL; new_state->next = states; @@ -83,7 +83,7 @@ void parser_pushstate(void) void parser_popstate(void) { - parser_state *new_state = states->next; + parse_state *new_state = states->next; if (states->dtor) { states->dtor(states->data); }