]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/lib/matrix/command.qc
Merge branch 'terencehill/scoreboard_columns_fix' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / lib / matrix / command.qc
1 #include "command.qh"
2
3 #include <common/command/all.qh>
4
5 GENERIC_COMMAND(mx, "Send a matrix command") {
6     switch (argv(1)) {
7         case "user":
8             if (matrix_user) strunzone(matrix_user);
9             matrix_user = strzone(substring(command, argv_start_index(2), -1));
10             break;
11         case "token":
12             if (matrix_access_token) strunzone(matrix_access_token);
13             matrix_access_token = strzone(substring(command, argv_start_index(2), -1));
14             break;
15         case "messages":
16             MX_Messages(string_null);
17             break;
18         case "nick":
19             MX_Nick(substring(command, argv_start_index(2), -1));
20             break;
21         case "join":
22             string s = substring(command, argv_start_index(2), -1);
23             if (s != matrix_room && matrix_room != "") {
24                 MX_Leave(matrix_room);
25                 strunzone(matrix_room);
26             }
27             matrix_room = strzone(s);
28             MX_Join(matrix_room);
29             break;
30         case "sync":
31             MX_Sync(string_null);
32             break;
33         case "typing":
34             MX_Typing(true);
35             break;
36         case "say":
37             MX_Say(substring(command, argv_start_index(2), -1));
38             break;
39         case "leave":
40             MX_Leave(matrix_room);
41             matrix_room = string_null;
42             break;
43         case "forget":
44             MX_Forget(matrix_room);
45             matrix_room = "";
46             break;
47     }
48 }