diff --git a/src/packets.cpp b/src/packets.cpp index 10f25c7..331d3d2 100644 --- a/src/packets.cpp +++ b/src/packets.cpp @@ -109,7 +109,7 @@ void AOClient::pktLoadingDone(AreaData* area, int argc, QStringList argv, AOPack sendPacket("OPPASS", {"DEADBEEF"}); sendPacket("DONE"); sendPacket("BN", {area->background}); - + sendServerMessage("=== MOTD ===\r\n" + server->MOTD + "\r\n============="); fullArup(); // Give client all the area data @@ -185,7 +185,7 @@ void AOClient::pktOocChat(AreaData* area, int argc, QStringList argv, AOPacket p sendServerMessage("Your name is too long! Please limit it to under 30 characters."); return; } - + QString message = dezalgo(argv[1]); if (message.length() == 0 || message.length() > server->max_chars) return; @@ -770,7 +770,7 @@ AOPacket AOClient::validateIcPacket(AOPacket packet) QString AOClient::dezalgo(QString p_text) { - QRegExp rxp("([\u0300-\u036f\u1ab0-\u1aff\u1dc0-\u1dff\u20d0-\u20ff\ufe20-\ufe2f\u115f\u1160\u3164]{" + QRegExp::escape(QString::number(server->zalgo_tolerance)) + ",})"); + QRegularExpression rxp("([̴̵̶̷̸̡̢̧̨̛̖̗̘̙̜̝̞̟̠̣̤̥̦̩̪̫̬̭̮̯̰̱̲̳̹̺̻̼͇͈͉͍͎̀́̂̃̄̅̆̇̈̉̊̋̌̍̎̏̐̑̒̓̔̽̾̿̀́͂̓̈́͆͊͋͌̕̚ͅ͏͓͔͕͖͙͚͐͑͒͗͛ͣͤͥͦͧͨͩͪͫͬͭͮͯ͘͜͟͢͝͞͠͡])"); QString filtered = p_text.replace(rxp, ""); return filtered; }