]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/gamecommand.qc
rewrite settemp system to handle "quit" right
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / gamecommand.qc
index ee1657d66f0a2c1c113874be845adfa8e3ca5ff0..1d21f0845049c9528104f5cb4b38bb54fe116d4b 100644 (file)
@@ -193,6 +193,7 @@ float GameCommand_Generic(string command)
                print("    time ------------------------------> f   : seconds since VM start\n");
                print("    s /MD4 digest ---------------------> s   : MD4 digest\n");
                print("    s /SHA256 digest ------------------> s   : SHA256 digest\n");
+               print("    s /formatstring sprintf1s ---------> s   : sprintf with 1 string (pad, cut)\n");
                print("    Set operations operate on 'such''strings'.\n");
                print("    Unknown tokens insert their cvar value.\n");
                print("  maplist add map\n");
@@ -205,6 +206,8 @@ float GameCommand_Generic(string command)
                print("  addtolist variable addedvalue\n");
                print("  records\n");
                print("  rankings (map argument optional)\n");
+               print("  settemp cvar value\n");
+               print("  settemp_restore\n");
                return TRUE;
        }
        
@@ -791,6 +794,9 @@ float GameCommand_Generic(string command)
                                } else if(rpncmd == "digest") {
                                        s = rpn_pop();
                                        rpn_set(digest_hex(s, rpn_get()));
+                               } else if(rpncmd == "sprintf1s") {
+                                       s = rpn_pop();
+                                       rpn_set(sprintf(s, rpn_get()));
                                } else {
                                        rpn_push(cvar_string(rpncmd));
                                }
@@ -844,6 +850,14 @@ float GameCommand_Generic(string command)
                return TRUE;
 #endif
        }
+       else if(argv(0) == "settemp") {
+               cvar_settemp(argv(1), argv(2));
+               return TRUE;
+       }
+       else if(argv(0) == "settemp_restore") {
+               cvar_settemp_restore();
+               return TRUE;
+       }
 
        return FALSE;
 }