]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/util.qc
Merge branch 'terencehill/clockedtime_tostring_improvements' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / util.qc
index 1b3dce4b88f4c5835a313af830bbe6a15a554340..8ef6b2019f07c4a08d5467897214d5717ce03c56 100644 (file)
@@ -242,6 +242,7 @@ string build_mutator_list(string s)
        for (string arg = ""; i < n; i++)
        {
                if (i >= 0) arg = argv(i);
+               // cond is the condition for showing the mutator enabled in the menu
                #define X(name, translated_name, mut, cond) \
                        if(arg == name || (!n && (cond))) { s2 = cons_mid(s2, ", ", translated_name); mut_set_active(mut); }
                X("Dodging"                   , _("Dodging")                   , MUT_DODGING                   , cvar("g_dodging"))
@@ -266,7 +267,7 @@ string build_mutator_list(string s)
                X("Powerups"                  , _("Powerups")                  , MUT_POWERUPS                  , cvar("g_powerups") > 0)
                X("Touch explode"             , _("Touch explode")             , MUT_TOUCHEXPLODE              , cvar("g_touchexplode") > 0)
                X("Wall jumping"              , _("Wall jumping")              , MUT_WALLJUMP                  , cvar("g_walljump"))
-               X("No start weapons"          , _("No start weapons")          , MUT_WEAPONARENA               , cvar_string("g_weaponarena") == "0" && cvar("g_balance_blaster_weaponstartoverride") == 0)
+               X("No start weapons"          , _("No start weapons")          , MUT_NO_START_WEAPONS          , cvar_string("g_weaponarena") == "0" && cvar("g_balance_blaster_weaponstartoverride") == 0)
                X("Nades"                     , _("Nades")                     , MUT_NADES                     , cvar("g_nades"))
                X("Offhand blaster"           , _("Offhand blaster")           , MUT_OFFHAND_BLASTER           , cvar("g_offhand_blaster"))
                #undef X
@@ -383,7 +384,7 @@ string ScoreString(int pFlags, float pValue)
        else if(pFlags & SFL_RANK)
                valstr = (pValue < 256 ? count_ordinal(pValue) : _("N/A"));
        else if(pFlags & SFL_TIME)
-               valstr = TIME_ENCODED_TOSTRING(pValue);
+               valstr = TIME_ENCODED_TOSTRING(pValue, true);
        else
                valstr = ftos(pValue);
 
@@ -1959,14 +1960,13 @@ void unfollow_sameorigin(entity e)
 .float aiment_deadflag;
 void SetMovetypeFollow(entity ent, entity e)
 {
-       // FIXME this may not be warpzone aware
        set_movetype(ent, MOVETYPE_FOLLOW); // make the hole follow
        ent.solid = SOLID_NOT; // MOVETYPE_FOLLOW is always non-solid - this means this cannot be teleported by warpzones any more! Instead, we must notice when our owner gets teleported.
        ent.aiment = e; // make the hole follow bmodel
        ent.punchangle = e.angles; // the original angles of bmodel
        ent.view_ofs = ent.origin - e.origin; // relative origin
        ent.v_angle = ent.angles - e.angles; // relative angles
-       ent.aiment_classname = strzone(e.classname);
+       ent.aiment_classname = e.classname;
        ent.aiment_deadflag = e.deadflag;
 
        if(IS_PLAYER(ent.aiment))
@@ -1982,8 +1982,7 @@ void UnsetMovetypeFollow(entity ent)
 {
        set_movetype(ent, MOVETYPE_FLY);
        PROJECTILE_MAKETRIGGER(ent);
-       if (ent.aiment_classname)
-               strunzone(ent.classname);
+       ent.aiment_classname = string_null;
        // FIXME: engine bug?
        // resetting aiment the engine will set orb's origin close to world's origin
        //ent.aiment = NULL;