public async Task Process(ClientState client, TPacket packet) { if (client.Stage != Stage) { await client.Disconnect("Receiving invalid stage packets"); return; } await ProcessPacket(client, packet); }