public void HandleResponse(ref Packets.PacketClass p) { foreach (CheatCheck Check in Checks) { switch (Check.Type) { case CheckTypes.MEM_CHECK: { byte result = p.GetInt8(); byte[] bytes = p.GetByteArray(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1} Bytes=0x{2}", Check.Type, result, BitConverter.ToString(bytes).Replace("-", "")); break; } case CheckTypes.PAGE_CHECK_A_B: { byte result2 = p.GetInt8(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1}", Check.Type, result2); break; } case CheckTypes.MPQ_CHECK: { byte result3 = p.GetInt8(); byte[] hash = p.GetByteArray(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1} Hash=0x{2}", Check.Type, result3, BitConverter.ToString(hash).Replace("-", "")); break; } case CheckTypes.LUA_STR_CHECK: { byte unk = p.GetInt8(); string data = p.GetString2(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1} Data={2}", Check.Type, unk, data); break; } case CheckTypes.DRIVER_CHECK: { byte result4 = p.GetInt8(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1}", Check.Type, result4); break; } case CheckTypes.TIMING_CHECK: { byte result5 = p.GetInt8(); int time = p.GetInt32(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1} Time={2}", Check.Type, result5, time); break; } case CheckTypes.PROC_CHECK: { byte result6 = p.GetInt8(); WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}] Result={1}", Check.Type, result6); break; } case CheckTypes.MODULE_CHECK: WorldServiceLocator._WorldServer.Log.WriteLine(LogType.DEBUG, "[WARDEN] [{0}]", Check.Type); break; } } Reset(); }