audit chat messages for target ID
This commit is contained in:
@@ -27,6 +27,7 @@ import engine.objects.*;
|
|||||||
import engine.server.MBServerStatics;
|
import engine.server.MBServerStatics;
|
||||||
import engine.server.world.WorldServer;
|
import engine.server.world.WorldServer;
|
||||||
import engine.session.Session;
|
import engine.session.Session;
|
||||||
|
import engine.util.KeyCloneAudit;
|
||||||
import org.pmw.tinylog.Logger;
|
import org.pmw.tinylog.Logger;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -84,6 +85,10 @@ public enum ChatManager {
|
|||||||
if ((checkTime > 0L) && (curMsgTime - checkTime < FLOOD_TIME_THRESHOLD))
|
if ((checkTime > 0L) && (curMsgTime - checkTime < FLOOD_TIME_THRESHOLD))
|
||||||
isFlood = true;
|
isFlood = true;
|
||||||
|
|
||||||
|
if(KeyCloneAudit.auditChatMsg(pc,msg.getMessage())){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
switch (protocolMsg) {
|
switch (protocolMsg) {
|
||||||
case CHATSAY:
|
case CHATSAY:
|
||||||
ChatManager.chatSay(pc, msg.getMessage(), isFlood);
|
ChatManager.chatSay(pc, msg.getMessage(), isFlood);
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package engine.util;
|
|||||||
|
|
||||||
import engine.gameManager.ConfigManager;
|
import engine.gameManager.ConfigManager;
|
||||||
import engine.gameManager.DbManager;
|
import engine.gameManager.DbManager;
|
||||||
|
import engine.gameManager.GroupManager;
|
||||||
import engine.gameManager.SessionManager;
|
import engine.gameManager.SessionManager;
|
||||||
import engine.net.client.ClientConnection;
|
import engine.net.client.ClientConnection;
|
||||||
import engine.net.client.Protocol;
|
import engine.net.client.Protocol;
|
||||||
@@ -15,6 +16,24 @@ import org.pmw.tinylog.Logger;
|
|||||||
public enum KeyCloneAudit {
|
public enum KeyCloneAudit {
|
||||||
KEYCLONEAUDIT;
|
KEYCLONEAUDIT;
|
||||||
|
|
||||||
|
public static boolean auditChatMsg(PlayerCharacter pc, String message) {
|
||||||
|
|
||||||
|
Group g = GroupManager.getGroup(pc);
|
||||||
|
|
||||||
|
if(g == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if(pc.combatTarget != null && message.contains(String.valueOf(pc.combatTarget.getObjectUUID()))){
|
||||||
|
//targeting software detected
|
||||||
|
for(PlayerCharacter member : g.members){
|
||||||
|
member.getClientConnection().forceDisconnect();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public void audit(PlayerCharacter player, Group group) {
|
public void audit(PlayerCharacter player, Group group) {
|
||||||
|
|
||||||
int machineCount = 0;
|
int machineCount = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user