68 lines
1.7 KiB
C#
68 lines
1.7 KiB
C#
using System.Collections.Generic;
|
|
|
|
namespace ET
|
|
{
|
|
public static class OpcodeHelper
|
|
{
|
|
private static readonly HashSet<ushort> ignoreDebugLogMessageSet = new HashSet<ushort>
|
|
{
|
|
#if SERVER
|
|
OuterOpcode.Frame_ClickMap,
|
|
OuterOpcode.M2C_PathfindingResult,
|
|
OuterOpcode.C2G_Ping,
|
|
OuterOpcode.G2C_Ping,
|
|
#endif
|
|
ushort.MaxValue,
|
|
};
|
|
public static void AddIgnoreDebugLogMessage(ushort id)
|
|
{
|
|
ignoreDebugLogMessageSet.Add(id);
|
|
}
|
|
private static bool IsNeedLogMessage(ushort opcode)
|
|
{
|
|
#if SERVER
|
|
if (!AppConfig.inst.isLogMsg) return false;
|
|
#endif
|
|
if (ignoreDebugLogMessageSet.Contains(opcode))
|
|
{
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
public static bool IsOuterMessage(ushort opcode)
|
|
{
|
|
return opcode >= 20000;
|
|
}
|
|
|
|
public static bool IsInnerMessage(ushort opcode)
|
|
{
|
|
return opcode < 20000;
|
|
}
|
|
|
|
public static void LogMsg(int zone, ushort opcode, object message)
|
|
{
|
|
if (!IsNeedLogMessage(opcode))
|
|
{
|
|
return;
|
|
}
|
|
|
|
string msg =JsonHelper.ToJson(message);
|
|
Log.Debug($"zone: {zone} {msg}"
|
|
|
|
);
|
|
}
|
|
|
|
public static void LogMsg(ushort opcode, long actorId, object message)
|
|
{
|
|
if (!IsNeedLogMessage(opcode))
|
|
{
|
|
return;
|
|
}
|
|
|
|
string msg =JsonHelper.ToJson(message);
|
|
Log.Debug($"actorId: {actorId} {msg}");
|
|
}
|
|
}
|
|
} |