Example #1
0
        public EngineClient(Stream gameFile)
        {
            lineEvents = new EventWaitHandle[] { lineReady, stop };
            keyEvents  = new EventWaitHandle[] { keyReady, stop };

            var buffer = new byte[gameFile.Length];

            gameFile.Read(buffer, 0, buffer.Length);

            try
            {
                var blorb = Blorb.FromStream(new MemoryStream(buffer));
                game = new MemoryStream(blorb[Blorb.GLUL]);
            }
            catch
            {
                game = new MemoryStream(buffer);
            }

            thread = new Thread(Run);
            thread.Start();
        }