Xonotic
matrix.qc File Reference
#include "matrix.qh"
+ Include dependency graph for matrix.qc:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

var void MX_Handle (int buf, string ancestor)
 

Function Documentation

◆ MX_Handle()

var void MX_Handle ( int  buf,
string  ancestor 
)

Definition at line 3 of file matrix.qc.

References json_get(), print(), stof(), and strcat().

Referenced by MX_Messages_(), and MX_Sync_().

4 {
5  string type = json_get(buf, strcat(ancestor, ".type"));
6  switch (type) {
7  case "m.typing": {
8  string arr = strcat(ancestor, ".content.user_ids");
9  for (int i = 0, n = stof(json_get(buf, sprintf("%s.length", arr))); i < n; ++i) {
10  string s = json_get(buf, sprintf("%s.%d", arr, i));
11  print("\{1}", s, " is typing...\n");
12  }
13  break;
14  }
15  case "m.room.message": {
16  string msgtype = json_get(buf, strcat(ancestor, ".content.msgtype"));
17  switch (msgtype) {
18  case "m.text": {
19  string sender = json_get(buf, strcat(ancestor, ".sender"));
20  string body = json_get(buf, strcat(ancestor, ".content.body"));
21  if (body) print("\{1}", sender, ": ", body, "\n");
22  break;
23  }
24  }
25  break;
26  }
27  }
28 }
ERASEABLE string json_get(int buf, string key)
Definition: json.qc:276
spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 f1 s1 strcat(_("Level %s: "), "^BG%s\3\, _("^BGPress ^F2%s^BG to enter the game"))
+ Here is the call graph for this function:
+ Here is the caller graph for this function: