]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Reduce CTX calls from 5 to 1 when calling count_fill based macros (e.g. count_seconds)
authorterencehill <piuntn@gmail.com>
Sat, 16 Jul 2016 11:58:57 +0000 (13:58 +0200)
committerterencehill <piuntn@gmail.com>
Sat, 16 Jul 2016 11:58:57 +0000 (13:58 +0200)
qcsrc/lib/counting.qh

index d12ae42501494941e2dd9d679cbe8a13b8d12f64..e430a648d168a41d38a976745880113c6f3258f1 100644 (file)
@@ -9,57 +9,57 @@
 #define count_years_decs(time, decs) sprintf(CTX(_("CI_DEC^%s years")), ftos_decimals(time, decs))
 #define count_years(time) \
        count_fill(time, \
-       CTX(_("CI_ZER^%d years")), /* zeroth */ \
-       CTX(_("CI_FIR^%d year")),  /* first */ \
-       CTX(_("CI_SEC^%d years")), /* year */ \
-       CTX(_("CI_THI^%d years")), /* third */ \
-       CTX(_("CI_MUL^%d years"))) /* multi */
+       _("CI_ZER^%d years"), /* zeroth */ \
+       _("CI_FIR^%d year"),  /* first */ \
+       _("CI_SEC^%d years"), /* year */ \
+       _("CI_THI^%d years"), /* third */ \
+       _("CI_MUL^%d years")) /* multi */
 
 #define count_weeks_decs(time, decs) sprintf(CTX(_("CI_DEC^%s weeks")), ftos_decimals(time, decs))
 #define count_weeks(time) \
        count_fill(time, \
-       CTX(_("CI_ZER^%d weeks")), /* zeroth */ \
-       CTX(_("CI_FIR^%d week")),  /* first */ \
-       CTX(_("CI_SEC^%d weeks")), /* week */ \
-       CTX(_("CI_THI^%d weeks")), /* third */ \
-       CTX(_("CI_MUL^%d weeks"))) /* multi */
+       _("CI_ZER^%d weeks"), /* zeroth */ \
+       _("CI_FIR^%d week"),  /* first */ \
+       _("CI_SEC^%d weeks"), /* week */ \
+       _("CI_THI^%d weeks"), /* third */ \
+       _("CI_MUL^%d weeks")) /* multi */
 
 #define count_days_decs(time, decs) sprintf(CTX(_("CI_DEC^%s days")), ftos_decimals(time, decs))
 #define count_days(time) \
        count_fill(time, \
-       CTX(_("CI_ZER^%d days")), /* zeroth */ \
-       CTX(_("CI_FIR^%d day")),  /* first */ \
-       CTX(_("CI_SEC^%d days")), /* day */ \
-       CTX(_("CI_THI^%d days")), /* third */ \
-       CTX(_("CI_MUL^%d days"))) /* multi */
+       _("CI_ZER^%d days"), /* zeroth */ \
+       _("CI_FIR^%d day"),  /* first */ \
+       _("CI_SEC^%d days"), /* day */ \
+       _("CI_THI^%d days"), /* third */ \
+       _("CI_MUL^%d days")) /* multi */
 
 #define count_hours_decs(time, decs) sprintf(CTX(_("CI_DEC^%s hours")), ftos_decimals(time, decs))
 #define count_hours(time) \
        count_fill(time, \
-       CTX(_("CI_ZER^%d hours")), /* zeroth */ \
-       CTX(_("CI_FIR^%d hour")),  /* first */ \
-       CTX(_("CI_SEC^%d hours")), /* hour */ \
-       CTX(_("CI_THI^%d hours")), /* third */ \
-       CTX(_("CI_MUL^%d hours"))) /* multi */
+       _("CI_ZER^%d hours"), /* zeroth */ \
+       _("CI_FIR^%d hour"),  /* first */ \
+       _("CI_SEC^%d hours"), /* hour */ \
+       _("CI_THI^%d hours"), /* third */ \
+       _("CI_MUL^%d hours")) /* multi */
 
 
 #define count_minutes_decs(time, decs) sprintf(CTX(_("CI_DEC^%s minutes")), ftos_decimals(time, decs))
 #define count_minutes(time) \
        count_fill(time, \
-       CTX(_("CI_ZER^%d minutes")), /* zeroth */ \
-       CTX(_("CI_FIR^%d minute")),  /* first */ \
-       CTX(_("CI_SEC^%d minutes")), /* minute */ \
-       CTX(_("CI_THI^%d minutes")), /* third */ \
-       CTX(_("CI_MUL^%d minutes"))) /* multi */
+       _("CI_ZER^%d minutes"), /* zeroth */ \
+       _("CI_FIR^%d minute"),  /* first */ \
+       _("CI_SEC^%d minutes"), /* minute */ \
+       _("CI_THI^%d minutes"), /* third */ \
+       _("CI_MUL^%d minutes")) /* multi */
 
 #define count_seconds_decs(time, decs) sprintf(CTX(_("CI_DEC^%s seconds")), ftos_decimals(time, decs))
 #define count_seconds(time) \
        count_fill(time, \
-       CTX(_("CI_ZER^%d seconds")), /* zeroth */ \
-       CTX(_("CI_FIR^%d second")),  /* first */ \
-       CTX(_("CI_SEC^%d seconds")), /* second */ \
-       CTX(_("CI_THI^%d seconds")), /* third */ \
-       CTX(_("CI_MUL^%d seconds"))) /* multi */
+       _("CI_ZER^%d seconds"), /* zeroth */ \
+       _("CI_FIR^%d second"),  /* first */ \
+       _("CI_SEC^%d seconds"), /* second */ \
+       _("CI_THI^%d seconds"), /* third */ \
+       _("CI_MUL^%d seconds")) /* multi */
 
 string count_ordinal(int interval)
 {
@@ -102,16 +102,16 @@ string count_fill(float interval, string zeroth, string first, string second, st
 
        switch (floor(interval))
        {
-               case 0: return sprintf(zeroth, interval);
+               case 0: return sprintf(CTX(zeroth), interval);
                case 1:
                {
                        if (interval == 1)  // EXACTLY value of 1
-                               return sprintf(first, interval);
-                       else return sprintf(multi, interval);
+                               return sprintf(CTX(first), interval);
+                       else return sprintf(CTX(multi), interval);
                }
-               case 2: return sprintf(second, interval);
-               case 3: return sprintf(third, interval);
-               default: return sprintf(multi, interval);
+               case 2: return sprintf(CTX(second), interval);
+               case 3: return sprintf(CTX(third), interval);
+               default: return sprintf(CTX(multi), interval);
        }
        return "";
 }