3 #include <common/command/command.qh>
5 // =========================================================
6 // Markup chat characters command code, reworked by Samual
7 // Last updated: December 28th, 2011
8 // =========================================================
10 void GenericCommand_markup_init()
15 // "&<-" doesn't have a corresponding symbol anymore
16 // replaced with similar triangle facing left ("&<|")
18 markup_from[i] = "&alien"; markup_to[i] = "\x12"; ++i;
19 markup_from[i] = "&:-)"; markup_to[i] = "\x13"; ++i;
20 markup_from[i] = "&:-("; markup_to[i] = "\x14"; ++i;
21 markup_from[i] = "&x-P"; markup_to[i] = "\x15"; ++i;
22 markup_from[i] = "&:-/"; markup_to[i] = "\x16"; ++i;
23 markup_from[i] = "&:-D"; markup_to[i] = "\x17"; ++i;
24 markup_from[i] = "&<<"; markup_to[i] = "\x18"; ++i;
25 markup_from[i] = "&>>"; markup_to[i] = "\x19"; ++i;
26 markup_from[i] = "&dot"; markup_to[i] = "\x1a"; ++i;
27 markup_from[i] = "&^_"; markup_to[i] = "\x1b"; ++i;
28 markup_from[i] = "&ysplat"; markup_to[i] = "\x1c"; ++i;
29 markup_from[i] = "&-]"; markup_to[i] = "\x1d"; ++i;
30 markup_from[i] = "&--"; markup_to[i] = "\x1e"; ++i;
31 markup_from[i] = "&[-"; markup_to[i] = "\x1f"; ++i;
32 markup_from[i] = "&s<"; markup_to[i] = "\xac"; ++i;
33 markup_from[i] = "&s>"; markup_to[i] = "\xae"; ++i;
34 markup_from[i] = "&<-"; markup_to[i] = "\xff"; ++i; // same as "&<|"
35 markup_from[i] = "&[="; markup_to[i] = "\x80"; ++i;
36 markup_from[i] = "&=="; markup_to[i] = "\x81"; ++i;
37 markup_from[i] = "&=]"; markup_to[i] = "\x82"; ++i;
38 markup_from[i] = "&r!"; markup_to[i] = "\x84"; ++i;
39 markup_from[i] = "&|o|"; markup_to[i] = "\x85"; ++i;
40 markup_from[i] = "&|u|"; markup_to[i] = "\x86"; ++i;
41 markup_from[i] = "&|i|"; markup_to[i] = "\x87"; ++i;
42 markup_from[i] = "&|c|"; markup_to[i] = "\x88"; ++i;
43 markup_from[i] = "&[c]"; markup_to[i] = "\x89"; ++i;
44 markup_from[i] = "&[n]"; markup_to[i] = "\x8a"; ++i;
45 markup_from[i] = "&[]"; markup_to[i] = "\x8b"; ++i;
46 markup_from[i] = "&r?"; markup_to[i] = "\x8c"; ++i;
47 markup_from[i] = "&|>"; markup_to[i] = "\x8d"; ++i;
48 markup_from[i] = "&splat0"; markup_to[i] = "\x8e"; ++i;
49 markup_from[i] = "&splat1"; markup_to[i] = "\x8f"; ++i;
50 markup_from[i] = "&[["; markup_to[i] = "\x90"; ++i;
51 markup_from[i] = "&]]"; markup_to[i] = "\x91"; ++i;
52 markup_from[i] = "&splat2"; markup_to[i] = "\x9a"; ++i;
53 markup_from[i] = "&)("; markup_to[i] = "\x9b"; ++i;
54 markup_from[i] = "&splat3"; markup_to[i] = "\x9c"; ++i;
55 markup_from[i] = "&(."; markup_to[i] = "\x9d"; ++i;
56 markup_from[i] = "&.."; markup_to[i] = "\x9e"; ++i;
57 markup_from[i] = "&.)"; markup_to[i] = "\x9f"; ++i;
58 markup_from[i] = "&<|"; markup_to[i] = "\xff"; ++i;
61 string GenericCommand_markup(string s2)
66 GenericCommand_markup_init();
73 for (i = 0; i < len; ++i)
75 for(j = 0; j < NUM_MARKUPS; ++j)
77 s3 = substring(s2, i, strlen(markup_from[j]));
78 if (s3 == markup_from[j])
80 s = strcat(s, markup_to[j]);
81 i += strlen(markup_from[j]) - 1;
88 if(substring(s2, i, 2) == "&&")
90 s = strcat(s, strconv(ccase, red, red, "&"));
93 else if(substring(s2, i, 2) == "&d")
99 else if(substring(s2, i, 2) == "&a")
105 else if(substring(s2, i, 2) == "&n")
112 s = strcat(s, strconv(ccase, red, red, substring(s2, i, 1)));