]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
ladder fixes (hopefully)
authorFruitieX <rasse@rasse-laptop.(none)>
Tue, 26 Oct 2010 11:50:37 +0000 (14:50 +0300)
committerFruitieX <rasse@rasse-laptop.(none)>
Tue, 26 Oct 2010 11:50:37 +0000 (14:50 +0300)
qcsrc/server/cl_client.qc
qcsrc/server/cl_physics.qc
qcsrc/server/miscfunctions.qc

index ee8b487f868295d42dbc7af594b964e58e856bb7..e5af0f3cf8196f8073cd2f4cfa747575ed82a316 100644 (file)
@@ -1603,7 +1603,7 @@ void ClientConnect (void)
                race_send_speedaward(MSG_ONE);
 
                speedaward_alltimebest = stof(db_get(ServerProgsDB, strcat(GetMapname(), rr, "speed/speed")));
-               speedaward_alltimebest_holder = db_get(ServerProgsDB, strcat(GetMapname(), rr, "speed/netname"));
+               speedaward_alltimebest_holder = uid2name(db_get(ServerProgsDB, strcat(GetMapname(), rr, "speed/crypto_idfp")));
                race_send_speedaward_alltimebest(MSG_ONE);
 
                float i;
index 376e54f24eac3a1ce9682e23b2c5e60c767db204..d2771762343c2319a25953e5a5492f18d2a3644a 100644 (file)
@@ -1325,7 +1325,6 @@ void SV_PlayerPhysics()
                                speedaward_alltimebest = speedaward_speed;
                                speedaward_alltimebest_holder = speedaward_holder;
                                db_put(ServerProgsDB, strcat(GetMapname(), rr, "speed/speed"), ftos(speedaward_alltimebest));
-                               db_put(ServerProgsDB, strcat(GetMapname(), rr, "speed/netname"), speedaward_alltimebest_holder);
                                db_put(ServerProgsDB, strcat(GetMapname(), rr, "speed/crypto_idfp"), speedaward_alltimebest_holder);
                                race_send_speedaward_alltimebest(MSG_ALL);
                        }
index b277bb6271c1c98aa2525e5cfa9d042c885b51d3..0b3501b2f6e42eeaca259bd56f0b4d3153472aa4 100644 (file)
@@ -2267,6 +2267,12 @@ string getladder()
     s = "";
     temp_s = "";
 
+    string rr;
+    if(g_cts)
+       rr = CTS_RECORD;
+    else
+       rr = RACE_RECORD;
+
     string myuid;
 
     for (k = 0; k < MapInfo_count; ++k)
@@ -2274,10 +2280,20 @@ string getladder()
         if (MapInfo_Get_ByID(k))
        {
                for (i = 0; i <= LADDER_CNT; ++i) { // i = 0 because it is the speed award
-                       if(race_readTime(GetMapname(), i) == 0)
-                           break;
+                       if(i == 0) // speed award
+                       {
+                               if(stof(db_get(ServerProgsDB, strcat(GetMapname(), rr, "speed/speed"))) == 0);
+                                       break;
 
-                       myuid = race_readUID(GetMapname(), i);
+                               myuid = db_get(ServerProgsDB, strcat(GetMapname(), rr, "speed/crypto_idfp"));
+                       }
+                       else // normal record, if it exists (else break)
+                       {
+                               if(race_readTime(GetMapname(), i) == 0)
+                                   break;
+
+                               myuid = race_readUID(GetMapname(), i);
+                       }
 
                        // string s contains:
                        // arg 0 = # of speed recs