Fix dezalgo
Changes how dezalgo works. Still filters zalgo text without breaking languages. Removes zalgo tolerance because it's not really necessary with this system.
This commit is contained in:
parent
e44f687030
commit
4ca54e8761
@ -109,7 +109,7 @@ void AOClient::pktLoadingDone(AreaData* area, int argc, QStringList argv, AOPack
|
|||||||
sendPacket("OPPASS", {"DEADBEEF"});
|
sendPacket("OPPASS", {"DEADBEEF"});
|
||||||
sendPacket("DONE");
|
sendPacket("DONE");
|
||||||
sendPacket("BN", {area->background});
|
sendPacket("BN", {area->background});
|
||||||
|
|
||||||
sendServerMessage("=== MOTD ===\r\n" + server->MOTD + "\r\n=============");
|
sendServerMessage("=== MOTD ===\r\n" + server->MOTD + "\r\n=============");
|
||||||
|
|
||||||
fullArup(); // Give client all the area data
|
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.");
|
sendServerMessage("Your name is too long! Please limit it to under 30 characters.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString message = dezalgo(argv[1]);
|
QString message = dezalgo(argv[1]);
|
||||||
if (message.length() == 0 || message.length() > server->max_chars)
|
if (message.length() == 0 || message.length() > server->max_chars)
|
||||||
return;
|
return;
|
||||||
@ -770,7 +770,7 @@ AOPacket AOClient::validateIcPacket(AOPacket packet)
|
|||||||
|
|
||||||
QString AOClient::dezalgo(QString p_text)
|
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, "");
|
QString filtered = p_text.replace(rxp, "");
|
||||||
return filtered;
|
return filtered;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user