private async void HandlePackets(byte[] buffer) { Header packetHeader = PacketParser.Deserialize <Header>(buffer); switch (packetHeader.opcode) { case OPCODE.Connect: { Log("Received a S_CONNECT"); S_CONNECT pkt = PacketParser.Deserialize <S_CONNECT>(buffer); if (Injector.CheckIfCRCBypassExists()) { C_ENABLE_HOOKS enableHooks = new C_ENABLE_HOOKS { header = new Header { opcode = OPCODE.EnableHooks, version = 1 } }; await SendAsync(enableHooks); } return; } case OPCODE.Disconnect: { Log("Received a S_DISCONNECT"); break; } case OPCODE.QueueInput: { Log("Received S_QUEUE_INPUT"); S_QUEUE_INPUT pkt = PacketParser.Deserialize <S_QUEUE_INPUT>(buffer); OnQueueInputResponse?.Invoke(this, pkt); break; } case OPCODE.DealDamage: { Log("Received S_DEAL_DAMAGE"); S_DEAL_DAMAGE pkt = PacketParser.Deserialize <S_DEAL_DAMAGE>(buffer); OnDamageDealResponse?.Invoke(this, pkt); break; } case OPCODE.LogMessage: { S_LOG_MESSAGE pkt = PacketParser.Deserialize <S_LOG_MESSAGE>(buffer); Debugger.Write("[Native] " + pkt.message, "#FFC88DF2"); break; } } }
private async void HandlePackets(byte[] buffer) { Header packetHeader = PacketParser.Deserialize <Header>(buffer); switch (packetHeader.opcode) { case OPCODE.Connect: { Log("Received a S_CONNECT"); S_CONNECT pkt = PacketParser.Deserialize <S_CONNECT>(buffer); if (Injector.CheckIfCRCBypassExists()) { C_ENABLE_HOOKS enableHooks = new C_ENABLE_HOOKS { header = new Header { opcode = OPCODE.EnableHooks, version = 1 } }; await SendAsync(enableHooks); } return; } case OPCODE.Disconnect: { Log("Received a S_DISCONNECT"); break; } case OPCODE.QueueInput: { Log("Received S_QUEUE_INPUT"); S_QUEUE_INPUT pkt = PacketParser.Deserialize <S_QUEUE_INPUT>(buffer); OnQueueInputResponse?.Invoke(this, pkt); break; } } }