]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/command/all.qh
Makefile: use `-I.`
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / command / all.qh
index af87c24b1adb6262e8f30619e89a15a5bf7da742..0d74ec2739518fe6e487bca835ec0b11a45844bf 100644 (file)
@@ -1,7 +1,23 @@
 #ifndef SERVER_COMMANDS_ALL_H
 #define SERVER_COMMANDS_ALL_H
 
-#include "../../common/command/commands.qh"
+#include <common/command/command.qh>
+REGISTRY(SERVER_COMMANDS, BITS(7))
+#define SERVER_COMMANDS_from(i) _SERVER_COMMANDS_from(i, NULL)
+REGISTER_REGISTRY(SERVER_COMMANDS)
+REGISTRY_SORT(SERVER_COMMANDS)
+
+#define SERVER_COMMAND(id, description) \
+       CLASS(servercommand_##id, Command) \
+               ATTRIB(servercommand_##id, m_name, string, #id); \
+       ATTRIB(servercommand_##id, m_description, string, description); \
+       ENDCLASS(servercommand_##id) \
+    REGISTER(SERVER_COMMANDS, CMD_SV, id, m_id, NEW(servercommand_##id)); \
+       METHOD(servercommand_##id, m_invokecmd, void(int request, entity caller, int arguments, string command))
+
+STATIC_INIT(SERVER_COMMANDS_aliases) {
+       FOREACH(SERVER_COMMANDS, true, LAMBDA(localcmd(sprintf("alias %1$s \"%2$s %1$s ${* ?}\"\n", it.m_name, "qc_cmd_sv"))));
+}
 
 #include "sv_cmd.qh"