From c9b32982fcd6b43217fe1299f4b5475414e78635 Mon Sep 17 00:00:00 2001 From: belugas Date: Fri, 25 Aug 2006 00:41:10 +0000 Subject: (svn r6108) -NewGRF Feature: Implement currencies replacment via grf file. All properties can now be modified i.e: Introduction date for euro conversion Currency name, decimal separator, currency symbol (before or after amount) and the rate compared to the base currency, the british pound --- strings.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'strings.c') diff --git a/strings.c b/strings.c index 041a40ac1..d57d70129 100644 --- a/strings.c +++ b/strings.c @@ -381,9 +381,11 @@ static char *FormatGenericCurrency(char *buff, const CurrencySpec *spec, int64 n number = -number; } - // add prefix part - s = spec->prefix; - while (s != spec->prefix + lengthof(spec->prefix) && (c = *s++) != '\0') *buff++ = c; + /* add prefix part, only if it is specified by symbol_pos */ + if (spec->symbol_pos == 0) { + s = spec->prefix; + while (s != spec->prefix + lengthof(spec->prefix) && (c = *(s++)) != '\0') *(buff)++ = c; + } // for huge numbers, compact the number into k or M if (compact) { @@ -411,9 +413,11 @@ static char *FormatGenericCurrency(char *buff, const CurrencySpec *spec, int64 n if (compact) *buff++ = compact; - // add suffix part - s = spec->suffix; - while (s != spec->suffix + lengthof(spec->suffix) && (c = *s++) != '\0') *buff++ = c; + /* add suffix part, only if it is specified by symbol_pos */ + if (spec->symbol_pos != 0) { + s = spec->suffix; + while (s != spec->suffix + lengthof(spec->suffix) && (c = *(s++)) != '\0') *(buff++) = c; + } return buff; } -- cgit v1.2.3-54-g00ecf