diff --git a/res/e3a/spellbooks/gray.xml b/res/e3a/spellbooks/gray.xml index 998405b03..f3f4e496d 100644 --- a/res/e3a/spellbooks/gray.xml +++ b/res/e3a/spellbooks/gray.xml @@ -25,7 +25,7 @@ - + diff --git a/res/e3a/spellbooks/illaun.xml b/res/e3a/spellbooks/illaun.xml index 0392842c2..8d820bf71 100644 --- a/res/e3a/spellbooks/illaun.xml +++ b/res/e3a/spellbooks/illaun.xml @@ -27,7 +27,7 @@ - + diff --git a/res/e3a/spells.xml b/res/e3a/spells.xml index 94d7cbc08..d72386803 100644 --- a/res/e3a/spells.xml +++ b/res/e3a/spells.xml @@ -79,13 +79,13 @@ + - + --> diff --git a/res/eressea/spellbooks/gray.xml b/res/eressea/spellbooks/gray.xml index 942b50237..74486f004 100644 --- a/res/eressea/spellbooks/gray.xml +++ b/res/eressea/spellbooks/gray.xml @@ -30,7 +30,7 @@ - + diff --git a/res/eressea/spellbooks/illaun.xml b/res/eressea/spellbooks/illaun.xml index 83ffcfc27..6552a4bd8 100644 --- a/res/eressea/spellbooks/illaun.xml +++ b/res/eressea/spellbooks/illaun.xml @@ -20,7 +20,7 @@ - + diff --git a/res/eressea/spells.xml b/res/eressea/spells.xml index 1931a4c74..5725b8768 100644 --- a/res/eressea/spells.xml +++ b/res/eressea/spells.xml @@ -446,12 +446,13 @@ - + diff --git a/src/attributes/seenspell.c b/src/attributes/seenspell.c index e20976015..698a83076 100644 --- a/src/attributes/seenspell.c +++ b/src/attributes/seenspell.c @@ -54,11 +54,12 @@ static int read_seenspells(variant *var, void *owner, struct gamedata *data) READ_TOK(store, token, sizeof(token)); while (token[0]) { spell *sp = find_spell(token); - if (!sp) { - log_info("read_seenspells: could not find spell '%s'\n", token); - return AT_READ_FAIL; + if (sp) { + selist_push(&ql, sp); + } + else { + log_info("read_seenspells: could not find spell '%s'\n", token); } - selist_push(&ql, sp); READ_TOK(store, token, sizeof(token)); } var->v = ql; @@ -70,8 +71,8 @@ static bool cb_write_spell(void *data, void *more) { storage *store = (storage *)more; WRITE_TOK(store, sp->sname); return true; - } + static void write_seenspells(const variant *var, const void *owner, struct storage *store) { diff --git a/src/creport.c b/src/creport.c index 0458f7271..23e0f7c8a 100644 --- a/src/creport.c +++ b/src/creport.c @@ -108,8 +108,8 @@ struct locale *crtag_locale(void) { static const char *crtag(const char *key) { const char *result; - result = LOC(crtag_locale(), key); - return result; + result = locale_string(crtag_locale(), key, false); + return result ? result : key; } /* * translation table @@ -849,11 +849,17 @@ void cr_output_unit(stream *out, const faction * f, pzTmp = get_racename(u->attribs); if (pzTmp) { const char *pzRace = locale_string(lang, mkname("race", pzTmp), false); - pzTmp = pzRace ? translate(pzRace, LOC(lang, pzRace)) : pzTmp; - stream_printf(out, "\"%s\";Typ\n", pzTmp); + if (pzRace) { + pzTmp = pzRace; + } + pzRace = translate(pzTmp, locale_string(lang, pzTmp, false)); + if (!pzRace) { + pzRace = pzTmp; + } + stream_printf(out, "\"%s\";Typ\n", pzRace); if (u->faction == f && fval(u_race(u), RCF_SHAPESHIFTANY)) { pzRace = rc_name_s(u_race(u), NAME_PLURAL); - stream_printf(out, "\"%s\";wahrerTyp\n", pzTmp); + stream_printf(out, "\"%s\";wahrerTyp\n", pzRace); } } else { diff --git a/vs2017-build.bat b/vs2017-build.bat index 22e153874..b79a81e85 100644 --- a/vs2017-build.bat +++ b/vs2017-build.bat @@ -12,5 +12,8 @@ IF exist build-vs%VSVERSION% goto HAVEDIR mkdir build-vs%VSVERSION% :HAVEDIR cd build-vs%VSVERSION% +IF NOT EXIST CMakeCache.txt GOTO NOCACHE +DEL CMakeCache.txt +:NOCACHE "%CMAKE_ROOT%\bin\cmake.exe" -G "Visual Studio %VSVERSION%" -DCMAKE_PREFIX_PATH="%LUA_DEV%;%WIN32_DEV%" -DCMAKE_MODULE_PATH="%SRCDIR%/cmake/Modules" -DCMAKE_SUPPRESS_REGENERATION=TRUE .. PAUSE