]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/client/commands/cl_cmd.qc
Use FILE_APPEND in screenshot ent creation command (allows placing more than 1 in...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / client / commands / cl_cmd.qc
index 873cef25893d66ac2c5feb726027189c8002d398..0e4fad5294ae9630a5930a0175648eb13e27b80e 100644 (file)
@@ -1,14 +1,15 @@
+#include "cl_cmd.qh"
 // ==============================================
 //  CSQC client commands code, written by Samual
 //  Last updated: December 28th, 2011
 // ==============================================
 
-#include <common/command/command.qh>
+#include <common/command/_mod.qh>
 #include "cl_cmd.qh"
 
 #include "../autocvars.qh"
 #include "../defs.qh"
-#include <client/hud/all.qh>
+#include <client/hud/_mod.qh>
 #include "../main.qh"
 #include "../mapvoting.qh"
 #include "../miscfunctions.qh"
@@ -17,8 +18,6 @@
 
 #include <common/mapinfo.qh>
 
-#include <common/command/generic.qh>
-
 void DrawDebugModel(entity this)
 {
        if (time - floor(time) > 0.5)
@@ -40,6 +39,7 @@ void DrawDebugModel(entity this)
 
 void LocalCommand_blurtest(int request)
 {
+    TC(int, request);
        // Simple command to work with postprocessing temporarily... possibly completely pointless, the glsl shader is used for a real feature now...
        // Anyway, to enable it, just compile the client with -DBLURTEST and then you can use the command.
 
@@ -75,6 +75,7 @@ void LocalCommand_blurtest(int request)
 
 void LocalCommand_boxparticles(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -89,7 +90,7 @@ void LocalCommand_boxparticles(int request, int argc)
                                        if (index <= 0)
                                                own = entitybyindex(-index);
                                        else
-                                               own = findfloat(world, entnum, index);
+                                               own = findfloat(NULL, entnum, index);
                                        vector org_from = stov(argv(3));
                                        vector org_to = stov(argv(4));
                                        vector dir_from = stov(argv(5));
@@ -128,12 +129,13 @@ void LocalCommand_boxparticles(int request, int argc)
 
 void LocalCommand_create_scrshot_ent(int request)
 {
+    TC(int, request);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
                {
                        string filename = strcat(MapInfo_Map_bspname, "_scrshot_ent.txt");
-                       int fh = fopen(filename, FILE_WRITE);
+                       int fh = fopen(filename, FILE_APPEND);
 
                        if (fh >= 0)
                        {
@@ -166,6 +168,7 @@ void LocalCommand_create_scrshot_ent(int request)
 
 void LocalCommand_debugmodel(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -178,6 +181,7 @@ void LocalCommand_debugmodel(int request, int argc)
                        setorigin(debugmodel_entity, view_origin);
                        debugmodel_entity.angles = view_angles;
                        debugmodel_entity.draw = DrawDebugModel;
+                       IL_PUSH(g_drawables, debugmodel_entity);
 
                        return;
                }
@@ -194,6 +198,7 @@ void LocalCommand_debugmodel(int request, int argc)
 
 void LocalCommand_handlevote(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -243,16 +248,17 @@ void LocalCommand_handlevote(int request, int argc)
 
 bool QuickMenu_IsOpened();
 void QuickMenu_Close();
-bool QuickMenu_Open(string mode, string submenu);
+bool QuickMenu_Open(string mode, string submenu, string file);
 
 bool HUD_MinigameMenu_IsOpened();
-void HUD_MinigameMenu_Close();
+void HUD_MinigameMenu_Close(entity this, entity actor, entity trigger);
 void HUD_MinigameMenu_Open();
 
 void HUD_Radar_Show_Maximized(bool doshow, bool clickable);
 
 void LocalCommand_hud(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -272,15 +278,17 @@ void LocalCommand_hud(int request, int argc)
                                {
                                        if (argv(2) == "help")
                                        {
-                                               LOG_INFO(" quickmenu [[default | file | \"\"] submenu]\n");
+                                               LOG_INFO(" quickmenu [[default | file | \"\"] submenu file]\n");
                                                LOG_INFO("Called without options (or with \"\") loads either the default quickmenu or a quickmenu file if hud_panel_quickmenu_file is set to a valid filename.\n");
                                                LOG_INFO("A submenu name can be given to open the quickmenu directly in a submenu; it requires to specify 'default', 'file' or '\"\"' option.\n");
+                                               LOG_INFO("A file name can also be given to open a different quickmenu\n");
                                                return;
                                        }
+                                       string file = ((argv(4) == "") ? autocvar_hud_panel_quickmenu_file : argv(4));
                                        if (QuickMenu_IsOpened())
                                                QuickMenu_Close();
                                        else
-                                               QuickMenu_Open(argv(2), argv(3));  // mode, submenu
+                                               QuickMenu_Open(argv(2), argv(3), file);  // mode, submenu
                                        return;
                                }
 
@@ -299,13 +307,13 @@ void LocalCommand_hud(int request, int argc)
 
                                case "scoreboard_columns_set":
                                {
-                                       Cmd_HUD_SetFields(argc);
+                                       Cmd_Scoreboard_SetFields(argc);
                                        return;
                                }
 
                                case "scoreboard_columns_help":
                                {
-                                       Cmd_HUD_Help();
+                                       Cmd_Scoreboard_Help();
                                        return;
                                }
 
@@ -345,6 +353,7 @@ void LocalCommand_hud(int request, int argc)
 
 void LocalCommand_localprint(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -371,6 +380,7 @@ void LocalCommand_localprint(int request, int argc)
 
 void LocalCommand_mv_download(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -395,31 +405,9 @@ void LocalCommand_mv_download(int request, int argc)
        }
 }
 
-void LocalCommand_find(int request, int argc)
-{
-       switch (request)
-       {
-               case CMD_REQUEST_COMMAND:
-               {
-                       FOREACH_ENTITY_CLASS(argv(1), true, LAMBDA(LOG_INFO(etos(it), "\n")));
-                       return;
-               }
-
-               default:
-               {
-                       LOG_INFO("Incorrect parameters for ^2find^7\n");
-               }
-               case CMD_REQUEST_USAGE:
-               {
-                       LOG_INFO("\nUsage:^3 cl_cmd find classname\n");
-                       LOG_INFO("  Where 'classname' is the classname to search for.\n");
-                       return;
-               }
-       }
-}
-
 void LocalCommand_sendcvar(int request, int argc)
 {
+    TC(int, request); TC(int, argc);
        switch (request)
        {
                case CMD_REQUEST_COMMAND:
@@ -490,38 +478,37 @@ CLIENT_COMMAND(debugmodel, "Spawn a debug model manually") { LocalCommand_debugm
 CLIENT_COMMAND(handlevote, "System to handle selecting a vote or option") { LocalCommand_handlevote(request, arguments); }
 CLIENT_COMMAND(hud, "Commands regarding/controlling the HUD system") { LocalCommand_hud(request, arguments); }
 CLIENT_COMMAND(localprint, "Create your own centerprint sent to yourself") { LocalCommand_localprint(request, arguments); }
-CLIENT_COMMAND(find, "Search through entities for matching classname") { LocalCommand_find(request, arguments); }
 CLIENT_COMMAND(mv_download, "Retrieve mapshot picture from the server") { LocalCommand_mv_download(request, arguments); }
 CLIENT_COMMAND(sendcvar, "Send a cvar to the server (like weaponpriority)") { LocalCommand_sendcvar(request, arguments); }
 
 void LocalCommand_macro_help()
 {
-       FOREACH(CLIENT_COMMANDS, true, LAMBDA(LOG_INFOF("  ^2%s^7: %s\n", it.m_name, it.m_description)));
+       FOREACH(CLIENT_COMMANDS, true, LOG_INFOF("  ^2%s^7: %s\n", it.m_name, it.m_description));
 }
 
 bool LocalCommand_macro_command(int argc, string command)
 {
        string c = strtolower(argv(0));
-       FOREACH(CLIENT_COMMANDS, it.m_name == c, LAMBDA(
-               it.m_invokecmd(CMD_REQUEST_COMMAND, NULL, argc, command);
+       FOREACH(CLIENT_COMMANDS, it.m_name == c, {
+               it.m_invokecmd(it, CMD_REQUEST_COMMAND, NULL, argc, command);
                return true;
-       ));
+       });
        return false;
 }
 
 bool LocalCommand_macro_usage(int argc)
 {
        string c = strtolower(argv(1));
-       FOREACH(CLIENT_COMMANDS, it.m_name == c, LAMBDA(
-               it.m_invokecmd(CMD_REQUEST_USAGE, NULL, argc, "");
+       FOREACH(CLIENT_COMMANDS, it.m_name == c, {
+               it.m_invokecmd(it, CMD_REQUEST_USAGE, NULL, argc, "");
                return true;
-       ));
+       });
        return false;
 }
 
 void LocalCommand_macro_write_aliases(int fh)
 {
-       FOREACH(CLIENT_COMMANDS, true, LAMBDA(CMD_Write_Alias("qc_cmd_cl", it.m_name, it.m_description)));
+       FOREACH(CLIENT_COMMANDS, true, CMD_Write_Alias("qc_cmd_cl", it.m_name, it.m_description));
 }