Example #1
0
 public void Write(BinaryWriterBE Writer)
 {
     byte[] pkt = new byte[]
     {
         // Message ID
         0x13,
         // List of addresses?
         0x04, 0x80, 0xff, 0xff, 0xfe, 0x15, 0x0c,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x04, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
         0x00, 0x00, 0x00, 0x00,
         // Ping time
         0x18, 0x8e, 0x2f, 0x3f,
         0x00, 0x00, 0x00, 0x00,
         // Pong time
         0x18, 0x8e, 0x2f, 0x3f
     };
     Writer.Write(pkt);
 }
Example #2
0
        public void Save(BinaryWriterBE writer)
        {
            writer.Write((short)Type);
            writer.Write(Flags);
            writer.Write(Permutation);
            writer.Write(VertexCount);
            for (int i = 0; i < MaxVertexCount; ++i)
            {
                writer.Write(EndpointIndexes[i]);
            }

            for (int i = 0; i < MaxVertexCount; ++i)
            {
                writer.Write(LineIndexes[i]);
            }

            writer.Write((ushort)FloorTexture);
            writer.Write((ushort)CeilingTexture);
            writer.Write(FloorHeight);
            writer.Write(CeilingHeight);
            writer.Write(FloorLight);
            writer.Write(CeilingLight);

            writer.Write((int)0);  // area
            writer.Write(FirstObjectIndex);

            writer.Write((short)-1);  // first exclusion zone index
            writer.Write((short)-1);  // line exclusion zone count
            writer.Write((short)-1);  // point exclusion zone count
            writer.Write(FloorTransferMode);
            writer.Write(CeilingTransferMode);

            for (int i = 0; i < MaxVertexCount; ++i)
            {
                writer.Write(AdjacentPolygonIndexes[i]);
            }

            writer.Write((short)-1); // first neighbor index
            writer.Write((short)-1); // neighbor count
            writer.Write((short)0);  // center.x
            writer.Write((short)0);  // center.y

            for (int i = 0; i < MaxVertexCount; ++i)
            {
                writer.Write(SideIndexes[i]);
            }

            FloorOrigin.Save(writer);
            CeilingOrigin.Save(writer);

            writer.Write(MediaIndex);
            writer.Write(MediaLight);

            writer.Write((short)-1);  // sound source indexes

            writer.Write(AmbientSound);
            writer.Write(RandomSound);

            writer.Write(new byte[2]);
        }
Example #3
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write(Flags);
     writer.Write(SoundIndex);
     writer.Write(volume);
     writer.Write(new byte[5 * 2]);
 }
Example #4
0
 protected override void SaveApplicationSpecificDirectoryData(BinaryWriterBE writer, int index)
 {
     if (applicationSpecificDirectoryDataSize == Overlay.DataSize)
     {
         Overlays[index].SaveData(writer);
     }
 }
Example #5
0
 internal void SaveData(BinaryWriterBE writer)
 {
     writer.Write((short)MissionFlags);
     writer.Write((short)EnvironmentFlags);
     writer.Write((int)EntryPointFlags);
     writer.WriteMacString(LevelName, MapInfo.LevelNameLength);
 }
Example #6
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     binaryWriter.Write(Convert.ToByte((byte)Keys.Meta | channel));
     binaryWriter.Write(type);
     binaryWriter.Write((byte)data.Length);
     binaryWriter.Write(data);
 }
        public void Write(BinaryWriterBE Writer)
        {
            Writer.Write((Byte)DosPacketId.DosSendConsoleCommand);
            Writer.Write((UInt32)1);
            byte[] cmd = Encoding.UTF8.GetBytes(Command);
            Writer.Write((UInt32)cmd.Length);
            Writer.Write(cmd);
            Writer.Write((Byte)0);

            if (Arguments == null)
            {
                Writer.Write((UInt32)0);
            }
            else
            {
                Writer.Write((UInt32)Arguments.Length);
                for (var i = 0; i < Arguments.Length; i++)
                {
                    byte[] arg = Encoding.UTF8.GetBytes(Arguments[i]);
                    Writer.Write((UInt32)arg.Length);
                    Writer.Write(arg);
                    Writer.Write((Byte)0);
                }
            }

            Writer.Write((UInt16)0);
        }
Example #8
0
 public void Write(BinaryWriterBE Writer)
 {
     Writer.Write((Byte)PacketId.ConnectionRequest);
     Writer.Write(ClientId);
     Writer.Write((UInt32)0);
     Writer.Write(Time);
     Writer.Write(Security);
 }
Example #9
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write((short)LightingFunction);
     writer.Write(Period);
     writer.Write(DeltaPeriod);
     writer.WriteFixed(Intensity);
     writer.WriteFixed(DeltaIntensity);
 }
Example #10
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write(Type);
     writer.Write(X);
     writer.Write(Y);
     writer.Write(PolygonIndex);
     writer.WriteMacString(Text, textLength);
 }
Example #11
0
 public void Write(BinaryWriterBE Writer)
 {
     Writer.Write((byte)PacketId.OpenConnectionRequest1);
     Writer.Write(Magic);
     Writer.Write(Protocol);
     byte[] pad = new byte[0x482];
     Writer.Write(pad);
 }
Example #12
0
        byte[] SaveChunk(ISerializableBE chunk)
        {
            MemoryStream   stream = new MemoryStream();
            BinaryWriterBE writer = new BinaryWriterBE(stream);

            chunk.Save(writer);
            return(stream.ToArray());
        }
Example #13
0
 public void Write(BinaryWriterBE Writer)
 {
     Writer.Write((byte)PacketId.OpenConnectionRequest2);
     Writer.Write(Magic);
     Address.Write(Writer);
     Writer.WriteBE(MTU);
     Writer.Write(ClientId);
 }
Example #14
0
 // weland should never write these
 public void Save(BinaryWriterBE writer)
 {
     writer.Write(Flags);
     writer.Write(HighestAdjacentFloor);
     writer.Write(LowestAdjacentFloor);
     Vertex.Save(writer);
     Transformed.Save(writer);
     writer.Write(SupportingPolygonIndex);
 }
Example #15
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write((ushort)flags);
     writer.Write(InitialCount);
     writer.Write(MinimumCount);
     writer.Write(MaximumCount);
     writer.Write(RandomCount);
     writer.Write(randomChance);
 }
Example #16
0
 public void Write(BinaryWriterBE Writer)
 {
     Writer.Write((Byte)PacketId.ACK);
     Writer.WriteBE((UInt16)SequenceNumbers.Count);
     foreach (var seq in SequenceNumbers)
     {
         Writer.Write((Byte)1);
         seq.Write(Writer);
     }
 }
Example #17
0
 public void Write(BinaryWriterBE Writer)
 {
     Writer.Write((byte)PacketId.OpenConnectionResponse1);
     Writer.Write(Magic);
     Writer.Write(ServerId);
     Writer.Write(Security);
     Writer.WriteBE(MTU);
     byte[] pad = new byte[0x480];
     Writer.Write(pad);
 }
Example #18
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write((short)Type);
     writer.Write(Index);
     writer.Write(facing);
     writer.Write(PolygonIndex);
     writer.Write(X);
     writer.Write(Y);
     writer.Write(Z);
     writer.Write((ushort)flags);
 }
Example #19
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write(Environment);
     writer.Write(PhysicsModel);
     writer.Write(Landscape);
     writer.Write((short)MissionFlags);
     writer.Write((short)EnvironmentFlags);
     writer.Write(new byte[8]);
     writer.WriteMacString(Name, LevelNameLength);
     writer.Write((int)EntryPointFlags);
 }
Example #20
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write((short)Type);
     writer.Write(Speed);
     writer.Write(Delay);
     writer.Write(MaximumHeight);
     writer.Write(MinimumHeight);
     writer.Write((uint)flags);
     writer.Write(PolygonIndex);
     writer.Write(Tag);
     writer.Write(new byte[7 * 2]);
 }
Example #21
0
        byte[] SaveChunk <T>(List <T> list) where T : ISerializableBE, new()
        {
            MemoryStream   stream = new MemoryStream();
            BinaryWriterBE writer = new BinaryWriterBE(stream);

            foreach (T t in list)
            {
                t.Save(writer);
            }

            return(stream.ToArray());
        }
 public void Write(BinaryWriterBE Writer)
 {
     Writer.Write((Byte)DosPacketId.DosDisconnectConsole);
     byte[] pkt = new byte[]
     {
         0x00, 0x00, 0x00, 0x60,
         0x00, 0x08, 0x0A, 0x00,
         0x00, 0x09, 0x00, 0x00,
         0x00, 0x15
     };
     Writer.Write(pkt);
 }
Example #23
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     if (this.Channel == 0xFF)
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.Pressure | channel));
     }
     else
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.Pressure | this.Channel));
     }
     binaryWriter.Write(pressure);
 }
Example #24
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     if (this.Channel == 0xFF)
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.Patch | channel));
     }
     else
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.Patch | this.Channel));
     }
     binaryWriter.Write(instrument);
 }
Example #25
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     if (this.Channel == 0xFF)
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.NoteOff | channel));
     }
     else
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.NoteOff | this.Channel));
     }
     binaryWriter.Write(note);
     binaryWriter.Write(velocity);
 }
Example #26
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     if (this.Channel == 0xFF)
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.AfterTouch | channel));
     }
     else
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.AfterTouch | this.Channel));
     }
     binaryWriter.Write(note);
     binaryWriter.Write(touch);
 }
Example #27
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     if (this.Channel == 0xFF)
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.Controller | channel));
     }
     else
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.Controller | this.Channel));
     }
     binaryWriter.Write((byte)type);
     binaryWriter.Write(value);
 }
Example #28
0
 internal override void Write(BinaryWriterBE binaryWriter, byte channel)
 {
     if (this.Channel == 0xFF)
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.PitchBend | channel));
     }
     else
     {
         binaryWriter.Write(Convert.ToByte((byte)Keys.PitchBend | this.Channel));
     }
     binaryWriter.Write(lsb);
     binaryWriter.Write(msb);
 }
Example #29
0
 public void Save(BinaryWriterBE writer)
 {
     writer.Write((short)Type);
     writer.Write((ushort)Flags);
     writer.Write(LightIndex);
     writer.Write(direction);
     writer.Write(CurrentMagnitude);
     writer.Write(Low);
     writer.Write(High);
     writer.Write(new byte[6]); // X, Y, Height
     writer.WriteFixed(MinimumLightIntensity);
     writer.Write(new byte[4]); // texture, transfer mode
     writer.Write(new byte[4]); // unused
 }
        public void Setup()
        {
            buffer0_ = new byte[N * sizeof(double)];
            buffer1_ = new byte[N * sizeof(double)];
            buffer2_ = new byte[N * sizeof(double)];

            memoryStream0_ = new MemoryStream(buffer0_);
            memoryStream1_ = new MemoryStream(buffer1_);
            memoryStream2_ = new MemoryStream(buffer2_);

            binaryWriter_   = new BinaryWriterBE(memoryStream0_);
            binaryWriterBE_ = new BinaryWriterBE(memoryStream1_);
            binaryWriterEx_ = new BinaryWriterEx(memoryStream2_, false);
        }